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
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
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
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:
| Source | Credits | Use it when |
|---|---|---|
aiArk.searchCompanies | 0.01 per company | The default: readable filters and a free count |
FullEnrich.searchCompanies | 0 | Plain-string filters, up to 2,000 per run |
salesNavigator.searchAccounts | 0.2 per company | The list is defined by LinkedIn’s own filters (headcount bands, industry and geo IDs) |
Store Leads fetchDomains, into a model | 0.01 per store | Ecommerce: 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 #
Run aiArk.countCompanies with your industries, headcount range and countries. It returns the count and costs 0 credits, so you can try several filters before pulling anything.
50 credits on aiArk.searchCompanies at 0.01 per company, or 1,000 on salesNavigator.searchAccounts at 0.2. Enrichment comes after and is billed per company enriched.
Yes. The Store Leads connector fetches stores into a Cargo model, filtered by platform, installed apps, technologies, country and category, at 0.01 credits per store and up to 10 million per model.
Related: Find every portfolio company of an investor, Track funding rounds and find the companies that just raised.