Sizing and locating companies
Filter companies by headcount with any range you need, and by headquarters location down to city level — both fully supported on company search and combined search.
Sizing and locating companies
Two company filters do more than they advertise. Company size accepts arbitrary ranges, not just preset bands, and headquarters location accepts city-level search with a radius, plus metros, polygons and custom circles. This page shows how to express both, including the boundary rules that trip up integrations.
Size companies by headcount
employeeCountV2 takes one range with two bounds, and both bounds are
any non-negative integer, so you're not limited to preset bands:
{ "employeeCountV2": { "lowerBoundExclusive": 0, "upperBoundInclusive": 60 } }The lower bound is exclusive (except 0, which is inclusive). The range
above covers companies reporting up to 60 employees. But
{ "lowerBoundExclusive": 10, "upperBoundInclusive": 50 } is really
11–50: a company with exactly 10 employees doesn't match. If a bound
matters to your definition, subtract one (or use 0).
The upper bound is inclusive. The upper bound must be greater than the
lower bound; inverted bounds return a 400 telling you so.
Preset bands (1–10, 11–50, 51–200, …) are just ranges expressed at these boundaries. Use them when they match your definition; use arbitrary bounds when they don't; "under 60 employees" doesn't need two searches or a rounded band. One range per request; for a second range, run a second search and merge.
Targeting small companies? Size by headcount, not revenue. A revenue
filter only matches companies that have a revenue figure, and many small
and private companies don't have one, so so a "under $5M revenue" search
returns a small share of the companies that actually qualify. The same
audience by employeeCountV2 returns far more of them. See
company size and revenue.
Locate companies
headquartersLocation draws one or more regions and matches companies
headquartered inside them. Regions come from four strategies, combined
freely:
| Strategy | Use it for | Shape |
|---|---|---|
free-form-city | City-level search by name | A city name, neighborhood or ZIP plus a radius |
radial-distance | A circle around exact coordinates | { latitude, longitude } plus a radius |
preset-region | Well-known metros | A slug like sf-bay-area or greater-london |
polygon | Custom areas — countries, corridors, territories | 3+ coordinate pairs, closed |
The city recipe most people want:
{
"headquartersLocation": {
"unionAll": [
{
"strategy": "free-form-city",
"city": "Austin",
"countryCode": "USA",
"radius": { "unit": "miles", "quantity": 25 }
}
]
},
"employeeCountV2": { "lowerBoundExclusive": 0, "upperBoundInclusive": 60 }
}- Set a radius of 25–50 miles. Company headquarters are registered addresses, not commutes; radius 0 matches only companies inside the exact city limits, which drops most of a metro. 25–50 miles is the sweet spot for "companies in this city".
countryCodedisambiguates. "Springfield" exists in several countries; the code pins which one you mean.- Anything that resolves to a point works: neighborhoods ("Shoreditch") and ZIP codes ("94110") included. States, provinces and countries are areas, not points; use the dedicated country and state filters for those.
- For deterministic results, skip geocoding: resolve your city with the
location typeahead and pass the coordinates as
radial-distanceinstead. subtractAllcarves holes out: "within 500 miles of New York City but not within 20 miles of Philadelphia" is oneunionAllregion and onesubtractAllregion.
Related
- Getting accurate results from search — filter semantics and worked examples
- Typeaheads — resolve city and company names to exact values
- Search counts — exact vs estimated numbers
- Search — filters, ordering, pagination
Migrating from another data provider
Translation tables for the filter vocabularies that differ between providers (departments, seniority levels, job-title matching), so a search means the same thing here as it did there.
Natural-language search
Ask in plain English and get a matching list of companies or people — plus a clear list of anything the query could not apply.