Workspace/SERP Scout
Live spendSettings
Keyword grid398 / 398398 keywords generated from 11 pattern(s)
Demand131 / 398Average monthly searches, from Google Ads
Our rankings398 / 398Search Console. Its silence for a keyword is itself the measurementGSC_REFRESH_TOKEN is unset. Mint one with `gsc-auth.mts` — the OAuth app is already configured.
Difficulty$5 / 398Buys a SERP per keyword. Run it on the volume survivors only
Supply0 / 0No feed connected — every keyword is UNKNOWN supply and nothing is gated
Economics1 / 3Missing order value and conversion — so every keyword value stays null rather than becoming a guess
Next: Demand
pnpm tsx --conditions=react-server packages/data/src/scripts/affiliate-research.mts volume borenhealth.com --live
Territory
0/0 scoutedBoardList
No territories yet.
Clusters
0 shown · one cluster is one page
A cluster is the set of keywords one page serves, so it — not the keyword — is the unit a verdict, a value and a queue position belong to. Ranked on vol (max), a lower bound; sum is an upper bound and is never sorted on, because near-identical phrasings share one pool of demand and summing them inflated three cities in this import by 4.5×, 7.3× and 11.2×.
No clusters yet. clusters.mts import <domain> --dir=…
Keywords
398 total · 20 decided
No keywords in this view.
Supply
no feed connected
No supply feed connected, so every keyword is UNKNOWN supply and nothing is gated on it. That is the safe state, not a clean bill of health — this site cannot currently tell whether it is building pages into empty inventory.
Paid search
6 plan(s). Nothing launches without four independent conditions.
ads-plan.mts build borenhealth.com
Link outreach
No mining runs. Prospects are gated on organic traffic first — authority is manufacturable, ranking is not.
link-outreach.mts mine --site=borenhealth.com
Economics
Commission per vendor, order value per entity, conversion from recorded observations. Unset stays null rather than becoming a plausible guess.
economics.mts show borenhealth.com