Sources & licences

Which public sources we read — and which we refuse

A source feeds a report only if two things hold: its licence verdict is usable, and a connector exists. A red verdict is a source we refuse, not one we lack — and no number in any report comes from anywhere but this list.

  • Green — Free, sanctioned or an official API — read freely.
  • Amber — Allowed but paid, rate-limited or key-gated — opened by a paid key.
  • Red — Terms that forbid it, or enterprise-only pricing — refused; no connector is ever wired.

Demand — community signal

SourceVerdictCostStateWhy
Android Enthusiasts (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Ask Different (Apple) (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Bicycles (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Freelancing (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Gardening & Landscaping (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
GitHub Issues Resolves down to worldwideGreen Free Read todayFeature requests = purest unmet-need signal.
Hacker News (Algolia) Resolves down to worldwideGreen Free Read todayFounder/dev pain, launches, Ask HN threads.
Home Improvement (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Homebrewing (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Law (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Music: Practice & Theory (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Package downloads (npm + PyPI) Resolves down to worldwideGreen Free Read todayNumbers only — not free-text signal. npm last-month downloads (api.npmjs.org; Public Registry ToS grant does not literally name this host — G1 R1) + PyPI via pypistats (cache daily). Recorded as a volume reading. Routed only — not a default source.
Parenting (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Personal Finance & Money (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Pets (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Photography (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Physical Fitness (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Project Management (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Seasoned Advice (cooking) (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Software Quality Assurance & Testing (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Software Recommendations (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Stack Overflow (Stack Exchange) Resolves down to worldwideGreen Free Read todayTechnical pain, unmet needs, 'is there a tool' questions.
The Great Outdoors (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
The Workplace (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Travel (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
User Experience (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Video Production (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Webmasters (Stack Exchange) Resolves down to worldwideGreen Free Read todayCommunity-site variant of the stackexchange connector; routed by idea class and by the seed's own subject. Same API, key, quota and licence as Stack Overflow — the cost of an entry is one dict line.
Wikimedia Pageviews Resolves down to countryGreen Free free (no key; UA required)Not wiredFree, keyless and language-partitioned (a real FR/ES parity lever) — and it measures encyclopedic ATTENTION, not commercial intent. Scoped 2026-08-06 as the keyless way to lift the hard-demand confidence cap, then refused: at the time the completeness check counted calls and not kinds, so wiring it into the probe scope would have raised confidence 0.5→0.7 on a measurement of the wrong thing, invisibly. That hole is now closed at the runtime (only intent measurements count toward the cap), so the cap no longer depends on this refusal holding — but the refusal stands on its own merits. Wire it as EVIDENCE (a topic-attention reading rendered as such) if wired at all; never as an intent provider (the intent-provider list is the only thing that lifts the cap).
DataForSEO (search intent / Trends) Resolves down to cityAmber Paid PAYGRead todaySearch-intent + keyword volume; floors at city (no sub-city volume).
Discourse public JSON (per-forum allow-list) Resolves down to worldwideAmber Key required free (per-forum rate limits; API key optional/per-forum)Not wiredG1 2026-08-06: software surface is sanctioned JSON; each forum's ToS is the real gate. G5 verified reachability of several public /search.json endpoints but found no host whose terms affirmatively permit automated commercial retrieval of post text — the allow-list is therefore empty. Never unsolicited multi-forum crawl. Wire only allow-listed instances, each as its own row marked built.
Forum threads via Google (DataForSEO SERP) Resolves down to countryAmber Paid PAYGNot wiredThe discussion threads Google itself lists for a query, read through the same paid search-data provider as the search-volume probe: titles, hosts and post counts of Reddit, Nextdoor, Quora and trade-forum threads, never the posts' text. Not wired yet: the connector is a named lot; until it lands, a local-service idea reads only the search-volume probe and the Stack Exchange room of its trade, and refuses honestly when those are silent.
YouTube Data API v3 Resolves down to worldwideAmber Key required free (10k quota units/day; search.list costs 100 each)Not wiredBuilt as G3 (PR #21) and refused on 2026-08-06 — not on the licence, which is workable, but on two clauses our pipeline cannot satisfy today. API ToS III.E.4.h: a developer must not 'use the YouTube API Services to create derived scores or metrics' — the demand score IS one, and the scoring step has no per-source exclusion path, so a YouTube signal's engagement reaches the score through the engagement term and its text through the pain blend. III.E.4.d requires stored API data to be refreshed or deleted within 30 days — incompatible with a buyer's permanent report and with frozen replay corpora holding full signal text in git. Quota makes it scarce too (one 100-unit search.list per keyword ⇒ ~100 keywords/day for a whole deployment), but scarcity is not why it is refused. Wire only behind a context-only path that keeps a source out of every scored quantity, plus a real retention mechanism. Until then the content-creator idea class has no community source, and the report says so rather than implying one.
LinkedIn Red RefusedToS-hostile.
Reddit (direct API) Red RefusedThe dependency that killed GummySearch. Only via a reseller if economics close.
X / Twitter Red RefusedToS-hostile.

Commerce — marketplace read

SourceVerdictCostStateWhy
eBay (Browse API) Resolves down to countryGreen Key required free dev accountRead todayitemCount + price band. Browse API needs an OAuth token minted from App ID + Cert ID (client secret) — not App ID alone.
Etsy Resolves down to worldwideGreen Key required Read todayFree niche demand; Etsy Open API v3 public read needs an x-api-key keystring (OAuth only for private/write).
Amazon (Keepa + Rainforest) Resolves down to countryAmber Paid Keepa €19/mo base + €49/mo API · Rainforest from $23/mo (500 req, free trial; $375/mo = 250k)Read todayBSR = demand, price history = price-band fit, reviews = buyer pain. Keepa needs the €19/mo base sub on top of the API tier.
Google Shopping via DataForSEO Resolves down to cityAmber Paid PAYGRead todayRewritten 2026-09-10: the endpoint wired 2026-08-03 was dead on arrival. Now DataForSEO's asynchronous Merchant API, queued and polled until ready. Zero new credentials (reuses the demand probe's pair). Offline-tested on a captured real fixture; endpoint to fully live-verify like every connector except eBay.
Store Leads (Shopify technographics) Resolves down to countryAmber Paid paid (~$250/mo Pro tier for API)Read todayStore-count by niche/geo = market sizing. The compliant Shopify answer. API access is the Pro tier, not entry-level.
Apple App Store customer-reviews RSS Red RefusedKeyless and it answers 200, which is exactly the trap. Apple Media Services Terms: a user 'may not use any software, device, automated process … to scrape, copy, or perform measurement, analysis, or monitoring of, any portion of the Content or Services' — measurement is the one word that names what a demand read does. Researched 2026-08-06 (G1 source 4); liveness is not a licence. Filed under commerce, next to the Shopify App-Store row, because it is a store surface, though the use we wanted was demand-side review-pain for the mobile-app idea class. No free legal twin exists: both stores keep competitive review APIs owner-only and the third parties are paid resellers, so that class gets Stack Exchange plus search intent, and is told review-pain is absent rather than left to assume it was covered.
Shopify App-Store scrape Red RefusedToS-hostile + Cloudflare-blocked. Use Store Leads instead.

Hyperlocal — on-the-ground read

SourceVerdictCostStateWhy
Census demographics (ACS / INSEE IRIS / StatCan / DANE) Resolves down to neighbourhoodGreen Key required free (key required)Read todayNeighborhood demographic fit. US ACS wired (key now required for all queries); INSEE/StatCan/DANE per-market to add.
POI density (OSM Nominatim + Overpass) Resolves down to addressGreen Free free (1 req/s, UA required)Read todayAddress-level competition. Respect OSM usage policy (no bulk grid scraping) or self-host.
Google Places / Yelp Resolves down to addressAmber Paid paid (billing enabled; the $200 credit was retired Mar 2025)Read today

Brand & domain

SourceVerdictCostStateWhy
Cloudflare Radar (domain popularity/collision) Resolves down to worldwideGreen Key required free (token)Read todayDomain rank = namespace-collision signal; Radar API needs a Cloudflare token.
RDAP (domain availability) Resolves down to worldwideGreen Free Read todayReal availability (404=free, 200=taken); never claims a domain is free.
Registrar (Porkbun / Cloudflare / Name.com) Resolves down to worldwideAmber Paid registration at costRead todayFirst-year price + availability. Porkbun API is POST-only + needs key & secret.