What is Growth Radar, and how does it work?
Growth Radar is an SEO, GEO and AEO dashboard for people who run several websites. It reads Search Console, Bing Webmaster Tools, GA4, PageSpeed Insights and product analytics for every site, ranks fixes by the traffic at stake for the work each takes, opens each fix as a pull request, and grades the result 28 days after it merges.
What data does Growth Radar read?
Every source is tracked per site with its own freshness, and a missing number is shown as missing, never as zero. Not connected, no traffic, a failed import and an import that has not run yet are four different states on screen.
- Google Search Console
- Clicks, impressions, click-through rate and position per query and page. Trails real time by two to three days.
- Bing Webmaster Tools
- Bing clicks, queries and crawl issues, plus sitemap submission. Several AI assistants retrieve from Bing's index.
- Google Analytics 4
- Sessions by channel, including the AI-assistant channel, which undercounts because most assistant visits carry no referrer.
- PageSpeed Insights and CrUX
- Field Core Web Vitals (LCP, INP, CLS), with lab metrics when field data is missing.
- PostHog, Umami or Growth Radar's own script
- Visitors, pageviews and top landing pages per site, the same day.
- AI citation probe
- A weekly question set put to a web-grounded model (Perplexity Sonar by default) to see which sites it cites.
How does it decide what to fix first?
Growth Radar turns the data into one ranked list of opportunities across all your sites, ordered by the traffic each puts at stake, the lift its kind of fix is expected to bring, and the effort it takes. Each one carries a playbook: what is wrong, which page or file to change, the ordered steps, and how the result will be verified. The list is a set of hypotheses, not orders. Anything you disprove can be dismissed, and a dismissal closes the item as honestly as a fix.
How does a fix get shipped?
For the changes it can make (titles and meta descriptions, structured data, page content, internal links, robots.txt, sitemaps, llms.txt and IndexNow keys), Growth Radar opens a pull request on the site's repository. Each kind may only touch an allowlist of paths, and anything touching authentication, payments, CI configuration, dependencies or secrets is refused. It opens pull requests and cannot merge them. You can also make the change yourself, or have an AI agent make it through the MCP server, and record it so it gets graded.
How are verdicts decided?
- 1BaselineWhen the pull request merges, Growth Radar records the metric the change was meant to move, measured over the 28 days before the merge. The clock starts at merge, not when the PR was opened.
- 2Too earlyEvery change reads "too early" until 28 days have passed since the merge.
- 3Win, loss or flatAfter 28 days the same metric is measured again, on the changed page and on the 19 to 39 most similar untouched pages of the same site. It is a win when the changed page beats at least 95% of those pages and moves at least 10% more than they typically do, a loss in the mirror case, and flat otherwise.
- 4InconclusiveIf the test would catch a real 30% change less than 50% of the time, which on low-traffic pages is usual, the verdict is inconclusive. So is a change with no comparable untouched pages, one that touched the whole site, and one on a metric with no measured test yet, such as broken links or AI citations. It is shown with its numbers and counted nowhere.
- 5No dataIf the source had nothing to measure before or after, the verdict is no data. It is never counted as a loss.
- 6Still holdingA win is measured again after a second 28-day window. If at least half of the lift remains it is still holding; otherwise it is marked as decayed.
Every graded change, including losses, is published on the wins board.
Frequently asked questions
How do I connect Google Search Console?
Sign in to Google from the connect screen and grant read-only Search Console access. Growth Radar lists the properties that Google account can see, you pick the ones to track, and the last 28 days import straight away. GA4 is a separate, optional consent from the same Google account. Disconnecting revokes the grant at Google. If Google access is not switched on yet, the connect screen says so and Bing still works. Search Console data trails real time by two to three days.
How do I connect Bing Webmaster Tools?
Paste a Bing Webmaster API key (in Bing Webmaster Tools: Settings, then API access). Bing has no API that issues the key, so it has to be pasted. Growth Radar checks the key against Bing before storing it, then lists your Bing sites to pick from. A site not on Bing yet can be imported there from Search Console. Several AI assistants retrieve from Bing's index, so it matters beyond Bing itself.
What data does Growth Radar keep, and who can see it?
The aggregate reports each source returns: clicks, impressions, click-through rate and position per query and page, Core Web Vitals, and visit counts. No other account can see a site's data; every page and API call is scoped to the signed-in account, and the operator can access the database to run and repair the service. Google tokens and pasted API keys are encrypted with AES-256-GCM before they are stored, and are never shown again. To write findings, a site's top queries and aggregate numbers are sent to a model provider.
Does Growth Radar need access to my code?
Only for the shipping half; measuring works without it. Shipping uses a fine-grained GitHub token with Contents and Pull requests write access, scoped to chosen repositories. Every change passes an allowlist of paths for its kind of fix, and anything touching authentication, payments, CI configuration, dependencies or secrets is refused outright. Growth Radar opens pull requests. It cannot merge them.
How does Growth Radar decide whether a change worked?
When a fix is marked shipped, or its pull request merges, it records the metric the fix was meant to move (clicks, CTR, position, impressions, broken links or AI citations) for the pages it touched, over the 28 days before. Until 28 days have passed the verdict is too early. Then it measures the same metric over the same pages again, and over the most similar untouched pages of the same site. The change is a win when it beats at least 95% of them and moves at least 10% more than they typically do, a loss in the mirror case, and flat otherwise. When the test was too weak to tell a real change from noise, which on low-traffic pages is the usual result, or there was nothing comparable to check against, the verdict is inconclusive and counts nowhere. With nothing to measure it is no data, never a loss. For position, load time, errors and broken links, lower counts as better. A fix whose starting number was typed in by hand rather than measured is kept out of the headline counts.
How does Growth Radar track AI search?
In four ways, all narrower than a dedicated AI-visibility tracker. Bing's index is what several AI assistants read, so it reads Bing's own report of citations in AI answers. Once a week it asks a web-grounded model (Perplexity Sonar by default, through OpenRouter) the questions your site should answer and records which sites it cites. It reports GA4's AI-assistant traffic, which undercounts because most assistant visits arrive without a referrer. And it checks that each site serves llms.txt, an IndexNow key, and a robots.txt that lets AI crawlers in. A fix aimed at AI citations is graded the same way as one aimed at clicks.
Can an AI agent use Growth Radar?
Yes. Growth Radar runs a Model Context Protocol server at https://growthradar.app/api/mcp with 23 tools, authenticated with a bearer token. An agent in Claude Code or Cursor can read the ranked fix list, mark items done or dismissed, and record a shipped change so it gets graded. None of the tools spends money, publishes anything, or changes a third-party system.
Is Growth Radar free?
Yes, during early access. Join the waitlist with an email address; no credit card is needed, and accounts open by invite. A paid plan will come later, and its price will be published on the pricing page before anyone is charged.