Your GTM belongs in gitRegister
Blog

Build a TAM List by Industry, Headcount and Geography

16 Oct
6min read

To build a total addressable market (TAM) list for go-to-market, first count the market with Cargo’s aiArk.countCompanies, which is free, using your industries, headcount range and countries. Then pull the companies with aiArk.searchCompanies and the same filters, at 0.01 credits a company: 5,000 companies is 50 credits.

Counting first is the point. Every returned record is paid for, so the filter decides the bill, and a count lets you change the filter before it costs anything. The build-tam-list skill is this one-off job. To keep the list as a model in your workspace that other pipelines read, deploy the tam-building cookbook. To keep a scored target account list current after that, see keep a target account list updated.

The data behind it #

Cargo platform data, 90 days to Oct 16 2026: 2,454,228 company enrichment runs across 210 workspaces, and 91.6% returned a record. A TAM list is usually the first input to that step, so it pays to get the list right before enriching it.

Run it #

1. Install and sign in

shellscript
npm install -g @cargo-ai/cli
cargo-ai login --email you@company.com                 # sends a code
cargo-ai login --email you@company.com --code 123456   # creates the account on first use

No browser step, so a coding agent can run this itself. A new account starts with 100 free credits and no card, which pulls 10,000 companies.

2. Count the market, for free

shellscript
cargo-ai orchestration action execute \
  --action '{"kind":"connector","integrationSlug":"aiArk","actionSlug":"countCompanies"}' \
  --data '{
    "industry": {"industry_or": ["software development"]},
    "employeeSize": {"min_employee_count": 20, "max_employee_count": 500},
    "companyLocation": {"location_or": ["United States"]}
  }' \
  --wait-until-finished

It returns {"count": N} and costs 0 credits. Filters are nested groups, not a flat map. industry_or takes values from a fixed list; location_or takes a country, state or city. Other groups narrow it further: funding, annualRevenue, technologies, companyKeywords, foundedYear, and lookalikeDomains (up to 5 customer domains to find similar companies).

3. Pull the companies

shellscript
cargo-ai orchestration action execute \
  --action '{"kind":"connector","integrationSlug":"aiArk","actionSlug":"searchCompanies"}' \
  --data '{
    "industry": {"industry_or": ["software development"]},
    "employeeSize": {"min_employee_count": 20, "max_employee_count": 500},
    "companyLocation": {"location_or": ["United States"]},
    "limit": 100
  }' \
  --wait-until-finished

limit defaults to 10 and goes up to 2,000 per call. Start at 100, read the companies, then raise it.

What comes back #

Each company has name, domain, website, linkedin_url, industry, employee_count, founded_year, city, state, country and revenue (a band such as 1000000-5000000, not a point estimate).

Other sources for the same list #

From each action’s credit definition:

SourceCreditsUse it when
aiArk.searchCompanies0.01 per companyThe default: readable filters and a free count
FullEnrich.searchCompanies0Plain-string filters, up to 2,000 per run
salesNavigator.searchAccounts0.2 per companyThe list is defined by LinkedIn’s own filters (headcount bands, industry and geo IDs)
Store Leads fetchDomains, into a model0.01 per storeEcommerce: stores by platform, apps, technologies, country and category

Store Leads now pages a search to the end rather than stopping at a sample, so an ecommerce TAM can be pulled whole into a Cargo model: the limit goes up to 10 million, above the size of its catalogue (about 8 million domains). The default limit is 1,000, so a model does not pull the catalogue unless you raise it, and the preview fetches 10 stores without billing.

Keep it as a model, not a CSV #

A TAM exported to a spreadsheet starts going stale the day it is pulled. The tam-building cookbook deploys the same AI Ark filter as one model in your Cargo workspace, declared in TypeScript and deployed with cargo-ai project deploy, so scoring, enrichment and CRM sync read one list. It reads your ICP from the workspace context, counts each candidate filter before it bills, and stops at a report of what it found.

Frequently asked questions #

Related: Find every portfolio company of an investor, Track funding rounds and find the companies that just raised.

AurelienOct 16, 2026

Give your agents a runtime

Bring the agents you have.Start free, deploy in one command.