LinkedIn Company Page Mapper - Followers for Clay
Pricing
from $2.80 / 1,000 company checkeds
LinkedIn Company Page Mapper - Followers for Clay
Resolves a company domain to its LinkedIn company page and returns the exact follower count plus industry, company size band, headquarters and founded year from the public page. Flat, Clay ready, one row per company.
Pricing
from $2.80 / 1,000 company checkeds
Rating
0.0
(0)
Developer
Mamba Labs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
🔎 What can LinkedIn Company Page Mapper do?
Give it a company domain and it returns that company's LinkedIn company page URL, its exact follower count, and the firmographics LinkedIn publishes on the public page: industry, company size band, headquarters and founded year.
💡 Why use LinkedIn Company Page Mapper?
The follower count is exact. LinkedIn renders every digit, so this is one of only four surfaces in the Mamba Labs social program whose numbers can be summed across a target list. Instagram, TikTok, YouTube, Threads and Facebook all round.
It refuses to report the wrong company. This is the real engineering problem on LinkedIn, and it is not extraction. A guessed slug frequently resolves to a page that is completely real and belongs to somebody else: measured on 2026-08-21, a guess for notion.com landed on a live page with 879 followers and one for gitlab.com on a page with 3,167. A size check cannot catch that, because the page is normal. Only a name match can. When the name does not match, this actor reports identity_mismatch and returns no count rather than publishing a stranger's numbers under your domain.
It starts from a domain. LinkedIn tools take a company URL or a name. If you hold a list of domains, the URL is what you are missing.
🧭 What is reachable logged out, and what is not
Everything here comes from the public page a logged out visitor sees. No login, no session cookie, no data vendor.
Reachable: company page URL, exact follower count, page name, tagline, industry, company size band, headquarters, founded year, specialties, linked website.
Not reachable, and no logged out tool gets these: employee lists, employee growth over time, post engagement, who follows the page, page admins, or anything else behind a session.
That ceiling is stated up front rather than discovered from empty columns. Any tool claiming logged out access to the second list is holding a session cookie or paying a vendor.
📋 What data can LinkedIn Company Page Mapper extract?
| Field | Type | Meaning |
|---|---|---|
degraded | boolean | True when this row could not be produced normally, for example the company site was unreachable and no discovery could run. A degraded row is never charged. |
degradation_reason | string | null | Why the row is degraded, in plain words. Null on a normal row. |
company_domain | string | null | The company domain this row is about, normalized. Null when only a handle or a name was supplied. This is the join key across the whole Mamba Labs fleet. |
company_name | string | null | The company name as supplied or derived. Improves search accuracy and is what the identity gate matches against. |
linkedin_url | string | null | Canonical LinkedIn company page URL, or null when no trustworthy page was found. |
linkedin_slug | string | null | The company slug from the URL path. |
linkedin_followers | integer | null | Exact follower count. LinkedIn renders every digit, so unlike Instagram, TikTok, YouTube, Threads and Facebook this number is not rounded and can be summed across a list. |
linkedin_followers_exact | boolean | null | Always true when a count was returned. LinkedIn does not round. |
linkedin_page_name | string | null | The company name as it appears on the LinkedIn page. This is what the identity gate matches against, and a mismatch here is what stops a wrong company being reported. |
linkedin_tagline | string | null | The page tagline or description snippet. |
linkedin_industry | string | null | Industry as LinkedIn classifies it. Null when the page did not declare one or firmographics were turned off. |
linkedin_company_size | string | null | The headcount BAND the company declares, for example "10,001+ employees". A band and a string, never a number. Note this is NOT the "view all N employees" figure elsewhere on the page: that counts people who list this company on LinkedIn, which is a different fact. |
linkedin_headquarters | string | null | Headquarters locality where the page declares one. |
linkedin_founded_year | integer | null | Founding year where the page declares one. |
linkedin_specialties | string | null | The comma separated specialties list the company declares on its page. Useful as a free keyword source for personalization. |
linkedin_website | string | null | The website the LinkedIn page links to. When its host matches company_domain, that is independent proof the page belongs to this company. |
linkedin_discovery | string | null | How the page was found: input_handle, homepage_sameas, homepage_link, search or pattern_guess. |
linkedin_status | string | ok, not_found, not_extractable, blocked, identity_mismatch, auth_failed or skipped. identity_mismatch means a real LinkedIn page was reached and it belongs to a different company, which is a measured and common outcome on guessed slugs. |
run_date | string | ISO 8601 timestamp of this run. Social counts move, so a row without a date is a number with no shelf life. |
linkedin_company_size is a BAND and a string ("10,001+ employees"), never a number. LinkedIn also shows a "view all N employees" figure on the same page, and that is a DIFFERENT fact: it counts people who list this company on LinkedIn, not the size the company declares. This actor reads the declared band by its own label so the two are never confused. If you need a headcount number, the Company Firmographic Enricher joins on company_domain.
🛠️ How to find a company's LinkedIn page
- Put a company domain in
company_domain. - Add
company_namewhen you have it. It is what the identity gate matches a discovered page against, so supplying it directly reduces wrong matches. - If you already know the slug, put it in
handleto skip discovery. - Set
includeFirmographicstofalseif you only want the URL and the follower count. - For a list, pass an array of objects.
🧪 Using it in Clay
Add an Enrichment > Apify column, pick this actor, map company_domain.
Gate the column on your ICP filter first. LinkedIn is the most expensive fetch in this family because it needs residential routing, and there is no reason to spend it on accounts you have already disqualified.
💵 How much does it cost?
Pay per event. You are charged for output, never for input.
| Event | Fires when | Price |
|---|---|---|
company-checked | Once per company for which the discovery cascade completed and a non degraded row was produced, whether or not a LinkedIn profile was found. Does not fire on a degraded row, because on a degraded row no discovery was performed. | $0.0040 |
profile-resolved | Once per company whose candidate LinkedIn URL passed the identity gate. Fires on the validation work, not on a populated count. A candidate dropped as an impersonator does not charge: the work was done and the honest answer is that there is no such profile. | $0.0030 |
follower-count-extracted | Once per company where a numeric follower count was read off the public page. Does not fire on not_extractable, blocked, identity_mismatch or url only runs. | $0.0025 |
An identity_mismatch row charges company-checked and profile-resolved, because the work of finding and validating a candidate was performed and the answer is that it was not this company. It does not charge the extraction event, because no count is returned.
What the same coverage costs bought a la carte: harvestapi/linkedin-company charges $0.0040 per company and returns a richer firmographic record, and it accepts a company URL or a name rather than a domain. This actor is priced at parity on the extraction and adds the domain to page resolution step, which is the step a buyer holding a domain list is missing.
⌨️ Input
| Field | Type | Required | Meaning |
|---|---|---|---|
company_domain | string | no | Bare company domain, for example shopify.com. Supply this or a handle. With a domain the actor runs full discovery; with a handle it skips straight to the fetch. |
company_name | string | no | Optional. Improves search accuracy and is what the identity gate checks a discovered profile against, so supplying it reduces wrong matches. |
handle | string | no | Optional. The company slug from linkedin.com/company/ |
includeFollowerCounts | string | no | When "true" (default) the profile page is fetched and the counts are extracted. Set "false" to resolve the profile URL only, which is cheaper and needs no proxy. Sent as a string for Clay compatibility. |
skipCache | string | no | When "false" (default) a successful lookup is cached for seven days and reused. Set "true" to force a fresh fetch. Sent as a string for Clay compatibility. |
includeFirmographics | string | no | When "true" (default) industry, company size band, headquarters, founded year and website are parsed off the page alongside the follower count. Set "false" for the URL and follower count only. Sent as a string for Clay compatibility. |
{"company_domain": "shopify.com","company_name": "Shopify"}
📤 Output
One flat, snake_case row per company. No nested objects, so it drops straight into Clay, a spreadsheet or a warehouse table without a flattening step.
{"degraded": false,"degradation_reason": null,"company_domain": "shopify.com","company_name": "Shopify","linkedin_url": "https://www.linkedin.com/company/shopify","linkedin_slug": "shopify","linkedin_followers": 1103529,"linkedin_followers_exact": true,"linkedin_page_name": "Shopify","linkedin_tagline": "Making commerce better for everyone.","linkedin_industry": "Software Development","linkedin_company_size": "10,001+ employees","linkedin_headquarters": "Ottawa, ON","linkedin_specialties": "ecommerce, API, applications, customer service","linkedin_founded_year": 2006,"linkedin_website": "https://www.shopify.com","linkedin_discovery": "homepage_link","linkedin_status": "ok","run_date": "2026-08-22T09:00:00.000Z"}
false versus null, and why the difference matters
false means we looked and the answer is no. null means we could not look,
or the platform withheld it. They are never interchangeable in this output. If
you filter for companies with no presence on this platform, filter on false,
because null rows are unknown rather than absent and including them will
overstate your list.
💡 Tips
- Supply
company_name. On this platform specifically it is what stops a wrong page shipping. linkedin_websiteis a free confirmation. When its host equals yourcompany_domain, the page is provably the right one.- Filter out
pattern_guessrows if a wrong match would be expensive. It is the discovery route that produced both measured wrong pages. - The follower count is safe to sum. Very few social counts are.
⚠️ Known limits
- No employee data of any kind. No lists, no headcount number, no growth over time. LinkedIn serves none of it to a logged out visitor and this actor never holds a session.
- No post or engagement data. A previous Mamba Labs actor measured the logged out ceiling on this precisely: no reactor identities at all and roughly ten commenters per post. That ceiling is carried across here rather than re-tested.
- Company size is a band, not a number. The separate "view all N employees" figure on the page is a different measurement and is deliberately not reported as company size.
- Guessed slugs land on real wrong pages. That is why the identity gate exists and why
identity_mismatchis a status you will see. - LinkedIn blocks datacenter ranges, so this actor needs residential proxy to work at all. On the Apify platform that is enabled by default.
❓ FAQ
Does this need a LinkedIn login or cookie? No, and it never will. Holding a session burns accounts and it is not a product we will ship.
Why can I not get employee counts?
LinkedIn publishes a size BAND on the public page, not a number. linkedin_company_size gives you the band. For a real headcount figure, use the Company Firmographic Enricher, which joins on company_domain.
What is identity_mismatch?
We reached a real LinkedIn company page and its name does not match your company. Rather than report its follower count as yours, we report the mismatch. Two measured examples: guessed slugs for notion.com and gitlab.com both landed on real pages belonging to other companies.
Is the follower count exact? Yes. LinkedIn renders the full integer.
Can I pass a LinkedIn slug instead of a domain?
Yes, in handle.
🧩 Want other GTM data?
Mamba Labs builds a fleet of GTM enrichment actors that share one flat,
Clay-ready output convention, so their rows join on company_domain with no
cleaning step:
- Company Firmographic Enricher headcount, industry, location and revenue band from a domain, joins on
company_domain. - Domain to LinkedIn URL Resolver the company LinkedIn URL for domains where the social mapper found none.
- GTM Hiring Signal Scraper open go to market roles, which is the buying signal a follower count is a proxy for.
- Company Social Presence Mapper every platform in one row when you want breadth rather than depth on one network.
Full fleet: apify.com/mambalabs
🆘 Support
Issues, field requests and bug reports: open an issue on the actor's Issues tab. Mamba Labs reads every one.