Most founders track SEO success by rankings and traffic. Both are lagging indicators. By the time they move, months of work have already been done in the right or wrong direction.
The leading indicator that actually predicts whether SEO will compound is index coverage rate: what percentage of your submitted URLs are indexed versus crawled but not indexed.
If Google is crawling your pages but not indexing them, it has decided they are not worth serving to searchers. More content will not fix that. Publishing faster will not fix that. The problem is either thin content, duplicate intent across too many pages, or a crawl budget issue on a young domain.
The second leading indicator is impression growth rate in Google Search Console, not clicks. Impressions mean Google is considering your pages for queries. Clicks come later, after rankings consolidate. A site with flat impressions after 60 days of publishing has a content-market fit problem. A site with growing impressions but low clicks has a title and meta description problem, which is fixable in a day.
The sequence that actually works: index coverage first, impression trend second, ranking position third, clicks last. Most founders watch it in reverse and wonder why nothing is moving.
What leading indicators are you tracking for SEO beyond rankings and traffic?
I am seeing a similar sequence on a young directory with roughly 1,000 browser-tool pages. One nuance I would add is that low CTR is not automatically a title or meta-description problem when most impressions still come from positions 20 to 60.
In our case, average position was around 40 over the broader three-month window and is closer to 20 in the recent month. Google also appears to be testing a smaller group of pages and query clusters first, so total active pages can narrow while impressions and average position improve.
I now compare CTR inside the same position buckets and track page cohorts by first-impression date. That separates snippet quality from ranking distribution. The next layer I am adding is a BigQuery view by cluster, so I can see whether Google is expanding coverage after a cluster earns stronger engagement.