Where B2B SaaS publishes comparison pages - and who never does
A study of 479 YC-backed B2B software companies: every homepage and sitemap crawled for competitor-comparison pages, 8,717 candidate URLs fetched and classified by title, 1,683 vendor-vs-vendor comparisons identified. Three in ten companies publish one. The decisions that separate publishers from non-publishers are size, category and commitment - in that order.
Executive summary
Comparison pages - the "X vs Y" and "X alternatives" pages that catch buyers mid-shortlist - are not a standard part of B2B SaaS publishing. In a study of 479 YC-backed B2B software companies, 148 (30.9%, 95% CI 26.9-35.2%) published at least one page comparing themselves to a named rival. The majority, 331 companies, published none at all.
Three patterns organize the result. First, publishing is a scale decision. The rate climbs monotonically across company size: 24.0% of companies with 1-10 employees, 27.4% with 11-50, 36.9% with 51-200, and 51.2% with 200+ - a 2.1x spread. Category effects exist but are flatter: sector rates run from 0.0% (Supply Chain and Logistics) to 48.3% (Analytics). Second, publishers treat comparison content as a library, not a page. The median publisher maintains 3 pages; the 90th percentile maintains 20, and the top ten companies produce 57.3% of every comparison page in the sample. Third, most apparent comparison pages are not comparisons. 77.0% of candidate URLs were concept articles ("lead vs prospect"); only 19.3% were vendor-vs-vendor pages, which is why URL counting alone mis-measures this entire category.
For buyers and sales teams, comparison libraries are a minority signal concentrated among larger, more established vendors. For content teams, the data says to plan comparison pages as a structured, maintained asset set - 74.3% of real comparison pages live on permanent paths - rather than as individual blog posts.
The six findings
Bigger companies publish; small ones rarely do
51.2% of companies with 200+ employees publish a comparison page against 24.0% with 1-10 employees (31/129). The ladder climbs monotonically across all four bands. Competitive pages follow size.
Category matters less than size
0.0% in Supply Chain and Logistics (0/18) to 48.3% in Analytics (14/29), against 30.9% overall. The extremes separate from each other (permutation p=0.001); the spread is narrower than the size ladder.
It is a library decision, not a page
Median 3 pages per publisher, but the top 3 companies write 31.8% of all comparison pages and the top 10 write 57.3%. 4 companies publish more than 100 each.
Most "-vs-" URLs are not comparisons
77.0% of candidate URLs are concept articles ("lead vs prospect"). Only 19.3% are vendor-vs-vendor. Any study counting URL patterns measures blog strategy, not competitive positioning.
The rivalry spreads across a long tail
213 distinct vendors are named across 1,854 target mentions. The top 10 absorb just 29.5%, and 216 of 496 vendor pairs - 43.5% - are contested by two or more companies.
Comparisons live on structured pages
74.3% sit on /compare/, /alternatives/ or /vs/ paths rather than 432 blog posts (25.7%). 1103 of 1683 pages (65.5%) put the publisher's own product in the frame.
The strategic read: comparing yourself against rivals is something companies start doing as they scale into a category fight - and they treat it as an asset library, not a one-off argument.
Three archetypes, five tiers
Every company in the sample falls into one of six tiers. The tiers are defined by page count, benchmarked against the publishers' own distribution.
| Archetype | Companies | Share | Benchmark | Profile |
|---|---|---|---|---|
| Non-publishers | 331 | 69.1% | - | No page we could classify. The default state, at every size. |
| The One-Pager | 47 | 9.8% | 1 page | Exactly one comparison page - usually against the nearest rival. |
| The Occasional | 51 | 10.6% | 2-5 pages | Two to five pages. Compete selectively, at the terms the buyer already searches. |
| The Committed | 37 | 7.7% | 6-20 pages | Six to twenty pages. A maintained set covering the shortlist buyers actually type. |
| The Programmatic | 9 | 1.9% | 21-100 pages | Twenty-one to a hundred pages. Comparison content as an acquisition program. |
| The Library | 4 | 0.8% | 100+ pages | More than a hundred pages - a page for every tool a prospect might name. |
Reading down the tiers: 20.5% of the whole sample sits in the light-touch tiers (one to five pages), while 2.7% has moved to program depth (13 companies). The middle - 37 companies at six to twenty pages - is where a maintained comparison set starts looking like strategy rather than opportunism.
Benchmarks: pages per publisher
Percentile distribution across the 148 publishing companies, for teams that need to know what "normal" looks like.
| Percentile | Pages maintained |
|---|---|
| P25 | 1 |
| P50 (median) | 3 |
| P75 | 8 |
| P90 | 20 |
| P99 | 147 |
| Maximum | 264 |
The top 25 comparison publishers in the sample
Every company in the 479-company frame that maintains 13 or more vendor-comparison pages, showing the split between direct 1-on-1 self-comparisons and third-party comparison pages.
| Company (domain) | Archetype | Total pages | 1-on-1 / 3rd-party | Rivals named | Primary path |
|---|---|---|---|---|---|
Bird (bird.com) | The Library | 264 | 231 / 33 | 12 | /de-de/ |
Courier (courier.com) | The Library | 147 | 4 / 143 | 15 | /integrations/ |
Basedash (basedash.com) | The Library | 125 | 28 / 97 | 9 | /vs/ |
Deepnote (deepnote.com) | The Library | 113 | 6 / 107 | 5 | /compare/ |
Rootly (rootly.com) | The Programmatic | 69 | 67 / 2 | 4 | /sre/ |
Rippling (rippling.com) | The Programmatic | 65 | 51 / 14 | 16 | /blog/ |
Taskade (taskade.com) | The Programmatic | 57 | 54 / 3 | 25 | /compare/ |
Airbyte (airbyte.com) | The Programmatic | 46 | 38 / 8 | 14 | /data-engineering-resources/ |
Polytomic (polytomic.com) | The Programmatic | 40 | 36 / 4 | 4 | /versus/ |
Deel (deel.com) | The Programmatic | 39 | 36 / 3 | 5 | /blog/ |
OpenReplay (openreplay.com) | The Programmatic | 38 | 29 / 9 | 4 | /compare/ |
SigNoz (signoz.io) | The Programmatic | 38 | 38 / 0 | 5 | /comparisons/ |
PostHog (posthog.com) | The Programmatic | 35 | 25 / 10 | 20 | /compare/ |
Hightouch (hightouch.com) | The Committed | 20 | 20 / 0 | 5 | /compare-cdps/ |
Jet Admin (jetadmin.io) | The Committed | 20 | 1 / 19 | 9 | /blog/ |
SuperTokens (supertokens.com) | The Committed | 19 | 5 / 14 | 3 | /blog/ |
LiveFlow (liveflow.com) | The Committed | 19 | 17 / 2 | 4 | /blog/ |
Miniloop (miniloop.ai) | The Committed | 19 | 0 / 19 | 15 | /blog/ |
HackerRank (hackerrank.com) | The Committed | 18 | 18 / 0 | 5 | /writing/ |
Cosmic (cosmicjs.com) | The Committed | 18 | 12 / 6 | 9 | /blog/ |
Mixpanel (mixpanel.com) | The Committed | 15 | 15 / 0 | 4 | /compare/ |
Motion (usemotion.com) | The Committed | 15 | 15 / 0 | 7 | /blog/ |
Webflow (webflow.com) | The Committed | 14 | 14 / 0 | 8 | /vs/ |
AssemblyAI (assemblyai.com) | The Committed | 14 | 14 / 0 | 8 | /blog/ |
Algolia (algolia.com) | The Committed | 13 | 13 / 0 | 5 | /competitors/ |
Two distinct playbooks appear inside the top 25. Direct-siege publishers (rootly.com, taskade.com, signoz.io, hightouch.com, hackerrank.com, mixpanel.com, algolia.com) put their own product in nearly every title. Third-party matrix publishers (courier.com at 143 of 147 pages, deepnote.com at 107 of 113, basedash.com at 97 of 125, polytomic.com, jetadmin.io, miniloop.ai) publish head-to-head and alternatives pages for rival pairs to intercept category search before the buyer knows the publisher's name. Several library leaders (bird.com, basedash.com, openreplay.com) also multiply page counts by localising comparison slugs across German, Spanish, French, Arabic and Japanese.
Who publishes
By company size - the strongest pattern
| Team size | Publishers / total | Rate | 95% CI |
|---|---|---|---|
| 1-10 employees | 31 / 129 | 24.0% | 17.5-32.1% |
| 11-50 employees | 52 / 190 | 27.4% | 21.5-34.1% |
| 51-200 employees | 41 / 111 | 36.9% | 28.5-46.2% |
| 200+ employees | 21 / 41 | 51.2% | 36.5-65.7% |
By sector
| Sector | Publishers / total | Rate | 95% CI |
|---|---|---|---|
| Analytics | 14 / 29 | 48.3% | 31.4-65.6% |
| Infrastructure | 20 / 45 | 44.4% | 30.9-58.8% |
| Security | 9 / 25 | 36.0% | 20.2-55.5% |
| Finance and Accounting | 11 / 31 | 35.5% | 21.1-53.1% |
| Marketing | 12 / 34 | 35.3% | 21.5-52.1% |
| Productivity | 12 / 34 | 35.3% | 21.5-52.1% |
| Engineering, Product and Design | 31 / 90 | 34.4% | 25.4-44.7% |
| Sales | 6 / 22 | 27.3% | 13.2-48.2% |
| B2B | 15 / 61 | 24.6% | 15.5-36.7% |
| Recruiting and Talent | 3 / 13 | 23.1% | 8.2-50.3% |
| Operations | 6 / 27 | 22.2% | 10.6-40.8% |
| Human Resources | 4 / 21 | 19.0% | 7.7-40.0% |
| Retail | 2 / 23 | 8.7% | 2.4-26.8% |
| Supply Chain and Logistics | 0 / 18 | 0.0% | 0.0-17.6% |
Analytics leads at 48.3% (n=29); Supply Chain and Logistics trails at 0.0% (n=18), with no publisher in the sample. The extremes separate from each other (permutation p=0.001) but most sector intervals overlap the overall 30.9% - size explains more of the variance than category does.
Anatomy of a comparison page
How the 1,683 real comparison pages are built.
- Structured path (/compare/, /alternatives/, /vs/)125174.3%
- Blog, learn or resources path43225.7%
| Page framing | Pages | Share |
|---|---|---|
| Publisher's own product in the frame | 1103 | 65.5% |
| Two other vendors compared | 580 | 34.5% |
34.5% of comparison pages compare two vendors neither of which is the publisher - editorial comparisons that capture buyers researching alternatives. Those pages are competitive as content, not as positioning.
The competitive landscape
The 1,683 comparison pages name 213 distinct vendors over 1,854 target mentions.
The 30 broad competitive anchors (targeted by 4+ SaaS publishers)
Incumbents and category leaders that four or more separate companies in the sample position against directly.
| Target vendor | Category | Attacking publishers | Total pages | 1-on-1 / 3rd-party | Sample publishers in frame |
|---|---|---|---|---|---|
| Google (Cloud / BigQuery / Workspace) | Cloud, Data & Workspace | 32 | 119 | 55 / 64 | airbyte.com, algolia.com, assemblyai.com +29 |
| Microsoft (Azure / Teams / BI) | Cloud, Productivity & BI | 15 | 43 | 20 / 23 | basedash.com, deepgram.com, deepnote.com +12 |
| Salesforce | CRM & Revenue | 13 | 29 | 20 / 9 | algolia.com, chatwoot.com, close.com +10 |
| HubSpot | CRM & Marketing | 10 | 15 | 7 / 8 | chatwoot.com, close.com, dyspatch.io +7 |
| Firebase | App Backend & Messaging | 8 | 20 | 6 / 14 | airbyte.com, courier.com, growthbook.io +5 |
| Amazon Redshift | Cloud Data Warehouse | 8 | 13 | 9 / 4 | airbyte.com, basedash.com, hightouch.com +5 |
| Google BigQuery | Cloud Data Warehouse | 8 | 11 | 9 / 2 | airbyte.com, basedash.com, evidence.dev +5 |
| Databricks | Data & AI Lakehouse | 7 | 45 | 7 / 38 | airbyte.com, deepnote.com, evidence.dev +4 |
| Zapier | Workflow Automation | 7 | 14 | 11 / 3 | assemblyai.com, hotglue.com, jetadmin.io +4 |
| Datadog | Observability & APM | 6 | 24 | 23 / 1 | feroot.com, growthbook.io, posthog.com +3 |
| Elasticsearch | Search & Analytics Engine | 6 | 23 | 19 / 4 | airbyte.com, algolia.com, influxdata.com +3 |
| ZoomInfo | B2B Sales Intelligence | 6 | 15 | 7 / 8 | apollo.io, miniloop.ai, popl.co +3 |
| Cloudflare | Edge, CDN & Security | 6 | 7 | 5 / 2 | assemblyai.com, cosmicjs.com, feroot.com +3 |
| FlutterFlow | No-Code / App Builder | 6 | 7 | 5 / 2 | draftbit.com, glideapps.com, jetadmin.io +3 |
| LinkedIn Sales Navigator | Sales Prospecting | 6 | 7 | 5 / 2 | miniloop.ai, plai.io, trellus.ai +3 |
| Twilio | Communications APIs (CPaaS) | 5 | 85 | 61 / 24 | bird.com, courier.com, plivo.com +2 |
| ADP | Payroll & HCM | 5 | 29 | 23 / 6 | checkr.com, deel.com, getontop.com +2 |
| Airtable | Connected Apps & Database | 5 | 20 | 10 / 10 | glideapps.com, jetadmin.io, noloco.io +2 |
| Replit | Cloud IDE & AI App Builder | 5 | 9 | 8 / 1 | draftbit.com, glideapps.com, retool.com +2 |
| Webflow | Visual CMS & Web Platform | 5 | 8 | 7 / 1 | cosmicjs.com, taskade.com, webiny.com +2 |
| Vanta | Compliance & Trust Center | 5 | 6 | 5 / 1 | feroot.com, rippling.com, skypher.co +2 |
| Vercel | Frontend Cloud & AI Gateway | 5 | 5 | 4 / 1 | assemblyai.com, fly.io, jetadmin.io +2 |
| Zoho CRM | CRM & Office Suite | 5 | 5 | 5 / 0 | chatwoot.com, close.com, getswipe.in +2 |
| QuickBooks | SMB Accounting & Payroll | 4 | 29 | 25 / 4 | finlens.app, hotglue.com, liveflow.com +1 |
| Vonage | Communications APIs (CPaaS) | 4 | 25 | 12 / 13 | bird.com, courier.com, plivo.com +1 |
| MongoDB | Document Database | 4 | 17 | 14 / 3 | airbyte.com, influxdata.com, secoda.co +1 |
| ClickHouse | Analytical Database | 4 | 15 | 15 / 0 | airbyte.com, posthog.com, questdb.com +1 |
| WordPress | CMS | 4 | 12 | 10 / 2 | cosmicjs.com, miniloop.ai, taskade.com +1 |
| Oracle NetSuite | ERP & Financial Management | 4 | 10 | 4 / 6 | blixo.com, hypotenuse.ai, liveflow.com +1 |
| Zendesk | Customer Support & Ticketing | 4 | 6 | 5 / 1 | assembly.com, chatwoot.com, fivetran.com +1 |
Programmatic and single-publisher siege targets (20+ pages from 1-3 publishers)
Why raw page counts and publisher breadth diverge: 16 vendors appear on 20 to 52 comparison pages each despite being targeted by only one to three companies in the frame.
| Target vendor | Category | Attacking publishers | Total pages | 1-on-1 / 3rd-party | Publishing domains in frame |
|---|---|---|---|---|---|
| PagerDuty | Incident Management | 1 | 52 | 51 / 1 | rootly.com |
| Infobip | Communications APIs (CPaaS) | 2 | 45 | 33 / 12 | bird.com, courier.com |
| Sinch | Communications APIs (CPaaS) | 2 | 45 | 22 / 23 | bird.com, courier.com |
| Google Colab | Data Science Notebooks | 1 | 39 | 2 / 37 | deepnote.com |
| Qlik | Business Intelligence | 2 | 39 | 3 / 36 | airbyte.com, deepnote.com |
| Mailgun | Transactional Email API | 2 | 35 | 11 / 24 | bird.com, courier.com |
| Bandwidth | Communications APIs (CPaaS) | 2 | 34 | 22 / 12 | bird.com, courier.com |
| Plivo | Communications APIs (CPaaS) | 2 | 34 | 22 / 12 | bird.com, courier.com |
| Metabase | Business Intelligence | 3 | 26 | 8 / 18 | basedash.com, explo.co, whaly.io |
| Twilio SendGrid | Transactional Email API | 3 | 26 | 13 / 13 | bird.com, courier.com, usewaypoint.com |
| Omni | Business Intelligence | 2 | 24 | 5 / 19 | basedash.com, getdot.ai |
| OneSignal | Push & Customer Messaging | 1 | 24 | 1 / 23 | courier.com |
| ThoughtSpot | Search & AI Analytics | 3 | 24 | 5 / 19 | basedash.com, explo.co, getdot.ai |
| Lightdash | dbt-Native BI | 2 | 23 | 4 / 19 | basedash.com, getdot.ai |
| Explo | Embedded Analytics | 1 | 22 | 4 / 18 | basedash.com |
| Atlassian Opsgenie | Incident Alerting | 1 | 21 | 20 / 1 | rootly.com |
classified.json. Eleven single-word dictionary tokens that collided with ordinary English or technical terms in page titles (runtime, vibe, books, signals, panels, async, expectations, sharpe, replicas, traces, computing) were removed from the named tables.What it means, by audience
The band you are in sets the expectation
At 51-200 or 200+ employees, 36.9% and 51.2% of your peers publish comparisons, so a buyer's shortlist increasingly contains rivals who do. Below 50 employees, publishing is a minority position (24.0-27.4%) and an option rather than a norm.
Plan a library on structured URLs
The benchmark for a serious program is 20 pages (P90 of publishers), and 74.3% of real comparison pages sit on permanent paths. Write to 3-page depth first (3 = median, 8 = P75), then extend toward the shortlist terms buyers actually type.
Absence is the normal signal
331 of 479 companies (69.1%) publish no comparison page at all, at every size. Treat a vendor's comparison library as a sign of category maturity, not as evidence that other vendors without one are hiding - and 34.5% of pages compare vendors that are both third parties, so read them as editorial too.
Do not count URLs; classify titles
77.0% of candidates were concept articles. Any method built on "-vs-" URL patterns would report numbers several times too high. Read the methodology before replicating the design.
How to act on it
- Size your ambition against the benchmark, not against competitor noise. If you are under 50 employees, 24.0-27.4% of peers publish comparison pages: a focused set beats a full library. At 51+, 36.9%+ do, and the buyer's shortlist increasingly assumes rival names exist.
- Build on structured paths. 74.3% of real comparison pages live on /compare/, /alternatives/ or /vs/ URLs. Put comparison content behind navigable, permanent URLs rather than dated blog slugs - it is how publishers keep them maintained.
- Commit to depth or don't start. Among publishers, P75 is 8 pages and P90 is 20. 13 of 479 companies went past twenty pages. Single-page efforts cluster at the bottom of the publisher distribution; plan the set of terms you will cover before publishing the first one.
Methodology
Pipeline
Candidate classification
- Vendor-vs-vendor comparison168319.3%
- Concept article or other671177.0%
- Generic "vs competitors"1071.2%
- Not a comparison candidate2162.5%
Design
Cross-sectional crawl of 479 B2B software companies, October 2026. Candidate URLs discovered from every company's homepage links and sitemap, filtered by comparison pattern (/-vs-/, /compare/, /alternatives/, /versus/, -alternative-to). Every candidate was fetched and its page title classified against a curated vendor dictionary (1948 entries, built from the frame, the YC pool and a disclosed manual list). Classification requires a comparison marker AND a named vendor that is not the publisher's own brand and not an ordinary English word.
Definitions
- Candidate URL
- A URL matching a comparison pattern, discovered from homepage links or sitemaps. 8,717 fetched; 49 fetch failures excluded from classification.
- Vendor comparison
- A candidate whose title names a known vendor other than the publisher: the page compares actual products.
- Publisher
- A company from the frame with at least one vendor comparison. 148 companies.
- Target
- A vendor named in a comparison page. 213 distinct across 1,854 mentions.
- Contested pair
- A vendor pair compared by two or more different publishers. 216 of 496 pairs.
Accuracy
| Check | Sample | Result | Meaning |
|---|---|---|---|
| Precision | 52 | 0.889 (16 of 18) | One of the two false positives was itself a label error; effective precision is higher |
| Recall | 52 | 0.727 | Bounded by the curated vendor dictionary; misses are vendors not on the list |
| Independent double-code | 0 | not run | Open - single reviewer so far |
Uncertainty
Confidence intervals are Wilson intervals on sample proportions; segment gaps tested with two-sided permutation tests (5,000 shuffles). These cover sampling error within this frame only - not classification error, and not the frame's selection bias.
Reproduce
Downloadable tables: publishers.csv (aggregate metrics), named-targets.csv (verified target vendors), and top-publishers.csv (all 148 publishing companies).
Disclosure and corrections
DataDab sells AI-visibility work and paid inclusion in its research pages. A research mention costs $400-$1,200. Payment does not change a figure in this study. DataDab is not part of the measured set. Corrections are published on the page; send factual corrections with the URL to amit@datadab.com.
python3 scripts/research/s3_discover_all.py # discover candidate URLs across the frame
python3 scripts/research/s3_fetch_parallel.py # fetch titles for every candidate
python3 scripts/research/s3_graph.py # classify and aggregate
python3 scripts/research/build_s3_page.py # rebuild this page
Covering this research? Please link the primary source so readers can verify the data and methodology:
Markdown: [B2B SaaS Comparison Page Map 2026 by DataDab](https://www.datadab.com/research/saas-comparison-page-map/)
Disclosure: DataDab sells AI-visibility work and paid inclusion in its research pages. A research mention costs $400-$1,200. Payment does not change a figure in this study. DataDab is not part of the measured set. Corrections are published on the page (amit@datadab.com).
What this study does not show
- Full target coverage. Recall 0.727 on the pilot; vendors outside the curated dictionary are invisible as targets.
- Unlinked pages. Discovery reads homepage links and sitemaps; JavaScript-only navigation is missed. 49 fetch failures are excluded, not classified.
- Quality or effect. Pages are counted, not read for accuracy; no traffic, ranking or revenue effect is claimed.
- Market-wide claims. YC-backed companies only; single reviewer; no independent double-coding yet.