<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Support ExpatHub</title>
    <description>The latest articles on DEV Community by Support ExpatHub (@support_expathub_a0555396).</description>
    <link>https://dev.to/support_expathub_a0555396</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3990600%2F10695061-5033-437a-b266-71795d1bd3a5.png</url>
      <title>DEV Community: Support ExpatHub</title>
      <link>https://dev.to/support_expathub_a0555396</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/support_expathub_a0555396"/>
    <language>en</language>
    <item>
      <title>I Built a YouTube Analytics Tool After Spending 2 Hours Not Understanding Why My Video Flopped</title>
      <dc:creator>Support ExpatHub</dc:creator>
      <pubDate>Tue, 23 Jun 2026 08:43:42 +0000</pubDate>
      <link>https://dev.to/support_expathub_a0555396/i-built-a-youtube-analytics-tool-after-spending-2-hours-not-understanding-why-my-video-flopped-3nea</link>
      <guid>https://dev.to/support_expathub_a0555396/i-built-a-youtube-analytics-tool-after-spending-2-hours-not-understanding-why-my-video-flopped-3nea</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffgokpnzd6zolpcxbngn6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffgokpnzd6zolpcxbngn6.png" alt=" " width="800" height="479"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That's how long I spent staring at YouTube Studio after a video &lt;br&gt;
got half the views I expected. I clicked through every tab. &lt;br&gt;
Impressions. Reach. Retention. Traffic sources.&lt;/p&gt;

&lt;p&gt;I saw the numbers. I had no idea what they meant.&lt;/p&gt;

&lt;p&gt;Not because I'm bad at analytics. Because YouTube Studio gives &lt;br&gt;
you data without interpretation. It tells you what happened. &lt;br&gt;
Never why.&lt;/p&gt;

&lt;h2&gt;
  
  
  The benchmark problem nobody talks about
&lt;/h2&gt;

&lt;p&gt;After digging into this for months, I found one mistake that almost &lt;br&gt;
every creator makes.&lt;/p&gt;

&lt;p&gt;They compare their CTR to YouTube's platform average.&lt;/p&gt;

&lt;p&gt;You've probably seen the advice. "A good CTR is 4-6%." &lt;br&gt;
Some people say 2-3% is fine. Others say aim for 8%.&lt;/p&gt;

&lt;p&gt;All of it is noise.&lt;/p&gt;

&lt;p&gt;A documentary channel and a gaming channel have completely different &lt;br&gt;
audience behaviors, different thumbnail styles, different viewer &lt;br&gt;
expectations. Comparing them to the same benchmark tells you &lt;br&gt;
absolutely nothing useful.&lt;/p&gt;

&lt;p&gt;The only number that actually matters is your own channel's &lt;br&gt;
historical average. How did this video perform compared to &lt;br&gt;
your last 20 videos? That's the question.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I started tracking instead
&lt;/h2&gt;

&lt;p&gt;Once I stopped looking at platform benchmarks and started comparing &lt;br&gt;
each video to my own channel baseline, patterns became obvious.&lt;/p&gt;

&lt;p&gt;Some things worth tracking:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CTR vs your own average.&lt;/strong&gt; Not YouTube's suggested range. &lt;br&gt;
Your personal average from the last 20-30 uploads. A video &lt;br&gt;
at 3.2% CTR is either great or terrible depending entirely &lt;br&gt;
on your channel's baseline.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Retention at the 30-second mark.&lt;/strong&gt; If viewers are leaving &lt;br&gt;
before 30 seconds, YouTube stops recommending the video. &lt;br&gt;
This single metric explains more failed videos than anything else.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Subscriber conversion per video.&lt;/strong&gt; Some videos get decent &lt;br&gt;
views but convert zero new subscribers. That tells you the &lt;br&gt;
content is attracting the wrong audience, not that the video itself failed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Browse Features traffic percentage.&lt;/strong&gt; When this is low, &lt;br&gt;
the algorithm isn't pushing your video to non-subscribers. &lt;br&gt;
High impressions but low browse traffic means YouTube &lt;br&gt;
tried but the thumbnail didn't click.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7u7v63dfe4zc6arw73v8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7u7v63dfe4zc6arw73v8.png" alt=" " width="800" height="479"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why I built CreatorPilot
&lt;/h2&gt;

&lt;p&gt;Tracking all of this manually for every video is exhausting. &lt;br&gt;
After doing it in spreadsheets for a while, I built a tool &lt;br&gt;
to automate it.&lt;/p&gt;

&lt;p&gt;CreatorPilot connects directly to YouTube Analytics API, &lt;br&gt;
calculates your channel's own performance baseline, and uses &lt;br&gt;
AI to explain why each video over or underperformed. &lt;br&gt;
Not generic tips. Actual diagnosis based on your specific numbers.&lt;/p&gt;

&lt;p&gt;It also matches your channel category to what's currently &lt;br&gt;
trending, so the next video recommendations are based on &lt;br&gt;
real data rather than guesses.&lt;/p&gt;

