← back to all posts

Which Page-Two Rankings Are Worth Fixing: Contrast Analysis by an AI Agent on a Live Store

Which Page-Two Rankings Are Worth Fixing: Contrast Analysis by an AI Agent on a Live Store

Contrast analysis is one of the most useful and most tedious jobs in SEO. Open the top results, write down what competitors cover, compare it with your own page, and repeat for every query. I handed that work to a router agent in Orakul and ran it on a real store — anastasiya.studio, which sells printable music worksheets for kids. Below is the data: what the agent found, where its export needed a second look, what I changed on the site right away, and how I'll check the result.

What contrast analysis is

It answers one question: what is my page missing compared with the pages already in the top results for this query? Not "write 2,000 words" and not a generic checklist, but specific subtopics that most competitors cover and you don't. If a subtopic shows up on 4 pages out of 6, that's a signal. If it shows up on one, it's probably just that site's quirk.

Step 1. Where to look: clicks, but positions 10–20

The first request to the agent is a 30-day Google Search Console export: pages that got clicks but sit on page two of the results. Clicks confirm there is demand, and page one isn't far away.

SEO Expert agent chat in Orakul: Search Console export for anastasiya.studio, pages with clicks at positions 10–20
The SEO Expert agent in Orakul: Search Console export for August 13 – September 12, 2026. Five anastasiya.studio pages with clicks at positions 10–20.
Page Query Average position
/tag/music-tracing-worksheets/ music note tracing worksheets 10.0
/tag/free-printable-music-theory-worksheets/ music color by number 10.5
/tag/free-printable-music-coloring-pages/ music coloring sheets for elementary free 15.5
/product/back-to-school-bass-clef-note-naming-worksheets/ bass clef note naming worksheets pdf 16.2
game.anastasiya.studio/002_star.html twinkle twinkle little star game 18.4

A manual check: the number matches, but it rests on 2 impressions

An export shouldn't be taken on faith, so I checked one pair in the Search Console interface, filtering by both query and page.

Google Search Console: query music note tracing worksheets, 1 click, 2 impressions, average position 10
Manual check in Search Console: position 10 matches the agent's data. It also shows the catch right away — 2 impressions in 28 days.

The position matched: 10 in GSC, 10.0 from the agent. But behind it are 2 impressions and 1 click on a single day, September 4. That's not a ranking, it's a fluke. A "has clicks + position 10–20" filter with no impression floor lets pairs like this through, so the request to the agent should include a minimum number of impressions.

The other rows can't be checked the same way: the GSC interface won't build a page + query table across several URLs at once. For those, you have to trust the export the agent pulls from the connected Search Console.

Step 2. How the agent compares a page with the top results

The second request goes page by page: "analyze the page for query X and determine what it needs to reach the top." The agent takes Google's first page of results, opens the competitors, extracts subtopics, counts how many pages cover each one, and checks whether ours does. Each subtopic becomes one line. For example, for "music color by number":

Add explicit age groups and grade levels (Preschool, Pre-K, Kindergarten, Grade 1) to the page copy and product data. Found on 4 out of 6 competitors. On our page: weak — ages are mentioned only in navigation and product titles.

Besides the list of edits, the report has a "what's already good" section and demand context. All of it is in the public document covering all five pages.

Two caveats the agent states in the report itself. First, the samples are incomplete: it managed to open 4 pages out of 8, 6 of 9, 6 of 9, and 3 of 9. Pinterest, Scribd, and direct PDF files don't return HTML, so there's nothing to compare. Second, it found no demand data for the exact long-tail queries. Wordstat shows zero for an English-speaking audience, and Bing only reports the broader topic: "music coloring pages," for example, had 141 impressions over 4 weeks.

What the five queries showed

1. "music note tracing worksheets," position 10.0 — a ceiling of 1–2 positions

The top results belong to big players. Content work might move the page up 1–2 positions, no more. The agent still found gaps: grade levels and ages (3 of 4 competitors), sequential note reading from Middle C (3 of 4), and instrument-specific sections (2 of 4).

