Finding · word count vs. rank

Page length told us nothing about rank in our sample.

Content briefs still open with a word target: match the average length of the top ten, to the hundred. Five tables we already had carried a position beside a word count, so we ran the correlation on each. On our own corpus, 116 pages from the Google (us) top 10 across 20 keywords, the mean Spearman correlation between length and position is +0.024. NeuronWriter’s own competitor tables, 15 keywords, give −0.063. Clearscope’s, 3 keywords on a trial quota, −0.195. Scalenut’s, 8 keywords, −0.123. Surfer SEO’s, 20 keywords, +0.063. We report the five apart and never average them, because each counts words its own way. Not one of them landed far enough from zero to set a word target by.

What each source measured

Only the first row is scored against the frozen Google (us) top 10 we built before touching any tool. The other four are each tool grading its own SERP on its own day, so the crawl, the ranks and the word count are all its own. The exact fields sit under the table.

Spearman correlation between page length and position, computed per keyword and averaged inside each source. A positive value would mean longer pages ranked higher. Read down a row, not across the column: the sources do not share a word count or a SERP.
SourcePositions come fromMean ρMedian ρKeywordsPagesRows dropped
Our corpusOur frozen Google (us) top 10+0.024+0.0862011630 of 146
NeuronWriterIts own SERP snapshot−0.063−0.0331542439 of 463
Clearscope (reference only)Its own SERP snapshot−0.195−0.13435013 of 63
ScalenutIts own SERP snapshot−0.123−0.107812621 of 147
Surfer SEOIts own SERP snapshot+0.063+0.0522018713 of 200

← swipe the table sideways for the rest of the columns

No total row. A mean over these five would state a number none of them measured.

Why they are not one number

Our word count is our own tokenizer run over the extracted body text, navigation and footers included. The other four report their own counts and none documents the method, so the same page can come out hundreds of words apart depending on who counted. The positions differ too, because each source crawled on its own day and saw a different set of pages. The rows sit beside each other and stop there.

Verbatim from the report, one block per source.

Our corpus — our own corpus
Positions: data/keywords/fixtures/serp-truth-v1.json (Ahrefs serp-overview, country=us, top-10, fetched 2026-08-15/16 & 2026-08-18)
Word count: data/raw/serp-truth-v1/{keyword_id}/{position}.md (Tavily extract, extract_depth=basic)
Counting rule: clean() strips fenced code, markdown images/links (anchor text kept), bare URLs and HTML tags; then non-[a-z0-9\s-] -> space and whitespace split. No stopword removal, no length filter, no boilerplate (nav/footer/related-posts) stripping.
Excluded: non-web SERP entries (video); URLs whose Tavily extract came back empty (extraction failure != a zero-word page)
NeuronWriter — NeuronWriter Select-competitors table (self-reported)
Positions: NeuronWriter's own crawled rank (google.com/en, captured 2026-08-19)
Word count: NeuronWriter's own words column
Counting rule: NeuronWriter's, undocumented — NOT comparable to own_corpus token counts
Excluded: rows with words 0/null or no rank
Clearscope — Clearscope Competitors table (self-reported)
Positions: Clearscope's own SERP snapshot, desktop column (captured 2026-08-20)
Word count: Clearscope's own word_count column
Counting rule: Clearscope's, undocumented — NOT comparable to own_corpus token counts
Excluded: analysis_failed rows, word_count 0/null, rows without a desktop position
Scalenut — Scalenut Competition table (self-reported)
Positions: Scalenut's own crawled rank
Word count: Scalenut's own word_count column
Counting rule: Scalenut's, undocumented — NOT comparable to the own_corpus token counts in cross-findings-2026-08-21.json
Excluded: rows with word_count 0/null or no rank; exact-duplicate rows deduped first
Surfer SEO — Surfer Organic Competitors table (self-reported)
Positions: Surfer's own crawled position
Word count: Surfer's factors.body.wordCount.all
Counting rule: Surfer's, undocumented — NOT comparable to the own_corpus token counts in cross-findings-2026-08-21.json
Excluded: rows with word_count 0/null or no position; exact-duplicate rows deduped first

How this was measured

Inside each keyword we paired every page’s position with its word count and ran Spearman on the pair, the same statistic and the same sign convention the tool tests use. Read it this way: +1 means the longest page ranked first and the shortest ranked last, 0 means length carries no rank information, and a negative value means the shorter pages ranked higher. We publish every keyword rather than the mean alone, because a mean near zero hides two different results: steady noise, and violent disagreement.

Nothing new was fetched. The tables were already in the repo from the tool runs, so this cost no quota and no API call. The script that recomputes the first three is scripts/tests/content-opt/cross/mine_findings.py; a tool added later carries the same block in its own report, and the page reads it from there. The fixture and the ground truth are on the methodology page.

Definition as recorded in the report: Per keyword, Spearman rho between -position and word count; positive = longer pages rank higher. Three sources reported separately and never averaged together: each pairs its own position column with its own word-count column.

