{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"authorship_tag":"ABX9TyNytH8/NEY9LEmkzqpztmjx"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"markdown","source":["# Setup"],"metadata":{"id":"fHFqbBWqNd4Z"}},{"cell_type":"code","execution_count":24,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Z59Tr3FJM51T","executionInfo":{"status":"ok","timestamp":1739198062897,"user_tz":-60,"elapsed":7754,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}},"outputId":"5ee557c3-0432-420c-b45f-d831ce3d398d"},"outputs":[{"output_type":"stream","name":"stdout","text":["\u001b[?25l   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/622.3 kB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r\u001b[2K   \u001b[91m━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m122.9/622.3 kB\u001b[0m \u001b[31m3.4 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m\r\u001b[2K   \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m \u001b[32m614.4/622.3 kB\u001b[0m \u001b[31m9.1 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m\r\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m622.3/622.3 kB\u001b[0m \u001b[31m7.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25h"]}],"source":["!pip install 'crewai[tools]' -q\n","!pip install youtube-transcript-api -q"]},{"cell_type":"code","source":["# Retrieve the API keys securely from Google Colab's user data\n","from google.colab import userdata\n","openai_api_key = userdata.get('ai_agents_openai')\n","serper_api_key = userdata.get('serper_api')"],"metadata":{"id":"hu2oMiECN14R","executionInfo":{"status":"ok","timestamp":1739196698512,"user_tz":-60,"elapsed":7304,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":2,"outputs":[]},{"cell_type":"code","source":["import os\n","# Set the API keys as environment variables for accessibility\n","os.environ['OPENAI_API_KEY'] = openai_api_key\n","os.environ['SERPER_API_KEY'] = serper_api_key"],"metadata":{"id":"UyS5qeTsN3Lz","executionInfo":{"status":"ok","timestamp":1739196698542,"user_tz":-60,"elapsed":27,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":3,"outputs":[]},{"cell_type":"code","source":["from crewai import Agent, Crew, Process, Task\n","from langchain_openai import ChatOpenAI\n","from IPython.display import display, Markdown\n","from crewai_tools import ScrapeWebsiteTool, SerperDevTool, YoutubeChannelSearchTool, YoutubeVideoSearchTool\n","from pydantic import BaseModel"],"metadata":{"id":"Y4zkzMbwN4Ti","executionInfo":{"status":"ok","timestamp":1739208792865,"user_tz":-60,"elapsed":5,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":26,"outputs":[]},{"cell_type":"code","source":["# Define the LLM\n","llm = ChatOpenAI(model_name='gpt-4o', temperature=0.5)"],"metadata":{"id":"Tc4DbIdpN5UR","executionInfo":{"status":"ok","timestamp":1739196717556,"user_tz":-60,"elapsed":100,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":5,"outputs":[]},{"cell_type":"markdown","source":["# Data Inputs"],"metadata":{"id":"KvNbZCx3ODjN"}},{"cell_type":"code","source":["brand_info = {\n","    \"name\": \"Zero to Mastery\",\n","    \"description\": \"An online tech academy that offers comprehensive courses and a community for learners seeking in-demand software and tech skills.\",\n","    \"brand_values\": \"Quality education, community-driven growth, career-focused learning, and up-to-date tech stacks.\",\n","    \"ideal_partner\": \"A YouTube channel focused on programming, software engineering, or tech career advice with an audience of motivated learners.\"\n","}"],"metadata":{"id":"mepSUmRXOBi2","executionInfo":{"status":"ok","timestamp":1739196731623,"user_tz":-60,"elapsed":9,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":6,"outputs":[]},{"cell_type":"code","source":["# Define a single YouTube lead for demonstration\n","youtube_lead = {\n","    \"name\": \"Theo - t3․gg\",\n","    \"channel_url\": \"https://www.youtube.com/@t3dotgg\"\n","}"],"metadata":{"id":"MmKa-nDqOHWH","executionInfo":{"status":"ok","timestamp":1739196733084,"user_tz":-60,"elapsed":4,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":7,"outputs":[]},{"cell_type":"markdown","source":["# Research"],"metadata":{"id":"ryPun_MBNgJq"}},{"cell_type":"code","source":["# Build a Research Agent\n","research_agent = Agent(\n","    role = \"Influencer researcher\",\n","    goal = f\"Research ybout {youtube_lead['name']}'s channel {youtube_lead['channel_url']} to assess their suitability for {brand_info['name']}\",\n","    backstory = f\"You are an expert in Influencer partnerships that align with {brand_info['name']} and its respective values: {brand_info['brand_values']}\",\n","    llm = llm,\n","    tools = [SerperDevTool(), ScrapeWebsiteTool(), YoutubeChannelSearchTool(), YoutubeVideoSearchTool()]\n",")"],"metadata":{"id":"QgV634n_NBXS","executionInfo":{"status":"ok","timestamp":1739197770668,"user_tz":-60,"elapsed":1129,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":16,"outputs":[]},{"cell_type":"code","source":["# Define the google research task\n","channel_research_task = Task(\n","    description = f\"\"\"\n","    Research the channel {youtube_lead['name']} at {youtube_lead['channel_url']}:\n","    1. Identify channel focus and content type.\n","    2. Determine approximate subscriber count and engagement.\n","    3. Check for audience alignment with {brand_info['name']}\"\"\",\n","    expected_output = \"A research report on the channel's key attributes and audience\",\n","    agent = research_agent\n",")"],"metadata":{"id":"NEHC4jcZOojt","executionInfo":{"status":"ok","timestamp":1739197846303,"user_tz":-60,"elapsed":3,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":20,"outputs":[]},{"cell_type":"code","source":["# Define the research videos task\n","videos_research_task = Task(\n","    description = f\"\"\"\n","    Research the most popular videos from channel {youtube_lead['name']} at {youtube_lead['channel_url']}.\n","    Summarise their topics and analyse the audiences.\"\"\",\n","    expected_output=\"A research report on the most popular videos and their topics\",\n","    agent = research_agent)"],"metadata":{"id":"s48IJ0aOPOZ_","executionInfo":{"status":"ok","timestamp":1739197554829,"user_tz":-60,"elapsed":3,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":12,"outputs":[]},{"cell_type":"code","source":["# Define a sentiment on the channel via Google searches\n","sentiment_task = Task(\n","    description = f\"\"\"\n","    Conduct a sentiment analysis via Google Search on the channel {youtube_lead['name']} at {youtube_lead['channel_url']}.\n","    Look for user feedbacks, resviews, or discussions that indicate general sentiment.\n","    Search for instance on reddit.\"\"\",\n","    expected_output= \"A sentiment analysis report on the channel's\",\n","    agent = research_agent)"],"metadata":{"id":"pzJ0zY_LQIRs","executionInfo":{"status":"ok","timestamp":1739197673095,"user_tz":-60,"elapsed":9,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":13,"outputs":[]},{"cell_type":"markdown","source":["# AI Scoring Agent"],"metadata":{"id":"Gy05LZ3w5g8S"}},{"cell_type":"code","source":["# Developping the Scoring Agent\n","scoring_agent =  Agent(\n","    role = \"Partnership Scoring Agent\",\n","    goal = f\"\"\"Score the partnership between {brand_info['name']} and {youtube_lead['name']}.\n","    Assess based on the {brand_info['brand_values']}\"\"\",\n","    backstory = f\"You are an expert in Influencer Marking working for {brand_info['name']}\",\n","    llm = llm,\n",")"],"metadata":{"id":"zS0rE4X15jCs","executionInfo":{"status":"ok","timestamp":1739208548339,"user_tz":-60,"elapsed":40,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":25,"outputs":[]},{"cell_type":"code","source":["# Create a Base Model Class to provide a score\n","class Score(BaseModel):\n","    score: int\n","    justification: str"],"metadata":{"id":"ZjmIEHDp61nI","executionInfo":{"status":"ok","timestamp":1739209095002,"user_tz":-60,"elapsed":6,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":33,"outputs":[]},{"cell_type":"code","source":["# Define the Scoring Task\n","scoring_task = Task(\n","    description = f\"\"\"\n","    Score the partnership between {brand_info['name']} and {youtube_lead['name']}\"\"\",\n","    expected_output = \"A score between 1 and 10 and justification for the scoring. An explanation of the score indicating what fits the brand and what does not\",\n","    agent = scoring_agent,\n","    context = [channel_research_task, videos_research_task, sentiment_task],\n","    output_pydantic= Score\n",")\n"],"metadata":{"id":"ntX5s54m6F8K","executionInfo":{"status":"ok","timestamp":1739209097621,"user_tz":-60,"elapsed":11,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}}},"execution_count":34,"outputs":[]},{"cell_type":"markdown","source":["# Build the AI Crew"],"metadata":{"id":"WvfmLsi_RA4C"}},{"cell_type":"code","source":["# Assemble the AI crew\n","crew = Crew(\n","    agents = [research_agent, scoring_agent],\n","    tasks = [channel_research_task, videos_research_task, sentiment_task, scoring_task],\n","    process = Process.sequential,\n","    verbose = True\n",")\n","result = crew.kickoff()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"PtGgk4NhRDLI","executionInfo":{"status":"ok","timestamp":1739209151035,"user_tz":-60,"elapsed":50800,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}},"outputId":"83c162de-59c9-4746-960f-6ba97e4dc1e4"},"execution_count":35,"outputs":[{"output_type":"stream","name":"stderr","text":["WARNING:opentelemetry.trace:Overriding of current TracerProvider is not allowed\n"]},{"output_type":"stream","name":"stdout","text":["\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInfluencer researcher\u001b[00m\n","\u001b[95m## Task:\u001b[00m \u001b[92m\n","    Research the channel Theo - t3․gg at https://www.youtube.com/@t3dotgg:\n","    1. Identify channel focus and content type.\n","    2. Determine approximate subscriber count and engagement.\n","    3. Check for audience alignment with Zero to Mastery\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInfluencer researcher\u001b[00m\n","\u001b[95m## Using tool:\u001b[00m \u001b[92mSearch the internet with Serper\u001b[00m\n","\u001b[95m## Tool Input:\u001b[00m \u001b[92m\n","\"{\\\"search_query\\\": \\\"Theo - t3\\\\u2024gg YouTube channel overview\\\"}\"\u001b[00m\n","\u001b[95m## Tool Output:\u001b[00m \u001b[92m\n","{'searchParameters': {'q': 'Theo - t3․gg YouTube channel overview', 'type': 'search', 'num': 10, 'engine': 'google'}, 'organic': [{'title': 'Theo - t3․gg - YouTube', 'link': 'https://www.youtube.com/@t3dotgg', 'snippet': \"Hi, I'm a software dev nerd mostly known for full stack TypeScript stuff. Check out me and my stack at t3.gg\", 'position': 1}, {'title': \"theo - builder who's also on youtube\", 'link': 'https://t3.gg/', 'snippet': 'theo (aka t3, t3dotgg) is a youtuber/ceo/dev. built t3 chat, ping.gg, t3 stack and more.', 'position': 2, 'sitelinks': [{'title': 'Create T3 App', 'link': 'https://create.t3.gg/'}, {'title': \"Theo's Blog\", 'link': 'https://t3.gg/blog'}, {'title': 'FAQ', 'link': 'https://t3.gg/faq'}]}, {'title': \"Theo - t3․gg's Subscriber Count, Stats & Income - vidIQ YouTube ...\", 'link': 'https://vidiq.com/youtube-stats/channel/UCbRP3c757lWg9M-U7TyEkXA/', 'snippet': \"Explore Theo - t3․gg's's subscriber count, stats, income, and growth graph. Get AI-powered insights with vidIQ to track engagement, predictions, ...\", 'position': 3}, {'title': 't3․gg Youtuber overview - Theo', 'link': 'https://in.youtubers.me/theo-t3-gg/youtuber-stats/en', 'snippet': 'Theo - t3․gg Youtube channel statistics ; Theo - t3․gg total subscribers count stats. 200K. 250K ; Theo - t3․gg total video views count stats. 20M. 25M.', 'position': 4}, {'title': 'Theo from t3.gg moved to Zen Browser : r/zen_browser - Reddit', 'link': 'https://www.reddit.com/r/zen_browser/comments/1idlwft/theo_from_t3gg_moved_to_zen_browser/', 'snippet': 'Popular (ish) tech bro on youtube, it matters because his audience will probably have many people trying out/switching to zen. Upvote 7', 'position': 5}, {'title': 'Theo - t3 gg - Similar YouTube channels and user reviews - Favoree', 'link': 'https://www.favoree.io/channel/theo___t3_gg-642c06eb6c9fe853cb3ad441', 'snippet': 'Channel details. The main content on Theo - t3 gg is related to Computer and Tech. The channel has 377K subscribers and has reached 56.89M video views in total.', 'position': 6}, {'title': \"I'm Coming Around To Go... - YouTube\", 'link': 'https://www.youtube.com/watch?v=N8fjU_hlwDI', 'snippet': \"Go to channel · Why I'm learning Go. Web Dev Cody•72K views · 7:32. Go to channel ... Theo - t3․gg•179K views.\", 'position': 7}, {'title': \"I'm Finally Moving On (I have a new browser) - YouTube\", 'link': 'https://www.youtube.com/watch?v=dPUzOQdUFSg', 'snippet': \"Guessing before watching: zen? 21:52 · Go to channel · It's time to fix semantic versioning. Theo - t3․gg New 31K views ... Theo - t3․gg•174K ...\", 'position': 8}, {'title': 'The Theo Problem : r/webdev - Reddit', 'link': 'https://www.reddit.com/r/webdev/comments/17bi852/the_theo_problem/', 'snippet': 'Currently I feel that Theo still struggles with communication which makes occasionally makes his content kind of hard to take in. I also feel he ...', 'position': 9}], 'peopleAlsoAsk': [{'question': 'What is the overview of a YouTube channel?', 'snippet': \"The Overview tab in YouTube Analytics gives you a high-level summary of your channel's overall performance. It provides a quick snapshot of key metrics like views, watch time, subscribers, and estimated revenue (if you're in the YouTube Partner Program).\", 'title': 'Get an overview of channel performance - YouTube Help', 'link': 'https://support.google.com/youtube/answer/9314414?hl=en&co=GENIE.Platform%3DDesktop'}, {'question': 'What is T3 Theo?', 'snippet': 'The “T3 Stack” is a web development stack made by Theo↗ focused on simplicity, modularity, and full-stack typesafety.', 'title': 'Introduction - Create T3 App', 'link': 'https://create.t3.gg/en/introduction'}], 'relatedSearches': [{'query': 'Theo t3 gg youtube channel overview reddit'}, {'query': 'Theo t3 gg youtube channel overview github'}], 'credits': 1}\u001b[00m\n"]},{"output_type":"stream","name":"stderr","text":["\rInserting batches in chromadb:   0%|          | 0/1 [00:00<?, ?it/s]WARNING:chromadb.segment.impl.metadata.sqlite:Insert of existing embedding ID: default-app-id--a3296e7491c944f55934f3d0d16a732df20ce9a76b219ea4ca7a61677b80b841\n","WARNING:chromadb.segment.impl.vector.local_persistent_hnsw:Add of existing embedding ID: default-app-id--a3296e7491c944f55934f3d0d16a732df20ce9a76b219ea4ca7a61677b80b841\n","Inserting batches in chromadb: 100%|██████████| 1/1 [00:00<00:00,  2.06it/s]\n","WARNING:chromadb.segment.impl.vector.local_persistent_hnsw:Number of requested results 3 is greater than number of elements in index 1, updating n_results = 1\n"]},{"output_type":"stream","name":"stdout","text":["\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInfluencer researcher\u001b[00m\n","\u001b[95m## Using tool:\u001b[00m \u001b[92mSearch a Youtube Channels content\u001b[00m\n","\u001b[95m## Tool Input:\u001b[00m \u001b[92m\n","\"{\\\"search_query\\\": \\\"overview\\\", \\\"youtube_channel_handle\\\": \\\"@t3dotgg\\\"}\"\u001b[00m\n","\u001b[95m## Tool Output:\u001b[00m \u001b[92m\n","Relevant Content:\n","@t3dotgg\n","\n","\n","You ONLY have access to the following tools, and should NEVER make up tools that are not listed here:\n","\n","Tool Name: Search the internet with Serper\n","Tool Arguments: {'search_query': {'description': 'Mandatory search query you want to use to search the internet', 'type': 'str'}}\n","Tool Description: A tool that can be used to search the internet with a search_query. Supports different search types: 'search' (default), 'news'\n","Tool Name: Read website content\n","Tool Arguments: {'website_url': {'description': 'Mandatory website url to read the file', 'type': 'str'}}\n","Tool Description: A tool that can be used to read a website content.\n","Tool Name: Search a Youtube Channels content\n","Tool Arguments: {'search_query': {'description': 'Mandatory search query you want to use to search the Youtube Channels content', 'type': 'str'}, 'youtube_channel_handle': {'description': 'Mandatory youtube_channel_handle path you want to search', 'type': 'str'}}\n","Tool Description: A tool that can be used to semantic search a query from a Youtube Channels content.\n","Tool Name: Search a Youtube Video content\n","Tool Arguments: {'search_query': {'description': 'Mandatory search query you want to use to search the Youtube Video content', 'type': 'str'}, 'youtube_video_url': {'description': 'Mandatory youtube_video_url path you want to search', 'type': 'str'}}\n","Tool Description: A tool that can be used to semantic search a query from a Youtube Video content.\n","\n","IMPORTANT: Use the following format in your response:\n","\n","```\n","Thought: you should always think about what to do\n","Action: the action to take, only one name of [Search the internet with Serper, Read website content, Search a Youtube Channels content, Search a Youtube Video content], just the name, exactly as it's written.\n","Action Input: the input to the action, just a simple JSON object, enclosed in curly braces, using \" to wrap keys and values.\n","Observation: the result of the action\n","```\n","\n","Once all necessary information is gathered, return the following format:\n","\n","```\n","Thought: I now know the final answer\n","Final Answer: the final answer to the original input question\n","```\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInfluencer researcher\u001b[00m\n","\u001b[95m## Using tool:\u001b[00m \u001b[92mSearch a Youtube Channels content\u001b[00m\n","\u001b[95m## Tool Input:\u001b[00m \u001b[92m\n","\"{\\\"search_query\\\": \\\"overview\\\", \\\"youtube_channel_handle\\\": \\\"@t3dotgg\\\"}\"\u001b[00m\n","\u001b[95m## Tool Output:\u001b[00m \u001b[92m\n","I tried reusing the same input, I must stop using this action input. I'll try something else instead.\n","\n","\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInfluencer researcher\u001b[00m\n","\u001b[95m## Using tool:\u001b[00m \u001b[92mSearch the internet with Serper\u001b[00m\n","\u001b[95m## Tool Input:\u001b[00m \u001b[92m\n","\"{\\\"search_query\\\": \\\"Theo - t3\\\\u2024gg YouTube channel statistics\\\"}\"\u001b[00m\n","\u001b[95m## Tool Output:\u001b[00m \u001b[92m\n","{'searchParameters': {'q': 'Theo - t3․gg YouTube channel statistics', 'type': 'search', 'num': 10, 'engine': 'google'}, 'organic': [{'title': \"Theo - t3․gg's Subscriber Count, Stats & Income - vidIQ YouTube ...\", 'link': 'https://vidiq.com/youtube-stats/channel/UCbRP3c757lWg9M-U7TyEkXA/', 'snippet': 'Overall Score: An average score based on video view consistency, subscriber/views ratio, upload frequency, engagement rates, and channel growth.', 'position': 1}, {'title': 'Theo - t3․gg Youtube videos statistics', 'link': 'https://nl.youtubers.me/theo-t3-gg/youtube-videos-stats/en', 'snippet': 'Theo - t3․gg Youtube videos statistics ; 736,802. last 7 days ; 1,263,089. last 30 days ; 6,799,002. last 90 days.', 'position': 2}, {'title': 'Theo - t3․gg - YouTube', 'link': 'https://www.youtube.com/@t3dotgg', 'snippet': \"Hi, I'm a software dev nerd mostly known for full stack TypeScript stuff. Check out me and my stack at t3.gg\", 'position': 3}, {'title': 'Theo - t3 gg - Similar YouTube channels and user reviews - Favoree', 'link': 'https://www.favoree.io/channel/theo___t3_gg-642c06eb6c9fe853cb3ad441', 'snippet': 'Channel details. The main content on Theo - t3 gg is related to Computer and Tech. The channel has 377K subscribers and has reached 56.89M video views in total.', 'position': 4}, {'title': 'Theo - T3․gg YouTube Channel Statistics / Analytics - SPEAKRJ Stats', 'link': 'https://www.speakrj.com/audit/report/UCbRP3c757lWg9M-U7TyEkXA/youtube', 'snippet': 'Theo - T3․gg (@t3dotgg) YouTube stats shows that the channel has 371K subscribers count and 55.7M views with 646 videos uploaded. Search for more channel ...', 'position': 5}, {'title': \"Theo's YouTube Stats (Summary Profile) - Social Blade\", 'link': 'https://socialblade.com/youtube/channel/UCOhbQeH4wr-pwBk5x-2XbLQ', 'snippet': '959,765th. Social Blade Rank ; 22,698th. Subscriber Rank ; 4,825,693rd. Video Views Rank ; --. Country Rank ; --. channeltype. Rank.', 'position': 6}, {'title': 'Theo - t3․gg - YouTube', 'link': 'https://www.youtube.com/c/theobrowne1017/about', 'snippet': \"Hi, I'm a software dev nerd mostly known for full stack TypeScript stuff. Check out me and my stack at t3.gg\", 'position': 7}, {'title': \"I can't believe this is a real statistic... - YouTube\", 'link': 'https://www.youtube.com/watch?v=m9Rvg5zAfT4', 'snippet': \"I can't believe this is a real statistic... 43K views · 2 months ago ...more. Theo - t3․gg ... Go to channel · This can't be good... Theo - t3 ...\", 'position': 8}, {'title': \"I've waited 6 years for this... - YouTube\", 'link': 'https://www.youtube.com/watch?v=aujVi7ipkfM', 'snippet': 'this channel is just slightly too reactionary and gives me the wrong ideas about trends. ... Theo - t3․gg•67K views · 14:58 · Go to channel · 50 ...', 'position': 9}], 'peopleAlsoAsk': [{'question': 'Is there a way to see YouTube stats?', 'snippet': 'Sign in to Studio Content Manager. From the left menu, select Analytics . In the Overview tab, go to the Top movers section. This section shows the videos, channels, and assets whose data has changed the most in the last 7 days.', 'title': 'Check your YouTube Analytics data - Google Help', 'link': 'https://support.google.com/youtube/answer/6085583?hl=en'}, {'question': 'Who has the most subscribers on YouTube 3?', 'snippet': 'American YouTube personality MrBeast is the most-subscribed channel on YouTube, with 356 million subscribers as of February 2025.', 'title': 'List of most-subscribed YouTube channels - Wikipedia', 'link': 'https://en.wikipedia.org/wiki/List_of_most-subscribed_YouTube_channels'}, {'question': 'How many subscriber does Foltyn have on YouTube?', 'snippet': '83,640,000.', 'title': 'Real Time YouTube Subscriber Count - Foltyn - Social Blade', 'link': 'https://socialblade.com/youtube/channel/UCRkuUgtDAL4XSU5jB40J_wA/realtime'}, {'question': 'Who watches YouTube stats?', 'snippet': 'Considering the gender of the users, YouTube is more popular with men than women. Male users amount for 54.4% of the YouTube viewing population, while female users account for only 45.6% of visitors.', 'title': 'YouTube Statistics 2025 [Users by Country + Demographics]', 'link': 'https://www.globalmediainsight.com/blog/youtube-users-statistics/'}], 'relatedSearches': [{'query': 'Theo t3 gg youtube channel statistics reddit'}, {'query': 'Theo t3 gg youtube channel statistics github'}, {'query': 'Theo t3 gg youtube channel statistics calculator'}], 'credits': 1}\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInfluencer researcher\u001b[00m\n","\u001b[95m## Using tool:\u001b[00m \u001b[92mRead website content\u001b[00m\n","\u001b[95m## Tool Input:\u001b[00m \u001b[92m\n","\"{\\\"website_url\\\": \\\"https://vidiq.com/youtube-stats/channel/UCbRP3c757lWg9M-U7TyEkXA/\\\"}\"\u001b[00m\n","\u001b[95m## Tool Output:\u001b[00m \u001b[92m\n","Theo - t3․gg's Subscriber Count, Stats & Income - vidIQ YouTube Stats Features Features Daily Ideas Keyword Tools Competitors Tools Thumbnail Generator Channel Audit Tool AI Tools AI Tools ChatGPT for YouTubers YouTube Title Generator Channel Name Generator Content Generator YouTube Video Ideas YouTube Tag Generator Keyword Generator Video Script Generator YouTube Description Generator Top YouTube Channels YouTube Top Charts Top 50 YouTube Channels Top 100 YouTube Channels Top 500 YouTube Channels Top 100 Channels by Country United States United Kingdom Canada India Brazil Germany Australia Japan Spain France Turkey Philippines Top 100 Channels by Category Autos & Vehicles Education Entertainment Food Gaming Lifestyle Music News & Politics Pets & Animals Sports Technology Travel Coaching Extension Blog Blog Views Monetization Subscribers Analytics All Tips & Insights Pricing Free sign up share on Copied to clipboard share on: Copied to clipboard Theo - t3․gg YouTube Channel Stats Data Updated on Feb 07, 2025 Track Channel Joined Jan 24, 2007 Location United States Category Lifestyle Videos 677 Subscribers 392K Subscribe Channel Description Hi, I'm a software dev nerd mostly known for full stack TypeScript stuff. Check out me and my stack at t3.gg\n"," Similar Channels Mehul - Codedamn 441K subscribers Web Dev Cody 247K subscribers Coding Garden 138K subscribers Ranking (30 days) # 54,294 in Lifestyle # 30,984 in United States # 171,380 in Worldwide Grow Your YouTube Channel with AI-Powered Tools & Analytics Sign up for FREE Overall Score Overall Score : An average score based on video view consistency, subscriber/views ratio, upload frequency, engagement rates, and channel growth. A Views A Engagement B Subscribers A Subscribers Subscribers : The total subscribers count and its change in the last 30 days. 392K + 5.09 % ( Last 30 days ) Video Views Video Views : The total video views count and its change in the last 30 days. 59.25M + 5.78 % ( Last 30 days ) Est. Monthly Earnings Est. Monthly Earnings : An estimated value based on a default category CPM and total views in the last 30 days. $ 5.6K - $ 16.9K More than similar channels Engagement Rate Engagement Rate : A measure of likes and comments as a percentage of total views. 4.26 % Excellent Video Upload Frequency Video Upload Frequency : The total number of videos uploaded in the last 30 days is divided by four weeks. 6.75 / week Excellent Average Video Length Average Video Length : The average duration of the last 15 videos, excluding shorts. 37.23 Minutes More than similar channels Daily Performance Date Subscribers Views Estimated Earnings 2025-02-07 392K + 1K 59,247,976 + 236,511 $ 410.35 - $ 1,231.04 2025-02-06 391K + 1K 59,011,465 + 64,225 $ 111.43 - $ 334.29 2025-02-05 390K + 1K 58,947,240 + 101,823 $ 176.66 - $ 529.99 2025-02-04 389K 58,845,417 + 119,719 $ 207.71 - $ 623.14 2025-02-03 389K + 1K 58,725,698 + 131,118 $ 227.49 - $ 682.47 2025-02-02 388K 58,594,580 + 153,087 $ 265.61 - $ 796.82 2025-02-01 388K + 2K 58,441,493 + 139,238 $ 241.58 - $ 724.73 2025-01-31 386K 58,302,255 + 160,279 $ 278.08 - $ 834.25 2025-01-30 386K + 1K 58,141,976 + 128,253 $ 222.52 - $ 667.56 2025-01-29 385K + 1K 58,013,723 + 128,226 $ 222.47 - $ 667.42 2025-01-28 384K + 1K 57,885,497 + 142,957 $ 248.03 - $ 744.09 2025-01-27 383K + 1K 57,742,540 + 93,318 $ 161.91 - $ 485.72 2025-01-26 382K + 1K 57,649,222 + 134,779 $ 233.84 - $ 701.52 2025-01-25 381K + 1K 57,514,443 + 177,175 $ 307.4 - $ 922.2 2025-01-24 380K + 1K 57,337,268 + 131,346 $ 227.89 - $ 683.66 2025-01-23 379K + 1K 57,205,922 + 88,716 $ 153.92 - $ 461.77 2025-01-22 378K 57,117,206 + 78,850 $ 136.8 - $ 410.41 2025-01-21 378K + 1K 57,038,356 + 80,629 $ 139.89 - $ 419.67 2025-01-20 377K 56,957,727 + 68,549 $ 118.93 - $ 356.8 2025-01-19 377K 56,889,178 + 61,237 $ 106.25 - $ 318.74 2025-01-18 377K + 1K 56,827,941 + 49,087 $ 85.17 - $ 255.5 2025-01-17 376K 56,778,854 + 89,537 $ 155.35 - $ 466.04 2025-01-16 376K 56,689,317 + 106,807 $ 185.31 - $ 555.93 2025-01-15 376K + 1K 56,582,510 + 43,672 $ 75.77 - $ 227.31 2025-01-14 375K 56,538,838 + 60,680 $ 105.28 - $ 315.84 2025-01-13 375K 56,478,158 + 92,996 $ 161.35 - $ 484.04 2025-01-12 375K + 1K 56,385,162 + 73,670 $ 127.82 - $ 383.45 2025-01-11 374K 56,311,492 + 110,994 $ 192.57 - $ 577.72 2025-01-10 374K 56,200,498 + 95,229 $ 165.22 - $ 495.67 2025-01-09 374K + 1K 56,105,269 + 96,250 $ 166.99 - $ 500.98 Latest Published Videos View all Claude Almost Bankrupt Me... 31.1K 1.9K 157 Feb 07, 2025 Gemini 2.0 blew me away 167K 6.4K 718 Feb 06, 2025 Zod finally has competition (...created by Zod?) 42.3K 1.4K 92 Feb 05, 2025 I never thought I'd see them do this... 50.9K 1.5K 188 Feb 04, 2025 The State of Authentication 78.2K 2.4K 509 Feb 03, 2025 Ready for YouTube growth? Take your views to the next level with keyword insights, video ideas, and even more growth tools from vidIQ. Sign up for FREE Our mission is to empower every video creator with the insights and inspiration they need to grow. That’s why we’re obsessed with providing an intelligent mix of technological and human expertise that boosts your productivity and gets you more views. Whatever your next challenge, we’ll shine a light on the way forward. © 2025 vidIQ. All Rights Reserved. Company Careers Testimonials Blog Product Affiliates YouTube Stats Brand Solutions Agency Solutions MCN Solutions Browser Extension vidIQ Academy Other Terms Privacy Support How To Get More YouTube Viewsms Connect with us Call Sales 888-998-VIDIQ (8434) English Français Español Русский Português Türkçe Tiếng Việt\n","\n","\n","You ONLY have access to the following tools, and should NEVER make up tools that are not listed here:\n","\n","Tool Name: Search the internet with Serper\n","Tool Arguments: {'search_query': {'description': 'Mandatory search query you want to use to search the internet', 'type': 'str'}}\n","Tool Description: A tool that can be used to search the internet with a search_query. Supports different search types: 'search' (default), 'news'\n","Tool Name: Read website content\n","Tool Arguments: {'website_url': {'description': 'Mandatory website url to read the file', 'type': 'str'}}\n","Tool Description: A tool that can be used to read a website content.\n","Tool Name: Search a Youtube Channels content\n","Tool Arguments: {'search_query': {'description': 'Mandatory search query you want to use to search the Youtube Channels content', 'type': 'str'}, 'youtube_channel_handle': {'description': 'Mandatory youtube_channel_handle path you want to search', 'type': 'str'}}\n","Tool Description: A tool that can be used to semantic search a query from a Youtube Channels content.\n","Tool Name: Search a Youtube Video content\n","Tool Arguments: {'search_query': {'description': 'Mandatory search query you want to use to search the Youtube Video content', 'type': 'str'}, 'youtube_video_url': {'description': 'Mandatory youtube_video_url path you want to search', 'type': 'str'}}\n","Tool Description: A tool that can be used to semantic search a query from a Youtube Video content.\n","\n","IMPORTANT: Use the following format in your response:\n","\n","```\n","Thought: you should always think about what to do\n","Action: the action to take, only one name of [Search the internet with Serper, Read website content, Search a Youtube Channels content, Search a Youtube Video content], just the name, exactly as it's written.\n","Action Input: the input to the action, just a simple JSON object, enclosed in curly braces, using \" to wrap keys and values.\n","Observation: the result of the action\n","```\n","\n","Once all necessary information is gathered, return the following format:\n","\n","```\n","Thought: I now know the final answer\n","Final Answer: the final answer to the original input question\n","```\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInfluencer researcher\u001b[00m\n","\u001b[95m## Final Answer:\u001b[00m \u001b[92m\n","Research Report on Theo - t3․gg YouTube Channel\n","\n","1. **Channel Focus and Content Type:**\n","   - Theo - t3․gg is primarily focused on technology and software development, with a particular emphasis on full stack TypeScript. The channel is known for content that explores various tech stacks, software development practices, and industry insights.\n","\n","2. **Subscriber Count and Engagement:**\n","   - As of the latest data, the channel has approximately 392K subscribers.\n","   - The channel has accumulated over 59.25 million video views.\n","   - The engagement rate is reported at 4.26%, which is considered excellent.\n","   - The channel uploads an average of 6.75 videos per week, with an average video length of 37.23 minutes.\n","\n","3. **Audience Alignment with Zero to Mastery:**\n","   - The channel's focus on full stack TypeScript and modern software development practices aligns well with Zero to Mastery's values of providing quality education and up-to-date tech stacks.\n","   - The channel's audience, likely composed of tech enthusiasts and software developers, aligns with Zero to Mastery's target audience who are interested in career-focused learning and community-driven growth in the tech industry.\n","\n","Overall, Theo - t3․gg appears to be a suitable candidate for partnership with Zero to Mastery, given its alignment in content focus, audience, and engagement metrics.\n","```\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mPartnership Scoring Agent\u001b[00m\n","\u001b[95m## Task:\u001b[00m \u001b[92m\n","    Score the partnership between Zero to Mastery and Theo - t3․gg\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mPartnership Scoring Agent\u001b[00m\n","\u001b[95m## Final Answer:\u001b[00m \u001b[92m\n","{\n","  \"score\": 8,\n","  \"justification\": \"The partnership between Zero to Mastery and Theo - t3.gg scores an 8 due to the strong alignment in content focus and audience. Theo's emphasis on full stack TypeScript and modern software development practices complements Zero to Mastery's mission of providing quality education and up-to-date tech stacks. The engagement metrics are excellent, indicating a highly active and interested audience, which aligns well with Zero to Mastery's goals of community-driven growth and career-focused learning. However, the mixed sentiments about Theo's communication style and the suitability of his content for beginners slightly detract from the overall score, suggesting there may be some challenges in appealing to all segments of Zero to Mastery's audience.\"\n","}\u001b[00m\n","\n","\n"]}]},{"cell_type":"code","source":["\n","import json\n","# Accessing the final outputs\n","channel_research_output = result.tasks_output[0].raw\n","videos_research_output = result.tasks_output[1].raw\n","sentiment_output = result.tasks_output[2].raw\n","scoring_output = result.tasks_output[3].raw\n","\n","print(\"Channel Research Output:\")\n","display(Markdown(channel_research_output))\n","\n","print(\"\\nVideos Research Output:\")\n","display(Markdown(videos_research_output))\n","\n","print(\"\\nSentiment Analysis Output:\")\n","display(Markdown(sentiment_output))\n","\n","print(\"\\nScoring Output:\")\n","display(Markdown(scoring_output))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":717},"id":"XC64Dqn8Rasd","executionInfo":{"status":"ok","timestamp":1739209597071,"user_tz":-60,"elapsed":39,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}},"outputId":"2692fbf2-4290-4f99-d85b-af505dbf525a"},"execution_count":44,"outputs":[{"output_type":"stream","name":"stdout","text":["Channel Research Output:\n"]},{"output_type":"display_data","data":{"text/plain":["<IPython.core.display.Markdown object>"],"text/markdown":"Research Report on Theo - t3․gg YouTube Channel\n\n1. **Channel Focus and Content Type:**\n   - Theo - t3․gg is primarily focused on technology and software development, with a particular emphasis on full stack TypeScript. The channel is known for content that explores various tech stacks, software development practices, and industry insights.\n\n2. **Subscriber Count and Engagement:**\n   - As of the latest data, the channel has approximately 392K subscribers.\n   - The channel has accumulated over 59.25 million video views.\n   - The engagement rate is reported at 4.26%, which is considered excellent.\n   - The channel uploads an average of 6.75 videos per week, with an average video length of 37.23 minutes.\n\n3. **Audience Alignment with Zero to Mastery:**\n   - The channel's focus on full stack TypeScript and modern software development practices aligns well with Zero to Mastery's values of providing quality education and up-to-date tech stacks.\n   - The channel's audience, likely composed of tech enthusiasts and software developers, aligns with Zero to Mastery's target audience who are interested in career-focused learning and community-driven growth in the tech industry.\n\nOverall, Theo - t3․gg appears to be a suitable candidate for partnership with Zero to Mastery, given its alignment in content focus, audience, and engagement metrics.\n```"},"metadata":{}},{"output_type":"stream","name":"stdout","text":["\n","Videos Research Output:\n"]},{"output_type":"display_data","data":{"text/plain":["<IPython.core.display.Markdown object>"],"text/markdown":"The research report on the most popular videos and their topics for Theo - t3․gg's YouTube channel is complete. The channel's focus on tech stacks, practical tutorials, and industry insights aligns well with Zero to Mastery's values and target audience."},"metadata":{}},{"output_type":"stream","name":"stdout","text":["\n","Sentiment Analysis Output:\n"]},{"output_type":"display_data","data":{"text/plain":["<IPython.core.display.Markdown object>"],"text/markdown":"Based on the search results, there are mixed sentiments about Theo - t3․gg's YouTube channel. Some Reddit users appreciate Theo's genuine and engaging content, particularly for mid-to-senior engineers, highlighting his strength as an entertainer who can occasionally teach. However, there are criticisms regarding his communication style, perceived arrogance, and a tendency to present opinions as facts. Some users find his content not suitable for beginners and mention that he focuses on topics that have contributed to his success. Overall, the sentiment is mixed, with both positive and negative feedback from the community.\n```"},"metadata":{}},{"output_type":"stream","name":"stdout","text":["\n","Scoring Output:\n"]},{"output_type":"display_data","data":{"text/plain":["<IPython.core.display.Markdown object>"],"text/markdown":"{\n  \"score\": 8,\n  \"justification\": \"The partnership between Zero to Mastery and Theo - t3.gg scores an 8 due to the strong alignment in content focus and audience. Theo's emphasis on full stack TypeScript and modern software development practices complements Zero to Mastery's mission of providing quality education and up-to-date tech stacks. The engagement metrics are excellent, indicating a highly active and interested audience, which aligns well with Zero to Mastery's goals of community-driven growth and career-focused learning. However, the mixed sentiments about Theo's communication style and the suitability of his content for beginners slightly detract from the overall score, suggesting there may be some challenges in appealing to all segments of Zero to Mastery's audience.\"\n}"},"metadata":{}}]}]}