2–3. "music color by number" (10.5) and "music coloring sheets for elementary free" (15.5) — worth working on

Here the report gives a clear list. For color by number:

For the coloring pages, the main gaps are character-driven themes (5 of 6) and the total number of sheets available (3 of 6).

4. "bass clef note naming worksheets pdf," position 16.2 — the agent refused to suggest edits

Agent report: the results for bass clef note naming worksheets pdf are free PDFs, while the analyzed page is a paid product
Instead of a checklist, the agent flagged an intent mismatch: the results are free PDFs, and our page is a paid $2.50 product.

This is the most useful result of the whole run. The results are direct PDF files from school sites and free directories where the file downloads in one click. Our page is a $2.50 product with a cart. The searcher wants a free file, and added subtopics won't change that. On top of that, only 3 of the 9 results returned HTML, which is too few for a reliable comparison.

The agent offered two paths: retarget the product page to commercial queries (for example, "printable bass clef music theory worksheets for kids"), or build a separate free page with 1–2 PDFs that links to the full paid 10-worksheet pack.

5. "twinkle twinkle little star game," position 18.4 — nothing to compare

This is a game page with no text content. Contrast analysis doesn't apply.

What I changed right away

I deliberately left the snippets alone. Snippets move CTR, content moves position. Change both at once, and a month from now there's no telling which one worked.

What's in the report but not done yet

Seasonality: why the analysis runs every two weeks

The store is highly seasonal: back-to-school, Halloween, Christmas, Easter. In two weeks people will be searching for Halloween coloring pages, and a fresh export will surface different pages. So there are two cycles. A new export and analysis every two weeks, for pages that have just reached positions 10–20. A check after one month, for what has already been fixed.

That leads to a practical takeaway. Changes take weeks to show up in the results, so seasonal pages are better analyzed before the season, using last year's data, rather than waiting for them to surface on page two.

How I'll check the result

In a month, mid-October, I'll compare average positions. I'll look at each page as a whole, not at page + query pairs: with two impressions, any change is meaningless. And not at clicks: by October back-to-school demand will have faded, and clicks will drop no matter what I changed. I'll publish the result as an update to this article, even if it's zero.

What to take away

The agent behind this analysis runs in Orakul. The full report on all five pages is in the public document.

Maxim Safianov
Maxim Safianov

I work at the intersection of technical SEO and software engineering: helping sites stay visible for classic search and AI answers alike, and building the Python tooling that automates it.

No comments yet — be the first to share your thoughts.

GEO

Google's Top 10 Still Feeds AI Answers. Three Signals the Rules Are About to Change

The common view is that AI answers have already changed search. Under the hood it is still the same two-stage ranking pipeline. I checked this on data from anastasiya.studio: 74% of pages with impressions in AI Overviews and AI Mode rank in the top 10 and collect 92.6% of AI impressions. But Google has already published the theory that removes that pipeline, started paying for contributions to AI answers, and opened a Search Console report for them. Here are the three signals and what to do right now.

17 Sep 202610 min
SEO

Negative SEO Link Bombing Is Real. That SEJ Disavow Story Was Something Else.

A widely shared Search Engine Journal story about a Reddit user's ranking collapse is making the rounds as proof Google can't stop negative SEO. It isn't that story — it's about someone disavowing their own paid links by mistake. The real threat is separate, and one of our clients lived through it: a coordinated spam-link attack, a same-day disavow file, and months of Search Console data that still hasn't fully recovered.

06 Sep 20265 min
SEO

The August 2026 Google Spam Update: The Real Facts, and the S-CTS Myth

A text is circulating claiming this update runs on an algorithm called "S-CTS." S-CTS is real — it's just YouTube's video-spam system, not a web search ranking mechanism. Here's what's actually confirmed, plus honest Search Console data from my own two-month-old site.

29 Aug 20265 min