How to calculate TAM, and act on it
One TAM calculation produces two numbers: a revenue ceiling that goes on a slide, and a roster of named accounts that goes on your calendar. This guide builds the second one, bottom-up, from a free government count, then puts it in an order you can work without burning it.
By Rahul Bageria, co-founder · Updated August 2026 · 21 min read
Written by operators who build target lists for seed-stage teams, not by a vendor selling you a database.
What TAM, SAM and SOM actually mean
Three rings, one calculation at three widths: everything you could ever sell, everything you could serve today, and everything you could realistically win this year.
Total addressable market is the annual revenue you would book if every company that could buy your category bought it from you, at your price. It is a ceiling, not a forecast.
Each ring is the one outside it, minus a filter you can name out loud:
Every company that could ever buy the category, from anyone. No filter yet for whether you could actually serve them.
What survives your product, your geography, your languages, your compliance posture and your pricing floor.
What you can win inside a stated window with the team you have. If it needs a hire you have not made, it is still SAM.
TAM, SAM and SOM are not three formulas. They are one count at three widths. If you cannot name the filter you removed to get from one ring to the next, you have three guesses, not three markets.
The two numbers a TAM calculation produces
One calculation, two outputs, and almost everything written about TAM is aimed at the first of them.
| Dimension | The slide TAM | The operating TAM |
|---|---|---|
| What it is | A dollar figure. | A roster of companies you can name. |
| Where it comes from | An analyst report, divided down. | A query against a real source, exported. |
| Who reads it | Investors, once. | You, every Monday. |
| What it decides | Whether the market sounds big enough. | Who gets contacted this quarter. |
| How it goes wrong | Too round for anyone to check. | Too wide, which means the filter is wrong. |
| The test | Nobody can falsify it. | You open the file and count the rows. |
A TAM is a count. An ICP is a definition. The count tells you how many companies sit inside your segment; the definition decides which companies belong in it at all. Get the definition wrong and the count comes out precise and useless.
Name your counting unit before you count
Firms, establishments, domains, legal entities, contacts: five different counts of the same market, and no two of them are comparable.
Your counting unit is what one row represents. Publish it next to every count, because a source counting locations returns a bigger number than one counting companies, and neither is wrong.
| Unit | What one row is | Where it comes from | What it does to your number |
|---|---|---|---|
| Firm | One company under common ownership | Census SUSB, national business registers | The honest account count. Start here. |
| Establishment | One physical location | The same sources, a different column | Inflates. 13,674 US software firms are 17,438 establishments. |
| Domain | One website | Data platforms and web crawls | Splits brands apart and merges subsidiaries together. |
| Legal entity | One registered company | Company registers | Inflates. Holding companies and dormant shells all count. |
| Contact | One person | Enrichment providers | Multiplies. A people count wearing a company count's label. |
Top-down TAM, and why it breaks
Top-down starts from somebody else's number for the whole category and divides down to a share you hope to hold.
Size the market yourself first, then see whether the published category number lands in the same order of magnitude. If it does, you probably have not fumbled a filter. Nobody should ever contact a list built this way.
- !Somebody else drew the category boundary, not you
- !The share percentage is chosen, never derived from anything
- !It returns a figure and not one contactable row
- !Round enough that no reader can ever check it
Bill Gurley made the case in Above the Crowd, 11 July 2014, after Aswath Damodaran valued Uber at $5.9 billion off a $100 billion taxi and limousine market and a 10% share cap. Using an industry's revenue as your ceiling assumes the future looks like the past. Hard numbers, in Gurley's phrase, give a false sense of security.
Bottom-up TAM, the method that produces a list
Bottom-up counts real companies one filter at a time, so what comes out is a file with rows in it rather than a figure.
Bill Aulet's Step 4 in Disciplined Entrepreneurship, second edition 2024, is the version worth learning: size the beachhead segment rather than the category, build the number from primary research, and publish a range instead of a point.
-
1
Write the segment as a filter
Name the beachhead you sell into this year in terms a query can execute: an activity code, a headcount band, a country.
Exact setting
NAICS 5112 (software publishers) + 20 to 499 employees + United States
Gotcha: A segment you cannot write as a filter is a positioning statement. It returns no rows, and nobody can check it.
-
2
Pick the source before the number
Take the free primary count for your geography first, then use a commercial database to name the companies inside it.
Exact setting
Census SUSB 2022, table: U.S. & states, 6-digit NAICS
Gotcha: A commercial database is a directory of what one vendor has indexed. It is not a census, and it has never claimed to be one.
-
3
Count the band, not the industry
Pull the firm count for every employee band, then keep only the bands you sell to. What you drop is usually most of the industry.
Exact setting
Under 20: 11,022 · 20 to 99: 1,588 · 100 to 499: 644 · 500+: 420
Gotcha: Firms and establishments are neighboring columns in the same table. Reading the wrong one adds a quarter to this market before you start.
-
4
Multiply by your own ACV
Use the average contract value you actually sign, not the one on the plan, and state the answer as a band.
Exact setting
firms in your bands × your signed ACV = your revenue ceiling
Gotcha: A TAM quoted to the dollar is a tell. Aulet's own worked example lands on a range and he calls it low.
The first count is always too big, and always for the same reason: somebody widened a filter to make the number look fundable. Run it at the real segment and at the widened one, and keep both. The gap is the honesty check.
A worked bottom-up count, with real numbers
An illustrative walkthrough on public figures, not a client result. Every count below is US Census SUSB. The contract value and the incumbent haircut are the reader's own inputs, shown here as illustrative numbers only.
Something a query can execute
Software publishers, NAICS 5112, headquartered in the United States, 20 to 499 employees. An activity code, a size band and a country: write yours in the same three parts, and every one of them is countable by someone other than you.
Take the whole-industry count first
The Statistics of U.S. Businesses, 2022 reference year, counts 13,674 software publisher firms across 17,438 establishments. Every statistics office publishes that line for its own country: the whole industry, at every size, before any filter of yours.
Most of an industry is too small
11,022 of those firms employ fewer than 20 people, and 420 employ 500 or more. If you sell to neither, 84% of the industry leaves your count before you have written a single line of copy.
Add up the bands you keep
1,588 firms at 20 to 99 employees and 644 at 100 to 499 add up to 2,232 you can name. That is your countable TAM: a number you can export, sort and work through, and every ranking page stops one step before it.
The ceiling, in dollars
Multiply by the contract value you actually sign. At an illustrative $24,000, 2,232 firms is a $53.6M ceiling. Put your own number in: the dollar figure is derived from the count, never the other way round.
What you can serve today
Take out what you cannot win this year. On an illustrative one third locked into multi-year incumbent contracts, about 1,500 accounts remain, worth about $36M. That is a SAM with a reason attached to it.
is the entire market for anything sold to software publishers of that size. Run the same two columns on your own national register.
US Census Bureau, Statistics of U.S. Businesses, 2022 reference year, released April 2025. Firms under common ownership, not establishments.
Counting the market and sourcing the records are two different jobs, and this guide only does the first. Sourcing and exporting the actual records is its own build.
Counting a market no database has indexed
Some markets are real and unindexed: no activity code fits them, and no vendor has a filter that returns them.
Aulet's answer is end-user density. Pick a unit somebody already counts, work out how many buyers sit inside one of them, and extrapolate. In his words, a clever choice of countable unit is what gives the estimate its credibility.
-
1
Pick a unit somebody already counts
Find a population that is published, dated and complete. It does not have to be your buyer. It has to contain your buyer at a steady rate.
Exact setting
association rosters · exhibitor lists · license registers · marketplace listings · live job posts
Gotcha: A unit that is easy to scrape and impossible to date is worse than no count. The publication date is the whole reason to trust it.
-
2
Open three real instances and count
Take three actual members, exhibitors or license holders, and count the buyers inside each one by hand.
Exact setting
3 instances · counted by hand · each stamped with the date you counted it
Gotcha: One instance is an anecdote and two is a coincidence. Three is the smallest number that shows you the spread.
-
3
Extrapolate, then publish a range
Apply the ratio to the whole population and state the answer as a band, wide enough to hold the spread you just measured.
Exact setting
lowest instance ratio × population, to highest instance ratio × population
-
4
Write down what would move the ratio
Name the two or three things that would change the density, and recount when one of them actually happens.
Exact setting
recount triggers: a new license class, a merged association, a marketplace policy change
Gotcha: A density count ages faster than a census count, because the ratio can move even when the population does not.
Where to get a free, primary count
The best count of your market is usually free, published by a statistical agency, and almost nobody in outbound has ever opened it.
Census SUSB, by code and size band
The Statistics of U.S. Businesses counts employer firms and establishments by six-digit NAICS code and employee band, down to state level. Employer businesses only: anything with no paid employees is counted in a separate program.
Eurostat structural business statistics
The EU's file carries the same two columns: enterprises by activity code and by size class, with the reference year printed on it. A different classification from the US one, the same method.
The national business register
Anywhere else, the count comes from your national statistics office or business register: enterprises by industry code and size class, free and dated. It is the denominator no vendor gets to inflate.
The license list, in regulated markets
If your buyers need a license, an authorization or an accreditation to trade, somebody maintains the complete list and usually publishes it. That register is a census of your market, already deduplicated and already dated.
When the database and the primary count disagree
They will disagree, usually by a lot, and the primary count is the referee rather than the loser.
Let the platform set the size
Our TAM is 41,000 companies. That is what the platform returned when we applied our filters.
- ✕A vendor's index is not a census
- ✕Self-reported codes inflate every band
- ✕Nobody can check the number, including you
Grade the platform against it
The primary count says 2,232 firms. The platform returns 3,900, so a lot of those rows are not firms.
- ✓The free count is the denominator
- ✓The gap tells you which filter is lying
- ✓You keep both numbers, and the reason
A count is only as good as the rows behind it, and completing and verifying every row is where most of the loss actually happens.
Filters that hold up in 2026, and filters that do not
A filter is only worth using if it describes something observable, and several of the ones outbound leans on stopped doing that.
| The filter | What it actually tells you | Our read, August 2026 |
|---|---|---|
| Headcount band | A count somebody publishes and you can check | Holds |
| HQ country | A registered address, stable and checkable | Holds |
| Funding stage with a date | A dated event, verifiable in public | Holds |
| Industry read from the company's own description | What the company says it does today | Holds |
| Self-reported NAICS or SIC inside a database | What somebody typed once, some years ago | Degraded |
| Revenue estimates on private companies | A vendor's model, presented as a field | Degraded |
| Job-title strings as a proxy for function | Title inflation and non-standard naming | Degraded |
| Technographic detection | That one named company runs one named tool | Order a list with it, never size one |
Technographics detect, they do not count. A filter tells you one company runs one tool, never what share of a segment does, because detection swings on whether the tool leaves a client-side footprint. Size a market that way and you are calling a crawler's reach demand. Order a list with technographics. Set its edges with a primary count.
The in-market slice: the count that runs your quarter
John Dawes at the Ehrenberg-Bass Institute, writing for the LinkedIn B2B Institute in 2021, framed it as the 95-5 rule: up to 95% of business buyers are not in market for your category at any one time.
Apply that to 1,500 serviceable accounts and about 75 are live this quarter. Two to three people inside each is 150 to 225 conversations. That is one quarter of work for one founder, and it started as a number nobody could act on.
Reachable accounts per quarter
Your real constraint is not the TAM, the SAM or your sending limit. It is how many accounts the people you actually have can work properly in a month.
What one account costs before you send
Fifteen minutes to read an account properly, find the angle and check it is still true. That alone caps one founder at roughly 150 accounts a month, before anybody has replied to anything.
Per segment, not per account
Write the angle once per segment and personalize only the first line per account. Anything more granular than that is what quietly collapses the arithmetic in week two.
Two to three people per account
A finite list is multithreadable, which is most of its advantage. Two to three named people per account is realistic. A full buying group is who you meet later, not who you open with.
The part nobody budgets for
Every account you open comes back for four to six weeks of follow-up. Capacity is not what you can start in a month. It is what you can still be handling three months later.
Divide the list by that monthly number and you have your calendar in months. 1,500 accounts at 150 a month is ten months, and it is better to decide that in week one than discover it in month nine. Hold 20 to 30% back as a reserve, so you still have untouched accounts when you finally learn something real.
Want your market counted properly, and kept alive?
Book a Fit CheckHow to sequence a finite list so you do not burn it
A finite list spends like cash, and the fastest way to destroy one is to send to all of it inside the same six weeks.
-
1
Tier by evidence, not by size
Rank the list by what you can observe about each account today, not by how much you would like the deal.
Exact setting
Tier 1: match + live signal · Tier 2: match, no signal · Tier 3: adjacent, held back
Gotcha: Tiering by company size is tiering by appetite. It tells you nothing about whether the account is ready to hear from you.
-
2
Set the monthly draw before the first send
Decide how many accounts leave the list each month, and hold 20 to 30% of it untouched from day one.
Exact setting
1,500 accounts · 150 worked per month · 300 held in reserve
Gotcha: The reserve is not spare capacity. It is the only fresh audience you will have when you finally learn something worth retesting.
-
3
Write the re-entry rule before you need it
Say now what puts a contacted account back into the queue, so that nobody has to improvise it in month four.
Exact setting
re-entry: a new signal fires, or 90 days after a no
Gotcha: An account never re-enters because the queue ran dry. That single decision is what turns a finite list into a burned one.
-
4
Change one variable per batch
When you genuinely cannot tell which tier deserves the next month, run the slices against each other in controlled batches instead of guessing.
Exact setting
one variable per batch: the segment, the angle, or the channel. Never two.
Gotcha: Two changes in one batch is two months spent learning nothing, on accounts you do not get back.
The fastest way to decide a market is dead is to work all of it at once. A list asked one question, in one voice, inside six weeks has not told you the market is dead. Only that the question does not land.
What exhausting a TAM actually looks like
Exhaustion is not a feeling. It is a sequence, and it is recognizable in week seven if you know the shape of it.
Everybody gets the same offer, and the queue drains at the speed of the sending tool rather than the speed of learning.
Reply rates fall while the copy has not changed. Nothing about the message got worse. The audience simply ran out.
The queue is empty. Nobody is left who has not already heard from you twice, in the same six weeks, about the same thing.
Somebody widens the filter, because widening a filter is the only thing that refills a queue inside an afternoon.
The widened list converts worse than the original, which is exactly what a filter that no longer describes a segment does.
It gets called market fatigue. It was a sequencing decision, taken in week one, before a single email went out.
When a small TAM is a feature, and when it is a kill signal
Almost everything written about market size assumes bigger is better, because it was written for a reader who is raising money rather than working a list.
You can name every account, so personalization is real work rather than a merge field, and multithreading is a finite job. References compound, because in a small market every logo is visible to the rest of it.
Account count times a realistic win rate times ACV does not clear your cost of sale. Or the accounts never renew, so you have to win the market twice. Or coverage is genuinely complete and the replies carry no pattern at all.
Geoffrey Moore, who wrote Crossing the Chasm, set the test out in a January 2024 interview: a segment should be big enough to matter, small enough to lead, and a good fit with your crown jewels. Two of those three are arguments for a smaller market, which is not how the fundraising literature reads them.
Where the common TAM advice is wrong
Most of what circulates about market size was written for a fundraising deck, and the three most repeated lines have no author behind them at all.
The fourth is checkable. One worked example that circulates in market-sizing posts puts US manufacturing at roughly 38,000 companies with 100 to 1,000 employees. Count every band above 100 employees in the same Census file and you get 16,569 firms. Borrow somebody's worked example and you inherit their error.
"You need a $1 billion TAM to raise, and if you just capture 1% of it you have a real company."
- ✕You need a $1B TAM to raise venture capital
- ✕Just capture 1% of the market
- ✕TAM times a 10% share times a 10x multiple
- ✕Borrow the worked example from a market-sizing post
"Count your real segment, name the accounts, and let the arithmetic on your own ACV decide whether it is a business."
- ✓No named study stands behind the $1B rule
- ✓1% is a placeholder for the absence of a plan
- ✓Three unsourced assumptions is not a formula
- ✓Every borrowed example we checked was inflated
Gurley's 2014 argument cuts the other way too: top-down sizing can come out too small, because a better experience and a lower price expand a market instead of dividing it. That is marketplace mechanics. Sold by seat to a countable set of registered companies, a market does not expand on a price cut. Take his critique, leave the optimism.
What to realistically expect from a TAM number
A TAM number is a boundary and a workload. It is not a forecast, and it has never closed anything on its own.
It draws the edges of your world, so you stop discovering accounts by accident. It converts a market into a workload you can put on a calendar. And it turns running out of list into a planned event rather than a surprise in month nine.
It will not tell you who to contact this week, whether the offer lands, or whether the segment was the right one to pick. Everything about order, timing and message sits outside the count, and no recount will hand it to you.
The count is a boundary. The signal is the order. Recount quarterly and refresh the rows continuously. If you would rather have the count built and kept alive for you, that is what our TAM enrichment add-on does.
Key takeaways
Five things to keep if you keep nothing else from this page.
- 1 If you cannot export it, you do not have a TAM.
- 2 Name the counting unit next to every number you publish.
- 3 The free government count grades the paid database, not the reverse.
- 4 About one in twenty serviceable accounts is live in any quarter.
- 5 Tier by evidence, hold a reserve, write the re-entry rule first.
Questions founders ask
How big does my TAM need to be?
What is the difference between TAM, SAM and SOM?
Should I calculate TAM top-down or bottom-up?
How do I count companies I cannot find in a database?
Which database gives the most accurate TAM count?
What if my TAM turns out to be small?
Can you exhaust your TAM?
Co-founder of Real Good GTM. He has been the first business hire and Chief of Staff at seed-stage B2B startups, building outbound pipeline before any playbook existed. He owns the systems and data side of the motion: the enrichment, the deliverability, and the integrations that make outbound actually land. This guide is the count that comes first.
Connect on LinkedInYou have the count. Now the order.
Three next steps: what decides who you contact first, which software actually holds your count, and whether to buy the list instead of building it.
Signal-based selling
The count sets the boundary. This is the guide to what sets the order: outbound built on an observed reason to reach out.
Read the guideBest B2B data tools
Which databases actually hold your count, what each one is good at, and where the coverage quietly stops.
Compare the toolsShould you buy a lead list?
The buy-versus-build question this guide deliberately does not answer, with the deliverability arithmetic behind it.
Read the postWant your real market counted, not estimated?
Book a fit check. We'll look at your ICP, where your count should actually come from, and how many accounts a quarter is realistic for the team you have. If the motion is wrong for your stage, we'll tell you that too.
Book a Fit CheckNo hard sell. No fake numbers. Real good work speaks for itself.