← Blog
Publisher guide·

Why we track search rank to position 1,000

VSCodeRank stops at 100. Most of the keywords a mid-size extension actually ranks for live below that line.

The only other paid rank tracker in this market, VSCodeRank, samples Marketplace search positions 1 to 100. That is a reasonable window if you are already #12 for “prettier.” It is a blank page if you are #292 for the query that describes your product.

VSXRank samples 1 to 1,000 on both registries. Past that we render >1,000, not a fake rank. Unknown is an em dash.

A real window, 5 September 2026

One dual-listed extension we crawl (agsoft.claude-history-viewer, 10,476 Marketplace installs that day) against the queries a publisher would actually type:

KeywordMarketplace rankOpen VSX rankMarketplace #1
claude code>100 of 37,861 (#292 in the top 1,000)#18anthropic.claude-code
claude history#11#1doorsofperception.claude-code-history
claude code history#32#2doorsofperception.claude-code-history
claude usage#65#21ArikAizikovich.claude-usage
claude diff#28#12Sansec.claude-diff
codex history#7#2hiztam.codex-history-viewer
codex cli#55#31BiggerLittleStarBLS.codex-cli-live
session viewer#8#5SiddheshPrabhugaonkar.q-log-session-viewer
code history viewer#6#2hiztam.codex-history-viewer
ccusage#11 of 12#4 of 5aurelio-amerio.ccusage-widget

A tracker that stops at 100 reports “claude code” as unranked. It is ranked. It is just in the part of the list VSCodeRank does not buy. The same listing is #18 on Open VSX for that head term — the other registry is not a rounding error, and a 100-deep Marketplace-only product never sees it.

Long-tail phrases (“code history viewer”, “ccusage”) sit inside the top 10 with tiny result sets. Those are the keywords worth an alert. Head terms with 30k+ results are a weather report for Anthropic.

Crowdedness is part of the number

A rank without total_results is half a fact. #40 of 80 is a different listing from #40 of 40,000. We store both. The dashboard shows the position; the crowdedness sits next to it so you do not treat every #40 as the same prize.

Jitter below #10, silence below #100

Marketplace ordering is stable in the top 9 and noisy from 10 to 100. We take three samples and chart the median so a redraw is not a “drop.” That work is wasted if the true position is 292 and you never stored it. Marketplace ranking and jitter is the sampling write-up.

Open VSX is consistent between identical calls, so one sample is enough. We still go 1,000 deep. The catalog is smaller (17,429 listings on 6 September 2026) but a specific query can still run past 100.

History is not the window

VSCodeRank’s free tier keeps 30 days of history and Pro keeps 90. We crawl every extension every night regardless of who pays, starting 5 September 2026, and we do not delete it on cancel. The rank window and the history window are separate upsells. You can have both on every plan, including Solo at $9.

Add the keywords that already sit between 100 and 1,000. Those are the ones a 100-deep competitor will never email you about when they move.

VSXRank tracks both registries nightly, to position 1,000. Start a free trial or open the live demo.