&lt;p&gt;Still early, free plan available at creatorpilothq.com.&lt;/p&gt;

&lt;p&gt;If you're a creator spending hours in Studio with more &lt;br&gt;
questions than answers, it was built for exactly that.&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>ai</category>
      <category>saas</category>
      <category>webdev</category>
    </item>
    <item>
      <title>I built an AI tool that explains why YouTube videos underperform</title>
      <dc:creator>Support ExpatHub</dc:creator>
      <pubDate>Sun, 21 Jun 2026 08:48:24 +0000</pubDate>
      <link>https://dev.to/support_expathub_a0555396/i-built-an-ai-tool-that-explains-why-youtube-videos-underperform-2imo</link>
      <guid>https://dev.to/support_expathub_a0555396/i-built-an-ai-tool-that-explains-why-youtube-videos-underperform-2imo</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fg1ienu2go5iv66eiuin3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fg1ienu2go5iv66eiuin3.png" alt=" " width="800" height="479"&gt;&lt;/a&gt;&lt;br&gt;
Spent the past few months building CreatorPilot, a tool that connects to &lt;br&gt;
YouTube Analytics API and uses Claude to diagnose why specific videos &lt;br&gt;
underperformed.&lt;/p&gt;

&lt;p&gt;The core problem I was solving for myself: YouTube Studio gives you tons &lt;br&gt;
of data but zero interpretation. You can see your CTR dropped, but not &lt;br&gt;
why, or what to actually do about it.&lt;/p&gt;

&lt;p&gt;Tech stack:&lt;br&gt;
Next.js for the frontend&lt;br&gt;
YouTube Analytics API + YouTube Data API for the data layer&lt;br&gt;
Claude API for the analysis and recommendations&lt;br&gt;
Stripe for billing&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fo3eor2y7v1b2ag088mgf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fo3eor2y7v1b2ag088mgf.png" alt=" " width="800" height="479"&gt;&lt;/a&gt;&lt;br&gt;
The interesting technical challenge was getting the AI analysis to be &lt;br&gt;
useful instead of generic. Early versions just said things like "consider &lt;br&gt;
improving your thumbnail" for every low-CTR video, which is technically &lt;br&gt;
true but useless. Had to build in actual comparison logic against the &lt;br&gt;
channel's own historical baseline before passing data to the model, so &lt;br&gt;
the output references real numbers instead of generic advice.&lt;/p&gt;

&lt;p&gt;Currently supports 5 languages (EN/KO/JP/DE/ZH) since YouTube creators are &lt;br&gt;
obviously a global audience and most analytics tools are English-only.&lt;/p&gt;

&lt;p&gt;Free plan available if anyone wants to poke around. Would love feedback &lt;br&gt;
from other devs, especially on how you've handled the "AI sounds confident &lt;br&gt;
but might be wrong" problem in your own projects.&lt;/p&gt;

&lt;p&gt;creatorpilothq.com&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>ai</category>
      <category>sass</category>
      <category>webdev</category>
    </item>
    <item>
      <title>I Built an AI Tool That Tells YouTube Creators Why Their Videos Fail</title>
      <dc:creator>Support ExpatHub</dc:creator>
      <pubDate>Fri, 19 Jun 2026 09:03:46 +0000</pubDate>
      <link>https://dev.to/support_expathub_a0555396/i-built-an-ai-tool-that-tells-youtube-creators-why-their-videos-fail-119n</link>
      <guid>https://dev.to/support_expathub_a0555396/i-built-an-ai-tool-that-tells-youtube-creators-why-their-videos-fail-119n</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4cjlp3wwovycny3mu4mf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4cjlp3wwovycny3mu4mf.png" alt=" " width="800" height="479"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Every YouTube creator has had this experience: you spend days on a video, &lt;br&gt;
upload it, and it gets half the views you expected. You open YouTube Studio, &lt;br&gt;
stare at the numbers, and have no idea why.&lt;/p&gt;

&lt;p&gt;View count is down. But why?&lt;/p&gt;

&lt;p&gt;Was it the thumbnail? The title? Did the algorithm stop pushing it? &lt;br&gt;
Was the topic just bad timing?&lt;/p&gt;

&lt;p&gt;YouTube Analytics gives you data. It doesn't give you answers.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;CreatorPilot connects directly to your YouTube Analytics API and uses &lt;br&gt;
Claude AI to actually explain what happened.&lt;/p&gt;