Our corpus, keyword by keyword

116 pages across 20 keywords, positions from the frozen SERP truth, word counts from the text we extracted. The pages run from 59 words to 12,715, so the range is wide enough for a length effect to show up. The mean is +0.024 and the median +0.086.

Word count against real Google (us) position, one row per keyword, sorted by correlation. 116 pages across 20 keywords; word counts include navigation and footer text. Mean ρ +0.024.
KeywordPagesρMedian wordsShortest–longest
best ai for math4−1.0001,400143–1,958
ai for coding4−0.60016599–355
ai voice generator7−0.321924409–1,453
ai for teachers7−0.3211,225374–3,693
digital nomad visa countries7−0.2864,7431,765–10,192
best help desk software4−0.2003,2211,499–6,469
best ai writing tools5−0.1003,9802,946–9,528
gpu comparison7−0.071406151–7,023
best laptop for programming50.0001,726445–2,684
best crm for small business6+0.0861,648583–2,010
ai for customer service6+0.0862,5641,586–3,353
ai for small business7+0.1432,246849–3,519
ai for business automation6+0.1431,792452–4,859
best ai chatbot5+0.2006,6111,202–8,878
ai content detector8+0.2862,052612–3,163
ai presentation maker6+0.3141,45459–2,488
best ai for writing4+0.4003,463997–9,528
cost of living comparison6+0.429526117–1,484
ai for marketing6+0.6382,9511,520–6,279
best ai seo tools6+0.6573,6901,081–12,715

← swipe the table sideways for the rest of the columns

No single keyword carries this

The per-keyword values run from −1.000 on best ai for math to +0.657 on best ai seo tools, and every keyword rests on 4 to 8 pages. At that sample size one page moving two positions flips the sign. 11 keywords came out positive, 8 negative, 1 flat. Quote one row on its own and you can show whichever direction you came in with. The mean over 20 keywords is the smallest unit worth citing here.

What we could not read

30 of the 146 web URLs came back empty from the extractor — paywalls, bot blocking, pages that assemble their text in the browser. We dropped them instead of recording them as zero-word pages. That removal is not random. The pages we cannot read skew towards JavaScript-heavy tool sites, and those sites tend to carry short body copy, so the sample that survived is missing short pages more often than long ones. Had they been readable, they would more likely have pulled this correlation down than up. Treat +0.024 as the friendlier end of the range.

What the tools’ own tables say

Each of these tools builds a competitor table per keyword and prints a word count beside each rank. Those two columns are the tool’s own, so no table here checks our numbers. We put the same question to four more tables.

NeuronWriter

424 rows kept of the 463 its tables held, across 15 keywords. Mean ρ −0.063, median −0.033: 6 keywords positive, 9 negative. The per-keyword swing is the same story as ours: −0.607 on best crm for small business to +0.255 on best ai for writing.

Word count against NeuronWriter's own reported rank, one row per keyword, sorted by correlation. 424 rows across 15 keywords, both columns reported by NeuronWriter. Mean ρ −0.063.
KeywordPagesρMedian wordsShortest–longest
best crm for small business27−0.6073,435411–8,007
gpu comparison30−0.3266562–15,547
best ai seo tools28−0.2193,41711–13,051
cost of living comparison28−0.20878141–5,938
best laptop for programming28−0.1801,6465–9,624
ai voice generator30−0.1791,26625–6,144
ai for business automation26−0.1592,46914–6,135
ai for small business29−0.0331,76728–6,318
ai for customer service30−0.0282,196290–8,740
ai presentation maker30+0.0081,31728–16,608
best ai chatbot25+0.0631,99360–10,636
digital nomad visa countries29+0.1813,848138–19,184
ai content detector29+0.2351,87165–5,698
ai for coding27+0.2531,6507–6,889
best ai for writing28+0.2553,17372–11,971

← swipe the table sideways for the rest of the columns

Clearscope: a reference row, not a result

50 rows kept of the 63 its tables held, across 3 keywords. Mean ρ −0.195, median −0.134: 0 keywords positive, 3 negative. 3 keywords cannot show a direction; change any one of them and the answer changes. The row is here as a third independent table, not as a finding.

Word count against Clearscope's own reported rank, one row per keyword, sorted by correlation. 50 rows across 3 keywords, both columns reported by Clearscope. Mean ρ −0.195.
KeywordPagesρMedian wordsShortest–longest
ai voice generator19−0.3561,518228–2,936
gpu comparison14−0.1341,444238–17,967
cost of living comparison17−0.0961,570253–5,141

← swipe the table sideways for the rest of the columns

Scalenut

126 rows kept of the 147 its tables held, across 8 keywords. Mean ρ −0.123, median −0.107: 3 keywords positive, 5 negative. The per-keyword swing is the same story as ours: −0.389 on cost of living comparison to +0.093 on ai for small business.

