Which Pages Should I Work On?
Free, no signup. Build a modeled to-do list for pages with high-impression queries just outside the top results, CTR gaps, or stable-ranking decay.
Optional shortcut
Load directly from Search Console
Connect for this browser session, choose a property, and load two comparable 28-day periods. You will still choose Analyze below.
Privacy, dates, and data limits
Google's read-only access token exists only in page memory. It is not stored, sent to this site, used by telemetry, or transferred to Traverse. Ending the session clears the token and loaded analyzer data without revoking your Google grant.
Dates use Search Console's Pacific-time calendar: 28 complete days ending two days ago, compared with the immediately preceding 28 days. Search Console returns top rows rather than a guaranteed exhaustive export; this shortcut also stops at 10,000 top rows per table to match the analyzer's safety limit. Upload an export when you need different filters or a separately preserved source file.
Optional value context
Add a one-session GA4 value overlay
Connect GA4 separately to identify scored pages with supplied key-event or revenue evidence. This does not change the GSC score.
Privacy and interpretation
GA4 is a separate analytics.readonly grant and token from Search Console. The token stays only in page memory, and requests go directly from this browser to Google's Analytics APIs. No token or GA4 row is sent to this site, telemetry, or Traverse.
The overlay loads up to 10,000 top value-ordered landing-page rows for the same 28 complete days ending two days ago. If the property has more rows, this is a partial overlay ordered by key events, revenue, then sessions. Revenue is shown in the property's source currency; this tool does not infer or convert a currency. Ending GA4 removes only its token, input block, and value context—the GSC input remains.
Paste GSC Pages first, GSC page×query export second; an optional prior Pages period goes third. Separate data sets with a line containing ---. Files never leave your browser.
Optional context: add a prior-period GSC Pages table and/or a GA4 landing-page table with Landing Page, Sessions, Key Events, and Total Revenue. Either optional table can come third or fourth.
Search Console export limit: the UI can return only about 1,000 representative rows, and privacy-anonymized queries are omitted. Treat every analysis as a view of the exported sample, not the complete query set.
Analysis complete
Results
Site passport Local context for this saved site
Local data
Saved targets, named lists, and recent check summaries remain only in this browser.
Rate this tool
Runs entirely in your browser — nothing you paste is uploaded or stored. Anonymous run-level outcome counters may be used for aggregate research; URLs, domains, IPs, and identifiers are never included, and no statistic is released below 100 runs.
How to use it
- Paste the current GSCA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. Pages export.
- Add
---, then paste the current combined page-by-query export for the same scope. - Optionally add another separator and an equal-length prior Pages export.
- Select Analyze. Review the highest scores, then use each row's reasons and query evidence to choose the actual work.
Example result Illustrative data
The values below are fictional and exist only to explain the output. Modeled upside is not a traffic forecast.
Pagehttps://example.com/technical-seo-audit/
- “technical seo checklist” is in striking distance at position 7.4.
- “website audit template” has a CTR gap against the modeled curve.
- Clicks declined 18% while position held.
What the results mean
Score sorts the list; it is a blend of signals and has no universal good/bad threshold. Upside clicks estimates the difference between actual clicks and a modeled CTR after moving three positions. Reasons identify striking distance, a CTR gap, or stable-ranking decline. Queries contains all supplied query rows joined to that normalized page, not only the trigger queries.
How it works
The engine joins page-by-query rows to page totals using normalized URLs. For positions 4–20, it estimates CTR at a position three places better and counts only positive click difference. It flags CTR gaps when a query has at least 50 impressions and less than 70% of modeled CTR. With a prior period, it adds a decay reason when clicks fell and average position moved by less than one position.
Features
- Sorted page backlog with query-level evidence.
- Optional period-over-period decay signal.
- Transparent reasons and modeled upside kept separate.
- CSV/manual input by default, with optional separate GSC and GA4 browser-session connections when Google OAuth is configured.
Limitations
- The model does not know business priority, page quality, SERP features, or implementation effort. An optional GA4 overlay can add observed value context, but it does not predict future value.
- Average position and a generic CTR estimate can hide device, country, and query-mix differences.
- Moving three positions is a scenario, not a prediction.
- Exports must share filters and the comparison periods should be equivalent.
Frequently asked questions
Which GSC exports do I need to prioritize pages?
Paste a current Pages export first and a combined page-by-query export second. You can optionally add a prior-period Pages export third to detect click decline while average position stayed stable.
What is a striking-distance query?
In this model it is a supplied query with average position from 4 through 20. The tool estimates click upside for moving it three positions, using a modeled CTR curve.
How is a CTR gap detected?
A query with at least 50 impressions is flagged when its observed CTR is below 70 percent of the model estimate for its average position.
What does the opportunity score represent?
It combines modeled upside clicks, a page-level bonus for CTR-gap evidence, and current clicks when stable-ranking decline is present. It is a prioritization heuristic, not predicted traffic.
Can I compare two periods with different lengths?
You can, but the decline reason would be misleading. Use equal-length periods with comparable filters, seasonality, and reporting completeness.
Feature requests for Which Pages Should I Work On
Upvote what you want most. New ideas can be submitted from the floating Feedback menu; requests appear here once approved, and the most-wanted rise to the top.
You won't be emailed about that request anymore.
Loading…
➕ Request a feature
New requests are reviewed before they appear here.
Common issues & how to fix them
- Information High-impression query is within striking distance Fix: Improve the page’s intent match, internal links, and missing supporting sections to move its queries from positions 5–20 into stronger visibility.
- Information Page has low CTR for its position Fix: Rewrite the title and description to match the dominant query intent and differentiate the result, then compare CTR at similar positions.
- Warnings Page has declining clicks Fix: Segment the decline by query and page, compare rankings and SERP changes, then repair lost relevance, links, or technical accessibility.
- Information Page has high impressions but few clicks Fix: Align the snippet and opening content with high-impression queries, then test whether clicks improve without a ranking change.