Here's a sentence I've heard from roughly a thousand marketers, founders, and sales leaders: "We can't know their revenue, they're private." And it's true in the strictest sense — a private company's ARR is not printed on their pricing page, and their CFO isn't going to return your LinkedIn message. But "we can't know" is almost always a lie we tell ourselves to skip the boring work. You can't get the exact number. You can get close enough to act on. The gap between those two things is the entire job of competitive intelligence.
Every competitor leaks their size in a dozen public places. Headcount. Open roles. Pricing tiers. Review volume. Job title distribution. Customer logos. None of these is revenue. But stack them the right way and they triangulate into a range that's usually within 30% of the real number — close enough to decide whether they're a threat, an equal, or a rounding error.
Why a Range Beats a Number
Before the method, a quick word on what you're after. Most people want a single crisp figure — "$18M ARR" — because it sounds like knowledge. It's actually worse than a range. A point estimate pretends to a precision you don't have, and it's fragile: change one assumption and the whole thing collapses. A range is honest and, more importantly, useful. "They're between $10M and $15M, growing fast" tells you everything you need for a board deck. "$11.7M" tells you nothing and is probably wrong.
So the goal is a defensible band, built from three or four independent signals. When they agree, you trust the band. When they violently disagree, that disagreement is itself a finding — it means one of your inputs is wrong, or the company's story doesn't match its footprint.
Signal One: Headcount Is the Anchor
Start with employees, because it's the hardest number to fake. A company can bury its pricing behind "contact us." It cannot hide a hundred LinkedIn profiles.
For B2B SaaS, the rule of thumb most analysts use is revenue per employee. Efficient public software companies run $250K–$400K per employee. Earlier-stage, sales-heavy startups run lower — $100K–$200K is common before Series C, and pre-revenue or barely-revenue shops can dip below $100K. The band you apply depends on their motion: a product-led tool with low-touch sales will sit at the high end; a services-heavy enterprise vendor will sit at the low end.
The math is crude but powerful. A competitor with 80 employees and a typical enterprise motion is plausibly doing $8M–$16M. A competitor with 300 employees is plausibly doing $30M+. You don't need a spreadsheet to feel the difference between "they're a peer" and "they outspend us four to one."
Where to get headcount: LinkedIn company page (the most reliable, though it lags by a few months), plus open roles on their careers page. Open roles are the forward-looking signal — a company that's hiring 30 people into a 90-person org is telegraphing a growth spurt before the revenue shows up. That's exactly the kind of leading indicator you'd catch from monitoring competitor hiring signals, and it changes your revenue-per-employee math before the headcount actually moves.
Signal Two: The Pricing Page Is a Calculator
Most people read a competitor's pricing page to see what they charge. Fine. The bigger prize is what the pricing page lets you derive.
Here's the trick: reverse the tiers. A competitor's plan structure is a map of their customer base. If they price Starter at $199/mo, Growth at $399/mo, and Pro at $799/mo, the mid-tier is where their typical customer lives — most SaaS revenue concentrates in the middle. If the Growth plan caps out at some number of seats or features, that cap tells you where their median account size lands, because pricing pages are engineered so the median customer has to stretch just slightly into the next tier.
Combine that with what you can observe about their customer count — logos on their homepage, review volume on G2 and Capterra, press mentions — and you can build a bottom-up revenue estimate: median contract value times number of customers. It won't be exact, but it gives you a second, independent band to check against the headcount math. If the pricing-page estimate says $20M and the headcount math says $8M, one of your assumptions is off — and figuring out which is worth an afternoon.
Tracking competitor pricing changes matters here for a second reason: when a competitor shifts tiers, raises the mid-tier ceiling, or adds a "custom" enterprise tier, they're telling you where their revenue is moving. A new enterprise tier is a signal that their median deal size is climbing. A new low-end tier is a signal they're chasing volume. Both change your estimate, and both are public.
Signal Three: Reviews Are a Denominator
Review counts are the most underused sizing input, because people read reviews for sentiment and miss the quantity signal entirely. G2 and Capterra don't publish revenue, but they do publish a proxy for customer count — and the ratio between the two is surprisingly stable.
A rule of thumb: only a small, consistent fraction of customers ever leave a public review — usually somewhere in the low single digits for B2B SaaS. So if a competitor has 400 G2 reviews, they don't have 400 customers; they likely have thousands. If they have 30 reviews, they don't have 3,000 customers. The count tells you the order of magnitude of their install base, which is exactly what you need to sanity-check the pricing-page estimate.
Rate of review growth is the bonus signal. A competitor adding 50 reviews a quarter is acquiring customers far faster than one adding 10. Review velocity is a lagging indicator of revenue growth, but a lagging indicator you can read for free, every quarter. This is the same muscle as mining G2 and Capterra reviews — you're just counting instead of coding.
Triangulate, Then Bound It
Now you have three bands: one from headcount, one from pricing, one from reviews. They'll never match exactly. That's fine. Plot them and look for overlap.
- They all point the same direction. You have a defensible estimate. Use the tightest overlapping range, write down your assumptions, and move on.
- One is a wild outlier. Great — that's a lead. If reviews imply thousands of customers but headcount implies a 15-person shop, either they've automated the hell out of everything (product-led, low revenue-per-employee) or their review count is inflated. Both are worth knowing.
- They're all over the place. Your assumptions about their motion are wrong. Revisit revenue-per-employee and median ACV. The number isn't the failure; the mismatch is the insight.
Document the assumptions. "I assumed $150K/employee because they're field-sales heavy" is a sentence that makes the estimate defensible in a meeting and lets you update it next quarter when the assumption shifts. Unstated assumptions are how estimates turn into folklore.
From Revenue to Market Share
Once you have revenue bands for your competitive set, market share is just arithmetic — but most teams never do it because they don't have a defensible denominator. You now do.
Total addressable market is the mushy number. The cleaner one is served market: the sum of revenue across the players actually competing for your buyer. Add up your band and every direct competitor's band, and you get a bottom-up estimate of the market as it exists today, not as some analyst's slide deck imagines it. Divide each player's revenue by that sum and you have share.
This is genuinely more useful than a TAM number from a research report, because it's built on things you observed, not a top-down "SaaS market is $300B, if we capture 0.01%..." fantasy. And it slots straight into the broader competitive landscape mapping exercise — revenue share is the most honest way to rank players, far better than "well, they have a lot of Twitter followers."
A private company's revenue isn't a secret. It's a range you haven't triangulated yet.
What to Actually Do With the Number
The estimate is only worth the decision it changes. Here's where it pays off:
- Funding and board decks. "Our two nearest competitors are each roughly $10–15M; we're at $4M and growing faster than both" is a claim you can defend. "We're winning" with no numbers is not.
- Hiring plans. If your closest rival is outspending you 3x on people, that's the real reason you're losing deals — and it tells you where to concentrate your own competitive metrics.
- Pricing moves. Knowing a competitor's revenue band tells you whether they can afford a price war. A $30M company can out-discount you for two years; a $3M company cannot.
- Build-vs-buy calls. "Should we compete with them head-on or buy them?" needs a sense of their scale. The band gives you that.
One caution, because it's the most common way this goes wrong: don't let the estimate calcify. Revenue bands expire. Re-run the headcount check monthly, the pricing check whenever their site changes, the review check quarterly. A competitor's size is a moving target, and the whole point of competitive intelligence is that you're the one tracking the movement — not discovering it six months late in a lost deal's post-mortem.
If this all sounds like a lot of manual arithmetic, that's because it is. But it's also the kind of repetitive, cross-referenced number-crunching that should be automated — pull the headcount, watch the pricing page, count the reviews, and flag the deltas. That's the gap between passive monitoring and actual intelligence: monitoring notices the pricing page changed; intelligence tells you what the change implies about their revenue, their share, and your next move.
Stop guessing your competitors' size. Get the signals triangulated for you — every week.
Get Your Free Sample ReportRivalSignal tracks your competitors' pricing, hiring, reviews, and product updates weekly and delivers one branded report. No setup, no commitment.