Word count against Scalenut's own reported rank, one row per keyword, sorted by correlation. 126 rows across 8 keywords, both columns reported by Scalenut. Mean ρ −0.123.
KeywordPagesρMedian wordsShortest–longest
cost of living comparison13−0.38961754–3,116
gpu comparison11−0.3451,15124–4,840
ai presentation maker16−0.218876233–20,666
ai voice generator17−0.187593231–1,874
ai content detector18−0.0281,390154–8,472
best ai chatbot15+0.0203,322281–6,449
ai for coding19+0.0692,66786–3,896
ai for small business17+0.0931,905239–3,531

← swipe the table sideways for the rest of the columns

Surfer SEO

187 rows kept of the 200 its tables held, across 20 keywords. Mean ρ +0.063, median +0.052: 11 keywords positive, 9 negative. The per-keyword swing is the same story as ours: −0.612 on best crm for small business to +0.867 on best ai chatbot.

Word count against Surfer SEO's own reported rank, one row per keyword, sorted by correlation. 187 rows across 20 keywords, both columns reported by Surfer SEO. Mean ρ +0.063.
KeywordPagesρMedian wordsShortest–longest
best crm for small business10−0.6123,1261,379–9,158
ai voice generator8−0.5241,403648–2,436
best help desk software8−0.3814,5672,442–8,500
gpu comparison10−0.2851,0952–8,360
best ai for math10−0.1761,02297–3,037
ai for marketing10−0.0912,666499–6,761
ai for customer service10−0.0792,2971,537–4,876
ai for coding10−0.0672,87164–7,357
best ai for writing9−0.0675,3242,999–10,411
cost of living comparison9+0.050916123–4,672
ai for business automation10+0.0552,595467–4,294
ai for small business8+0.1432,5231,505–3,514
best ai writing tools8+0.1435,1071,584–10,411
best laptop for programming9+0.2672,775362–7,805
digital nomad visa countries10+0.2735,1632,356–11,466
best ai seo tools10+0.2856,2791,058–15,907
ai content detector10+0.3701,926776–3,654
ai for teachers9+0.4832,509863–6,720
ai presentation maker10+0.6121,242693–5,622
best ai chatbot9+0.8672,599403–7,662

← swipe the table sideways for the rest of the columns

The furthest any of the five sits from zero is Clearscope’s −0.195, on 3 keywords. A correlation that small, on that few keywords, is not a case for writing shorter either. What the five agree on is narrower and duller: inside a Google top 10, length does not order the results.

The number describes the pages that already rank; it does not rank a page. Matching it costs writing time, and none of these tables shows it buying a position.

What would overturn this

We would rather be corrected than quoted. Any of the following would change what this page says.

  • A positive correlation that survives a bigger sample. Mean ρ above +0.3 across at least 10 keywords, with the sign holding keyword by keyword rather than averaged into place.
  • The 30 unreadable pages, recovered. Fetch them with a renderer and recompute. They are the largest known bias in our own row, and if the sign flips once they are in, this page is wrong.
  • A cleaner word count. Ours keeps navigation, footers and related-post lists, so a short article on a heavy template can outweigh a long one on a light template. Strip the boilerplate, recount, publish the result.
  • Length tested against everything else. Spearman reads one column at a time, and our SERP truth shows top tens dominated by high-authority domains. Hold DR, page type and intent fixed, find length still paying off, and the reading here changes.
  • A controlled test. This page describes pages that already rank; it cannot tell you what happens when you lengthen one. Publish matched pages where only length changed and the longer ones rose, and this becomes the weaker evidence.
  • A mistake in our own work. The report file, the keyword fixture and the script are in the repo. Find an error in the pairing or the statistic and we will rerun it and correct the page.

Update log

One row per source. Generated from the report behind this page.
DateChange
2026-08-21Our corpus added: 20 keywords, 116 pages we read, mean ρ +0.024.
2026-08-21NeuronWriter added: 15 keywords, 424 rows from its own table, mean ρ −0.063.
2026-08-21Clearscope added: 3 keywords, 50 rows from its own table, mean ρ −0.195. Reference only; trial quota.
2026-08-21Scalenut added: 8 keywords, 126 rows from its own table, mean ρ −0.123.
2026-08-24Surfer SEO added: 20 keywords, 187 rows from its own table, mean ρ +0.063.

Another table with a position column and a word count gets its own row, not a place in an average.

Disclosure

Pages carrying affiliate links say so at the top. A commission cannot move a test result: the keyword fixture is frozen, the runs are scripted, and we keep the raw responses. More on who we are and how we make money.

Cite this

ToolVerdict. “Page length told us nothing about rank in our sample.” https://toolverdict.ai/findings/word-count-vs-rank. Last updated 2026-08-24.

Quote the source with the number. Our corpus reads +0.024 over 20 keywords of real Google (us) positions and 116 pages, measured 2026-08-21. The other 4 come from the tools’ own tables, and there is no combined figure to quote.