Back to blog
8 min read

Market Mapping in 2027

By Kooperativa Engineering

Market Mapping in 2027

Market mapping is the practice of laying out the companies in a market, grouped by the attributes that matter to your decision, so you can see how large the market is, who the players are and where the gaps sit. For a B2B team it answers practical questions: which companies should we sell to, which should we partner with or acquire, and which segments have we not looked at yet.

A market map usually ends up as a slide. A slide is a photograph of one afternoon, and the market it shows keeps changing. For 2027 the more useful version is a map defined as a set of queries, so refreshing it means running them again and comparing the results.

Why a map made in January is out of date by April

Employment data shows how much churn sits underneath any market. In the fourth quarter of 2025, the US Bureau of Labor Statistics recorded gross job gains of 7.8 million at expanding and opening private-sector establishments and gross job losses of 7.2 million at contracting and closing ones, equal to 5.9% and 5.5% of private-sector employment in a single quarter. Opening establishments added 1.6 million jobs and closing ones removed 1.4 million.

New companies keep arriving too. The Census Bureau's Business Formation Statistics count about 535,000 seasonally adjusted new business applications in the United States in September 2026. Applications are not the same as operating businesses, and many never hire anyone. They still show that the list of possible players is not fixed.

Step 1: define the market as filters

Write the market down as attributes you can filter on: industry label, headquarters country, city and a headcount band. Each result of a company search carries its name, headcount, industries, founding year and headquarters, so the same request that defines the market also gives you the first view of it.

Define the market: software companies in the Netherlands, 50 to 500 staffbash
curl -X POST "https://kooperativa.io/api/v1/companies/search" \
  -H "Authorization: Bearer ik_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "industry": "Software Development",
    "country": "NL",
    "min_staff": 50,
    "max_staff": 500,
    "per_page": 50
  }'

Two details prevent empty results. Country takes a two-letter code, and a full country name returns nothing without an error. Industry must match a stored label exactly, and the company list uses a different industry taxonomy from the people search, so a label that works for one may not exist in the other.

Step 2: segment by size and read the totals

The response carries a total, so you can size a segment without paging through it. Request one result per page, change the headcount bounds, and record the total for each band. Both bounds are inclusive and either can be left out.

Size three headcount bands with one request eachbash
# Small, mid-sized and large segments of the same market
curl -X POST "https://kooperativa.io/api/v1/companies/search" \
  -H "Authorization: Bearer ik_live_..." -H "Content-Type: application/json" \
  -d '{"industry": "Software Development", "country": "NL", "min_staff": 11, "max_staff": 50, "per_page": 1}'

curl -X POST "https://kooperativa.io/api/v1/companies/search" \
  -H "Authorization: Bearer ik_live_..." -H "Content-Type: application/json" \
  -d '{"industry": "Software Development", "country": "NL", "min_staff": 51, "max_staff": 500, "per_page": 1}'

curl -X POST "https://kooperativa.io/api/v1/companies/search" \
  -H "Authorization: Bearer ik_live_..." -H "Content-Type: application/json" \
  -d '{"industry": "Software Development", "country": "NL", "min_staff": 501, "per_page": 1}'
# Read "total" from each response and store it with today's date.

Store the totals with the date. A segment that grows 15% in a quarter is telling you something, and a segment that shrinks is just as informative. The counts are the number of companies in the dataset that match, a proxy for market size with coverage limits, so use them to compare segments with each other and over time and avoid presenting them as a census.

Step 3: add the people layer to rank the accounts

A list of companies is not yet a plan. To rank them, add structure. The seniority breakdown for a company shows whether it has a leadership layer in the function you sell to, and the decision-makers endpoint lists the senior people at it. A company with 200 staff and no one above manager level in your target function is a different prospect from one with a named director.

Rank accounts by structurebash
curl "https://kooperativa.io/api/v1/company/headcount-by-seniority?company_id=2135371" \
  -H "Authorization: Bearer ik_live_..."

curl "https://kooperativa.io/api/v1/company/decision-makers?company_id=2135371&seniority=c-level,vp,director" \
  -H "Authorization: Bearer ik_live_..."

Step 4: keep the map alive

Re-run the segment queries monthly and diff the company lists against the last run: new entrants, companies that moved between bands and companies that dropped out of the filters. For the accounts at the top of your list, a monitor sends a signed webhook on events such as company.staff_changed, so a growth spurt reaches you when it happens. Both approaches replace the habit of rebuilding the slide each quarter.

What each step produces

The outputs are plain tables, so they load into a spreadsheet, a warehouse or a CRM.

StepOutputEndpoint
DefineCompany list with headcount, industry, headquartersPOST /companies/search
SegmentSegment sizes by headcount band, datedPOST /companies/search with per_page 1
RankSeniority structure and senior people per accountGET /company/headcount-by-seniority, /company/decision-makers
RefreshNew entrants and movers, event alertsRepeat searches, POST /monitors

Limits to state next to the map

Be open about three limits whenever you share a map. First, a company record carries headcount, industries, locations and founding year, and it does not carry revenue or funding, so a map cannot rank by either. Second, coverage is uneven: firms with an active professional presence are indexed more completely than small local businesses, and a headcount figure counts indexed profiles, not an audited total. Third, industry labels are self-reported or inferred, so two companies doing similar work can sit under different labels. Query several related labels to compensate.

Where this does not fit

A map built from company and people data suits software, services and other knowledge-heavy markets. It fits poorly for markets defined by physical locations, such as retail or hospitality, where store counts and footfall matter more. It also cannot tell you what customers want or what your competitors charge, which needs primary research.

Frequently asked questions

What is market mapping?

Market mapping is laying out the companies in a market, grouped by attributes such as industry, size and location, to see how large the market is, who the players are and where the gaps sit. It supports decisions about targeting, partnerships and expansion.

Can you give an example of a market map?

A team selling to Dutch software companies defines the market as industry Software Development, country NL, and 50 to 500 staff, then records the number of companies in each headcount band and ranks the accounts by whether they have senior people in the function it sells to.

What is the difference between market mapping and market sizing?

Market sizing estimates how large a market is, in companies or revenue. Market mapping also shows who is in it and how it divides into segments. The segment totals from a map feed a sizing estimate.

How often should a market map be updated?

Monthly re-runs of the segment queries catch new entrants and movers between size bands, and monitors on priority accounts send alerts between runs. A map shared as a one-off slide is out of date within a quarter.

Get started

Try Kooperativa

One API key. Person and company enrichment, structured search, and monitors under one flat license.

Keep reading

We use only cookies that are strictly necessary to run this site (staying signed in, and protecting forms from abuse). Our analytics tool doesn't use cookies or collect personal data. See our Privacy Policy for details.