LinkedIn Company Data Extraction: Turning Names Into Segments
Profile data tells you who someone is; company data tells you whether they fit. Collecting both and linking them on the company URL is what turns a list of names into a targetable segment — and company records decay too, so the firmographics need a refresh plan of their own.
Profile data answers 'who is this person?' Company data answers 'do they work somewhere worth targeting?' Most prospecting datasets have the first and neglect the second, which is why so many 'targeted' lists are really just piles of individuals with job titles — no way to filter by industry, by size, or by the firmographic signals that actually define an ICP.
This covers what to extract from LinkedIn company pages, how to link it to your people records so the two become one queryable dataset, and why firmographics need their own refresh cadence. As with profile extraction, the point is not a one-time scrape — it is building the firmographic half of a data system you run continuously.
1. What company pages give you
The reliably useful fields are company name, industry, employee size band, and the canonical company URL. These are the firmographic axes that drive B2B targeting. They are modest in number but high in leverage: together they let you answer whether a company sits inside your ICP, in the right size range, and in the right industry — the questions that turn a contact into a qualified contact.
| Field | Targeting use | Refresh sensitivity |
|---|---|---|
| Company name | Account identification, personalization | Changes on rebrand / acquisition |
| Industry | Vertical segmentation | Stable, shifts on repositioning |
| Employee size band | SMB vs mid-market vs enterprise filter | Moves as the company grows |
| Company URL | The join key to people records | Effectively permanent |
What company pages do not give you is as important as what they do. Private revenue, internal org structure, and unpublished headcount are not on the page, and no extraction pulls them. Public firmographic context is the honest scope — enough to segment well, and nothing claimed that is not actually there. A vendor promising exact revenue 'from LinkedIn' is describing a different data source than the one the page actually exposes.
One nuance worth internalizing: the employee size field is a band, not a precise count ('51-200,' '1,001-5,000'). That is fine for targeting — ICPs are almost always defined in ranges anyway — but it means your segmentation logic should reason in bands, not try to treat the figure as an exact headcount. Building filters that expect a precise number against a field that reports a range is a common self-inflicted wound.
2. Link it to your people data: the join that creates segments
Company data is most valuable when it is joined to profile data, not held beside it. The mechanism is a shared key. If every profile record carries its company URL, and every company record is keyed on that same URL, you can attach each company's firmographics to every person who works there.
That join is what upgrades a query from 'VP-level contacts' to 'VP-level contacts at 51-200-person fintech companies.' The first is a title filter; the second is a segment. The difference in campaign relevance is enormous, and it costs nothing extra to build — you simply capture the company URL on both sides and let the key do the work. Skip it, and you are left re-deriving company context by hand every time a campaign needs tighter targeting, which is slow, inconsistent, and exactly the manual work the dataset was supposed to eliminate.
This is also where normalization pays off twice. Industry labels and size bands only segment cleanly if they are standardized on ingest; otherwise 'Financial Services,' 'Fintech,' and 'Finance' fragment what should be one segment. Fold them into a consistent taxonomy as the record enters the store, the same way you normalize titles on the people side.
3. What the joined dataset lets you ask
The practical output of the join is a set of segments you can actually campaign against. A few examples of what the people-plus-company dataset answers, none of which a title-only list can:
| Target segment | People-side filter | Company-side filter |
|---|---|---|
| Mid-market SaaS buyers | Director+ in Marketing | Software, 201-500 employees |
| Early-stage founders | Founder / CEO title | 11-50 employees |
| Enterprise IT decision-makers | VP+ in IT / Engineering | 1,000+ employees, target verticals |
| Regional expansion targets | Any ICP title | Industry match, specific geo |
Each of these is a segment because it combines a role signal with a firmographic one. Without the company join, you can approximate the first half and guess at the second — which is how 'targeted' lists end up full of right-title, wrong-company contacts that waste campaign spend and drag down reply rates.
4. Deduplicate companies too
People records are not the only ones that duplicate. The same company can surface under slightly different names across searches, and if each variant becomes its own company record, your segments fragment — 'Acme Inc.' and 'Acme, Inc.' split one account into two, and a size filter counts it twice. Dedupe companies on the canonical company URL, the same way you dedupe people on the profile URL. One company, one record, one set of firmographics that every employee record points to.
Getting this right also protects account-based workflows. If a sales team runs ABM against a target account and that account exists as three slightly different company records, coverage looks patchy and reporting lies. A single deduplicated company record keeps the account view honest.
5. Firmographics decay too
It is tempting to treat company data as stable — companies move slower than people, after all. But they do move: they rebrand, get acquired, and grow across size bands. A size filter that was accurate last year quietly misclassifies a company that jumped from 180 to 260 employees. Industry labels shift when a company repositions. The B2B-wide decay rate of roughly 2.1% per month, compounding toward 22-30% a year [1], is driven mostly by people-side churn, but in high-turnover sectors the combined rate climbs much higher [2], and the firmographic layer is not immune.
And the two decays compound. When a person changes jobs, both their profile record and the company link go stale at once — the old company is no longer where they are, and the firmographics attached to them are now wrong. Given that US median tenure is 3.9 years with about a quarter of workers changing jobs annually [3], the people-to-company link is one of the most fragile parts of any dataset. A refresh plan has to cover both sides.
6. A refresh cadence for the company layer
The same priority logic applies: re-collect on a cadence for the companies that matter most, keyed on the company URL, so firmographic segments stay accurate instead of drifting. High-value target accounts and fast-growing companies (the ones most likely to cross a size band) earn a faster cadence; long-tail companies you rarely work can wait. Because the refresh is keyed on the stable company URL, re-collection updates the firmographics in place rather than creating a duplicate company record that fragments your segments.
A practical pattern: segment companies by value and volatility, assign each segment a cadence, and let refresh run as a rolling background process. Your segments then reflect what the companies currently are, not what they were when you first built the list — which is the whole point of attaching firmographics in the first place.
There is a second-order benefit to refreshing the company layer: you catch structural events that invalidate whole swaths of a list at once. An acquisition that folds a target company into a parent, a rebrand that changes the name your reps search for, a growth spurt that pushes a company out of your SMB segment and into mid-market — these are not single-record changes, they shift how an entire cluster of contacts should be treated. A company-layer refresh surfaces them; a people-only refresh misses them entirely.
7. Where this sits in the system
Company extraction is the firmographic collection layer, and it only delivers value when it is joined to the people layer and kept current. Scrapoint collects public company-page data — name, industry, size band, company URL — into the same normalized schema as its profile data, deduplicated and joinable on the company URL, stored in a searchable Data Vault, and exportable to CSV, JSON, Excel, or your CRM, all under your own LinkedIn session and IP. It refreshes firmographics through re-collection on the stable key; it does not pull private revenue or unpublished internal data, and it does not find personal emails or phone numbers. The result is a dataset where every person carries current company context — the foundation of targeting that is a segment, not a guess.