# niche-finder **YouTube research for creators: find a niche that is growing, see which videos from small channels took off and why, and check your idea before you film it.** [![Release](https://img.shields.io/github/v/release/pandich93/youtube-niche-finder?style=flat-square)](https://github.com/pandich93/youtube-niche-finder/releases/latest) [![CI](https://img.shields.io/github/actions/workflow/status/pandich93/youtube-niche-finder/ci.yml?branch=main&style=flat-square&label=CI)](https://github.com/pandich93/youtube-niche-finder/actions/workflows/ci.yml) [![Coverage](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fpandich93%2Fyoutube-niche-finder%2Fbadges%2Fcoverage.json&query=%24.totals.percent_covered_display&suffix=%25&label=coverage&style=flat-square)](https://github.com/pandich93/youtube-niche-finder/actions/workflows/ci.yml) [![License: MIT](https://img.shields.io/github/license/pandich93/youtube-niche-finder?style=flat-square)](LICENSE) [![MCP](https://img.shields.io/badge/MCP-100%20tools-8A2BE2?style=flat-square)](backend/README.md#tools) [![Stars](https://img.shields.io/github/stars/pandich93/youtube-niche-finder?style=flat-square)](https://github.com/pandich93/youtube-niche-finder/stargazers) > **Status: the hosted version is coming soon.** Accounts with sign-up, > tariffs and connecting your own channel are built; the online service is > being prepared for its first users. Want early > access? [Open an issue titled "Early access"](https://github.com/pandich93/youtube-niche-finder/issues/new?title=Early%20access) > or star the repository to follow the launch. Can't wait? > [Run your own copy today](docs/self-hosting.md) — it is free and open source. ![niche-finder dashboard: overview — corpus totals, the last 24 hours (new outliers, accelerating videos, growing channels), recent outlier channels and future competition](assets/dashboard.jpg) ## Contents - [What it does for you](#what-it-does-for-you) - [Why niche-finder](#why-niche-finder) - [Screens](#screens) - [Plans](#plans) - [Run it yourself today](#run-it-yourself-today) - [For developers](#for-developers) - [Privacy and security](#privacy-and-security) - [License](#license) ## What it does for you ### Find a niche worth entering - **Where to enter:** every niche scored 0–100 from six visible terms — demand trend, supply growth, newcomers breaking out, RPM, templated channels, policy signals — with a side-by-side comparison of 2–3 niches. - **Viral videos from small channels and outlier channels:** a video against its own channel's median, over any period from 24 hours to 90 days, with subscriber, length, Shorts, RPM and Partner Program filters. - **Niche trend:** growing, stable, cooling or saturated, from the last 30 days against the 90 before — supply, demand, new channels and whether newcomers break out. - **What outliers share:** what a niche's breakouts have in common against ordinary videos — a number or "?" in the title, length, tags, weekday and time — by the numbers. - **Language gaps:** formats that took off in one language and whether anything like them exists in another. - Trending categories and keywords, a niche map, the best time to publish, and export of a niche's videos to CSV. ### Plan your next video - **Idea checker:** is a topic free, recently covered, proven or a flop in this niche? - **Outlier to brief:** one click turns a video that beat its channel into a working brief — hook, title patterns, whether the topic is covered, title candidates and thumbnail references. - **Metadata review and hook score:** your draft title, description, tags and first 30 seconds checked against what worked in the niche. - **Content gaps:** questions from a niche's comments that no video answers yet, ranked by demand. - **Content calendar:** drafts on a week or month grid with the niche's best hours and a reminder the day before. ### Watch competitors and your own channel - **Channel tracking:** growth by window, views per hour of every upload, a revenue range, Partner Program thresholds and the next milestones. - **Alerts:** a new outlier, accelerating views, a title or thumbnail swap, a channel breaking its silence, a new video on a topic you named — on the dashboard, in the browser extension, in Telegram or as a morning digest. - **Repackaging and template risk:** title and thumbnail swaps with views before and after; how much a channel's uploads look like one template repeated. - **Collaboration partners and sponsors:** similar channels of your size, and which brands pay creators in a niche. - **Your own channels:** connect them read-only through Google and see your real views, retention, revenue and RPM next to the niche; a net profit calculator with your own costs. ### Wherever you work - **A web dashboard** with 27 sections plus niche, channel and brief pages. - **A Chrome extension** that puts the numbers on top of YouTube itself. - **Claude Desktop or any MCP client:** 100 tools and 7 ready-made scenarios, so you can ask for a niche in plain words. ## Why niche-finder - **History the API doesn't give you.** YouTube only ever says "how many views right now". niche-finder writes the numbers down on a schedule, so views per hour, acceleration, subscriber growth and title swaps exist. - **Honest numbers.** RPM and revenue come as a range, never one invented figure; every estimate is labelled as niche-finder's, not YouTube's; below a minimum sample you get "not enough data" instead of a guess; there is no opaque "SEO score". - **Answers, not dashboards for their own sake.** Every screen ends in a decision: enter this niche or not, film this idea or not, copy this format or not. - **The same numbers everywhere.** The dashboard, the extension and Claude call the same calculations, so they can never disagree. ## Screens
Viral videos from small channels
Viral videos — small channels that beat their expectations
Outlier channels
Outlier channels — best video's multiplier against the channel's median
Where to enter
Where to enter — every niche scored 0–100, each term visible, sortable
Idea checker
Idea checker — free, recently covered, proven demand or flop
Channel analytics
Channel — growth, snapshots, revenue range, similar channels
Keywords
Keywords — trendScore, lift, momentum
Repackaging history
Repackaging — title and thumbnail changes, before / after
Language gaps
Another language — outliers in English and whether Russian has anything like them
Compare trajectories
Compare — views by age for up to five videos, side by side
Monetization-policy signals
Policy signals — YouTube's three inauthentic-content categories, no risk percentage
Alerts
Alerts — new outliers and accelerating videos on tracked channels
Find a niche
Find a niche — semantic search over the collected videos
Every screen is described in [frontend/README.md](frontend/README.md#screens). ## Plans The hosted service will have a free tier and paid tiers. A tier sets how much you can do per day (YouTube lookups, searches, AI features), how many channels you can track and connect, and which features are on — for example your own channel's revenue, the browser extension and MCP, alerts, export. Prices will be announced at launch; until then, early-access users get the free tier. The tariff system is already built: an admin defines tiers on the dashboard, and users switch between free tiers themselves. See [backend/README.md](backend/README.md#tariffs-saas-sub-project-1-nf_multi_user1). ## Run it yourself today niche-finder is open source. With Docker and a free YouTube API key you can run your own copy in a few minutes — the dashboard, the background worker, the extension and the MCP server for Claude Desktop: ```bash git clone https://github.com/pandich93/youtube-niche-finder.git cd youtube-niche-finder cp .env.example .env # put your key into YOUTUBE_API_KEY docker compose build && make up # then open http://localhost:8080 in your browser ``` The full guide — Claude Desktop, the extension, running without Docker, how it works, giving accounts to other people — is in [docs/self-hosting.md](docs/self-hosting.md). ## For developers | Document | What's inside | |---|---| | [docs/self-hosting.md](docs/self-hosting.md) | install and run your own copy | | [docs/hosting.md](docs/hosting.md) | run one copy on your domain for other people: HTTPS, accounts, mail, backups, monitoring | | [backend/README.md](backend/README.md) | YouTube quota, the CLI, all 100 MCP tools and 7 scenarios, tariffs, configuration, formulas, code structure | | [frontend/README.md](frontend/README.md) | every dashboard screen, where its data comes from, what costs quota | | [extension/README.md](extension/README.md) | what the extension shows on each YouTube page | | [docs/http-api.md](docs/http-api.md) | all 155 HTTP routes with parameters, costs and MCP twins (generated from the code) | | [`.env.example`](.env.example) | every setting, commented in place | | [CONTRIBUTING.md](CONTRIBUTING.md) · [CHANGELOG.md](CHANGELOG.md) · [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) | dev setup and tests; what changed in each release; how we treat each other | | Path | What's inside | |---|---| | [`backend/`](backend/README.md) | MCP server, HTTP API, worker and CLI — all logic and storage (Python, FastAPI, PostgreSQL + pgvector) | | [`frontend/`](frontend/README.md) | the dashboard: plain ES modules, no npm, no build step | | [`extension/`](extension/README.md) | Chrome extension (Manifest V3): panels and badges on top of YouTube | | [`docs/`](docs/README.md) | documentation map, self-hosting guide and the HTTP API reference | | [`scripts/`](scripts) | MCP-in-Docker launcher, diagnostics, the API-docs generator, benchmarks | | [`infra/`](infra) | Caddy HTTPS proxy (MCP over HTTP, and the production site), the scheduled Postgres backup | Bug reports, fixes and documentation PRs are welcome. For anything bigger — a new MCP tool, API route or dashboard screen — please open an issue first. [CONTRIBUTING.md](CONTRIBUTING.md) explains the dev setup and the tests (`make local-test`, no YouTube key needed). ## Privacy and security - **Read-only.** niche-finder never uploads, comments or changes anything on YouTube. Connecting your channel asks Google for read-only access, and revenue is a separate permission you can skip. - **Your channel, your choice.** Disconnecting a channel revokes the access at Google and deletes its data. - **No selling, no ads, no sharing** of your data. - **Secrets stay secret.** Refresh tokens are encrypted; API keys never appear in URLs or logs. [PRIVACY.md](PRIVACY.md) lists exactly what is stored and where traffic goes; [SECURITY.md](SECURITY.md) covers reporting a problem and what protects each mode. ## License [MIT](LICENSE). niche-finder is not affiliated with YouTube or Google. It uses the YouTube API Services under [YouTube's API Terms of Service](https://developers.google.com/youtube/terms/api-services-terms-of-service).