Skip to content

How we run a controlled SEO experiment

Isometric illustration of identical web pages as controlled-experiment specimens beside a small results leaderboard, in RankGear indigo and coral.
The only way past “it correlates” is a controlled test: change one variable, hold everything else, deploy across independent pages, wait for indexing, and read the result. Here’s how RankGear runs one — and what a published result will always include.

Why a correlation isn’t proof

A correlation tells you a factor tracks position across the pages ranking for a query. It cannot tell you that changing the factor will move your page — for that you need a controlled test that isolates the one change and watches what happens.

That is the line between evidence and proof. A correlation ranks your bets; an experiment settles one of them. We wrote separately about reading correlations without overclaiming — this post is the other half: how we turn a promising correlation into something you can stand behind.

What makes an SEO experiment “controlled”

An experiment is controlled when exactly one variable changes and everything else is held constant across independent test units. Break that and the result is unattributable — you will see movement and never know which change caused it.

“Held constant” is stricter than it sounds. The control and its variants share the same template, the same content length, the same publish timing, and the same internal linking, so the only thing that differs is the variable under test. Change a title, add schema, and rewrite the intro all at once, and a ranking move teaches you nothing about which one did it.

How RankGear’s experiments lab works

  1. Design a hypothesis and spec

    State the claim in testable form, then write a spec: one control page and variants that differ in exactly one thing.

  2. Build the control and variants

    Generate every page from one template so nothing varies except the tested variable.

  3. Distribute one page per independent domain

    Deploy each page to a different domain from a pool, so no single site’s authority skews the comparison.

  4. Deploy with complete heads and a baseline manifest

    Ship the batch with full head markup and record a baseline manifest of the starting state.

  5. Wait for indexing

    Do nothing until the pages are indexed. A leaderboard built the same day measures indexing speed, not the change.

  6. Build and read the leaderboard

    Once indexed, look up where each variant ranks for the shared keyword, order them, and compare against the hypothesis.

Why one page per independent domain

The biggest confounder in SEO testing is site authority. Put two variants on the same strong domain and you cannot tell whether the domain or the variable moved them. One page per independent domain removes that.

A pool of independent domains means each variant carries roughly the same “site” weight, so differences in rank point back to the variable instead of to whichever domain happens to be stronger. It is more work than testing on one site — and it is the difference between a result you can attribute and one you can only hope about.

Reading the result without fooling yourself

A single leaderboard is a data point, not a verdict. Real confidence comes from a large enough sample, from replication, and from publishing the tests that showed nothing.

SERPs move on their own, so a one-run difference can be noise. We weigh effect size against that noise, re-run the tests that matter, and treat a null result as a result: “this variable didn’t move rank in this design” is worth knowing, and burying it would make every other number we publish less trustworthy.

What a published result will always include

Every testing-results post carries its method, sample size, dates, and the variable tested — plus the dataset behind it. Results without that context aren’t evidence; they’re anecdotes with a chart.

That means you can weigh a result, replicate it, or disagree with it on the merits. It also means we publish the hypothesis up front and the null results alongside the wins.

Correlation, not causation. We’re publishing the methodology first, on purpose. Real experiment data — with its dataset behind it — goes up as each test completes, not before.

The lab is part of RankGear — see Content Intelligence and the methodology, or start with how to read a correlation before you test it.