Viral Scout
What is working in your niche, and what to film next
- Completed
- Open source
- Nov 2026
Overview
A small business that posts short videos has to decide what to film next, and the feeds mostly show what big accounts posted. Viral Scout looks for a different signal: a video that got many times its creator's usual views, which points at a format that works. It was built after comparing about twenty tools in this space, among them 1of10, vidIQ, TubeLab, Virlo, Sandcastles, Mysocial, Trendhaus and OutlierKit. The repository keeps that comparison, and a list of every source it relies on.
Each business gets one YAML profile, which the dashboard can also write from a short description of the business. A run finds posts on the topic through YouTube Shorts hashtag feeds and YouTube Data API keyword search, checks watch lists of creators on YouTube, Instagram and TikTok, and re-measures links someone sent in. Every post is scored by views per day and by views against the creator's median ("× usual"), labeled at 1.5×, 3× and 10×. Outliers are ranked by ln(× usual) × ln(creator baseline), so a 20× hit on a 50-view channel ranks below 5× on a 100K channel. Further scores compare a post with the median of its niche and with the creator's usual pace at a similar age (this one needs a YouTube API key), and give its percentile among the creator's recent posts. Small accounts with a clear outlier are flagged as emerging creators. Each run stores a snapshot of every post in SQLite, which gives growth between runs, and a business can list its own posts to see how they did against its own usual.
For the posts that make the report it reads what is said in them: the hook (captions in the first 4 seconds), the call to action in the last 5 seconds, the words per minute and the full transcript. Instagram and TikTok have no public captions, so their audio can be transcribed locally with Whisper. Thumbnails are cached so Claude can read the text shown on screen, and the questions viewers ask in the comments get their own section. A Claude Code skill, scheduled daily, breaks the top posts down by format, hook and structure, then writes five ideas adapted to the business in the profile. Saved posts become notes in an Obsidian swipe file with a status board running from idea to posted. New outliers and fast risers go out as Telegram alerts, a BM25 search covers everything collected so far, and a quota meter counts API units and paid results on each run, with a warning at 80% of the caps you set.
It only reads public pages through yt-dlp, official APIs (YouTube Data API, Instagram Graph API, Google Places API, Telegram Bot API) and Apify. It never calls Instagram's or TikTok's private web APIs or logs in with someone else's account, and a source whose key is missing is skipped while the rest of the run carries on. The dashboard is Next.js 16 with Tailwind 4. On the owner's PC its buttons save, track and dismiss posts, the Setup page saves each API key to a local file, shows it masked and tests it live, and New research writes a profile from a description and starts the first run in the background. Published to Vercel's free plan, it is read-only behind its own password login, and a separate demo mode serves sample data with no login. An MCP server exposes 15 tools, so Claude or another agent can start runs, read results, search and manage the swipe file. Collection runs on the owner's PC, and business data is never committed to the public repository.
Built in November 2026. The founder uses it for three of his own small businesses: an online English school, a local home-services company and a solar company. It has no clients yet and no measured results to report. The screenshots here use demo profiles; the videos on the cards are public YouTube posts.
Evidence
What it looks like running
A walkthrough on demo profiles: businesses, outliers, fastest posts and an ideas note Outliers: views, views per day and times the creator's usual on each card, with a sparkline from earlier runs and the hook from the first seconds of captions One card opened up: the hook at the top, the post's full caption below An ideas note from the Claude Code skill: patterns across the top posts, then a breakdown of format, hook type and why people watch to the end Fastest, for a home-services profile: the newest posts on the topic from independent search, sorted by views per day Sources: what was skipped and why, errors and recent runs. A missing API key skips that source and the rest of the run carries on One card per business profile, with counts of posts, outliers and saved posts The same dashboard on a phone
Engineering
How it was built
Frontend
- Next.js 16 and Tailwind 4 dashboard: outlier, fastest and rising cards with labels, metrics, sparklines and hooks; ideas notes; swipe board; source health
- Setup page for API keys (local only, masked, live tests), New research page, Search page
- Local mode with actions through the Python CLI; read-only on Vercel behind a password login; public demo mode with sample data
Backend & services
- Python 3 CLI: discover, watch, re-check, filter, score, report
- yt-dlp for public YouTube pages, single post URLs and public comments
- SQLite history with one snapshot per post per run, for growth between runs
- Scores: × usual, weighted rank, × niche median, age-matched pace, creator percentile, emerging creators
- Hook, call to action and words per minute from captions; optional local Whisper transcripts
- BM25 search over titles, hooks, calls to action and transcripts; per-run quota meter with budget warnings
- One YAML profile per business, written by hand or generated from a description
Integrations
- YouTube Data API: Shorts keyword search per language, age-matched pace
- Instagram Graph API: Business Discovery watch lists and hashtag top posts
- Apify for TikTok discovery, profiles and trending hashtags
- Google Places API for local competitors and their public social channels
- Telegram Bot API alerts for new outliers and fast risers
- Claude Code skill for breakdowns and ideas, scheduled daily; Obsidian swipe file with a status board
- MCP server with 15 tools: runs, results, search, swipe file, new projects
Applied
Skills on this project
Next step
Tell us what you're building
Book a free 30-minute call with the engineer who would do the work. You get a written summary afterward, whether or not we work together.
Prefer to write? A developer reads every message and replies within one business day.