&lt;p&gt;Here's what it does differently:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Grades each video against YOUR baseline — not other creators&lt;/strong&gt;&lt;br&gt;
A video with 5,000 views might be a flop for one channel and a hit for another. &lt;br&gt;
CreatorPilot compares each video to your own channel average.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Explains WHY — not just what&lt;/strong&gt;&lt;br&gt;
Instead of showing you a CTR number, it tells you: &lt;br&gt;
"This video's CTR dropped 40% below your average — likely a thumbnail issue, &lt;br&gt;
not a topic issue."&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Matches your channel to what's trending RIGHT NOW&lt;/strong&gt;&lt;br&gt;
It pulls live YouTube trending data and finds topics that fit &lt;br&gt;
your specific channel category and style.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Predicts monetization timeline&lt;/strong&gt;&lt;br&gt;
Based on your actual subscriber growth rate and watch time, it calculates &lt;br&gt;
how many days until you hit YouTube monetization requirements.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft6ebbx87rww2dj348931.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft6ebbx87rww2dj348931.png" alt=" " width="800" height="479"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Next.js + TypeScript&lt;/li&gt;
&lt;li&gt;Claude Sonnet (AI analysis)&lt;/li&gt;
&lt;li&gt;YouTube Analytics API v2&lt;/li&gt;
&lt;li&gt;YouTube Data API v3&lt;/li&gt;
&lt;li&gt;Google Trends API&lt;/li&gt;
&lt;li&gt;Stripe (payments)&lt;/li&gt;
&lt;li&gt;PostgreSQL + Prisma&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try It Free
&lt;/h2&gt;

&lt;p&gt;→ &lt;a href="https://creatorpilothq.com" rel="noopener noreferrer"&gt;creatorpilothq.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Free plan available. No credit card required.&lt;/p&gt;

&lt;p&gt;Would love feedback from other builders — especially on the AI analysis side.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How I Built an AI YouTube Analytics SaaS with Next.js and Claude API (and kept costs under $2/user/month)</title>
      <dc:creator>Support ExpatHub</dc:creator>
      <pubDate>Thu, 18 Jun 2026 09:34:54 +0000</pubDate>
      <link>https://dev.to/support_expathub_a0555396/how-i-built-an-ai-youtube-analytics-saas-with-nextjs-and-claude-api-and-kept-costs-under-oab</link>
      <guid>https://dev.to/support_expathub_a0555396/how-i-built-an-ai-youtube-analytics-saas-with-nextjs-and-claude-api-and-kept-costs-under-oab</guid>
      <description>&lt;p&gt;I recently launched CreatorPilot, an AI-powered YouTube analytics platform. Here's how I built it and the technical decisions I made.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Most YouTube creators manually copy their analytics into ChatGPT to figure out why their videos perform the way they do. It's tedious and the advice is generic because ChatGPT doesn't actually know your channel data.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Solution
&lt;/h2&gt;

&lt;p&gt;Connect directly to YouTube Analytics API and feed real channel data into Claude AI to generate specific, actionable insights.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend/Backend&lt;/strong&gt;: Next.js 14 (App Router)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database&lt;/strong&gt;: PostgreSQL + Prisma ORM (Neon)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI&lt;/strong&gt;: Anthropic Claude API&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auth&lt;/strong&gt;: NextAuth.js with Google OAuth&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Payments&lt;/strong&gt;: Stripe&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deployment&lt;/strong&gt;: Vercel&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Cost Optimization Challenge
&lt;/h2&gt;

&lt;p&gt;Claude Sonnet costs $3/1M input tokens. With 5 AI features per user, naive implementation would cost $5-7/user/month — killing margins.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Solution: Aggressive DB caching&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Cache Duration&lt;/th&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Video Analysis&lt;/td&gt;
&lt;td&gt;24 hours&lt;/td&gt;
&lt;td&gt;Haiku&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Daily Trend&lt;/td&gt;
&lt;td&gt;24 hours&lt;/td&gt;
&lt;td&gt;Haiku&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Action Plan&lt;/td&gt;
&lt;td&gt;24 hours&lt;/td&gt;
&lt;td&gt;Haiku&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;20 Video Recs&lt;/td&gt;
&lt;td&gt;170 hours&lt;/td&gt;
&lt;td&gt;Haiku&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Channel Pattern&lt;/td&gt;
&lt;td&gt;170 hours&lt;/td&gt;
&lt;td&gt;Sonnet&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Result: ~$1.35/user/month worst case, ~$0.41 average. Gross margin ~90%.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Technical Challenges
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. YouTube API Quota Management&lt;/strong&gt;&lt;br&gt;
YouTube Data API has a 10,000 quota/day limit. Solved by caching video data in PostgreSQL and only calling the API when cache expires.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Multilingual AI Responses&lt;/strong&gt;&lt;br&gt;
Supporting 5 languages (EN, KO, JA, DE, ZH) with consistent quality required careful prompt engineering — especially for Korean historical content analysis.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Rate Limiting Without Redis&lt;/strong&gt;&lt;br&gt;
Built a PostgreSQL-based rate limiting fallback when Redis is unavailable.&lt;/p&gt;

&lt;h2&gt;
  
  
  Results
&lt;/h2&gt;

&lt;p&gt;Launched today. Would love feedback from fellow developers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://creatorpilothq.com" rel="noopener noreferrer"&gt;https://creatorpilothq.com&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>nextjs</category>
      <category>saas</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
