Company Enrichment by Domain: No API Key
Pricing
from $3.50 / 1,000 company profiles
Company Enrichment by Domain: No API Key
One domain in, one company profile out: name, description, industry, HQ city and country, LinkedIn company page, social links, tech stack, mail provider, SPF/DMARC and UK Companies House number and status. Batch input, $5 per 1,000 profiles.
Pricing
from $3.50 / 1,000 company profiles
Rating
0.0
(0)
Developer
Raffy
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Security
Limited permissionsShare
What does Company Profile by Domain do?
Company Profile by Domain turns a list of company domains into firmographic rows. Paste monzo.com, https://www.hubspot.com/pricing or sales@apify.com and get one row per company: company name, legal name, description, industry, founding year, HQ city and country, LinkedIn company page, social accounts, tech stack, mail provider, SPF/DMARC and, for UK companies, the Companies House number, status, SIC codes and registered office.
It works as a company enrichment API for CRMs, lead lists and AI agents: no API key, no login and no monthly plan. It reads the company's own homepage, public DNS, the public UK register and Wikidata over plain HTTP, so a domain takes about a second and a 1,000-domain batch costs $5.
It returns company data only. Founders, employees and contact people are never collected.
Use cases for this company enrichment API
- CRM and lead-list enrichment. Turn the domain column of a CRM export or a CSV into industry, HQ country, LinkedIn page and tech stack.
- Lead scoring and routing. Route accounts by country or industry, or score them by tech stack and mail provider.
- Sales prospecting by technology. Find which prospects run a given CMS, analytics tool or chat widget.
- KYB and supplier checks for UK companies. Confirm the company behind a website is
Activein Companies House before onboarding. - Email deliverability and security audits. See the mail provider, SPF and DMARC policy for every domain in a list.
- AI agents. One call with a domain returns a compact, self-describing company profile.
Use with AI agents
- Actor:
glasswing/company-profile-by-domain - README for LLMs:
https://apify.com/glasswing/company-profile-by-domain.md - MCP:
https://mcp.apify.com/?tools=glasswing/company-profile-by-domain - Minimal input:
{"startUrls": ["apify.com"]}returns one company row in a few seconds.
What data you get for every domain
| Field | Description |
|---|---|
domain | The company domain, lower-case, without www. |
status | ok (profile built, billed), not_found (domain does not exist, free) or error (no company could be identified, free) |
companyName | Company or brand name from the site, else the UK register or Wikidata |
legalName | Registered legal name (schema.org legalName or Companies House) |
description | Company description from the site (max 1,000 characters, e-mails and phone numbers redacted) |
industry | Sector label such as Software & IT, Financial services, Retail & e-commerce, Healthcare |
industrySource | uk-sic, schema.org, wikidata or keywords: how the industry was decided |
foundedYear | Founding or incorporation year |
employeeCount | Employee count when the site or Wikidata publishes one |
hqAddress, hqCity, hqRegion | Business address and HQ city/region |
hqCountry, hqCountryName | HQ country (ISO code and English name) |
hqSource | schema.org, companies-house, wikidata or tld |
logoUrl | Company logo URL |
linkedinUrl | LinkedIn company page linked from the site (never personal profiles) |
socialLinks | Company accounts: twitter, facebook, instagram, youtube, tiktok, github, crunchbase, wikipedia |
websiteUrl, websiteTitle, language | Final homepage URL, page title and language |
techStack | Wappalyzer-style fingerprints: CMS, frameworks, analytics, e-commerce, chat widgets, marketing and payment tools, server |
cms, cdn | Primary CMS/platform and the CDN in front of the site |
mailProvider, mxHosts | Mail provider from MX records (Google Workspace, Microsoft 365, Proofpoint, Mimecast, ...) |
spfPresent, dmarcPolicy, emailSecurity | SPF record and DMARC policy (none, quarantine, reject) |
ukCompanyNumber, ukCompanyStatus | Companies House number and status when the company is matched |
ukCompany | Company type, incorporation date, SIC codes, nature of business, registered office, matchedBy (number-on-site or name-search) and register URL |
wikidataId | Wikidata item used to fill gaps, when there is one |
warnings | Non-fatal problems, for example a homepage that answered HTTP 403 |
error | Why a row is not_found or error |
Result status (tri-state output)
Every domain gives exactly one row. ok rows are billed. A domain that does not exist in DNS is not_found; a domain whose website cannot be read and that no source can name is error, still with its mail provider and DMARC columns filled. Parked and for-sale domains (redirects to HugeDomains, Sedo, Dan, Afternic, GoDaddy and similar, "this domain is for sale" pages, placeholder pages whose only name is the domain itself) are also error rows, so a lead list full of dead domains costs nothing. All of these are free.
How to enrich company domains with this Actor
- Open the Actor and paste your domains into Company domains, one per line. URLs and work e-mail addresses work too.
- Leave Match UK companies in Companies House on if you want UK register data.
- Set Maximum results and click Start.
- Download the results as JSON, CSV or Excel, or read them from the API.
Input
{"startUrls": ["apify.com", "monzo.com", "hubspot.com"],"maxItems": 20,"includeUkRegistry": true}
API and agent callers can send the same list as domains. Duplicates are removed and www. is stripped.
Output
A real row from a run (trimmed):
{"domain": "monzo.com","status": "ok","scrapedAt": "2026-10-26T15:41:08.570Z","companyName": "Monzo Bank","legalName": "MONZO BANK LIMITED","description": "Making money work for everyone","industry": "Financial services","industrySource": "uk-sic","foundedYear": 2015,"hqAddress": "Broadwalk House, 5 Appold St, London, EC2A 2AG","hqCity": "London","hqCountry": "GB","hqCountryName": "United Kingdom","hqSource": "schema.org","logoUrl": "https://monzo.com/static/images/monzo-logo-stacked.svg","linkedinUrl": "https://www.linkedin.com/company/monzo-bank","socialLinks": {"twitter": "https://twitter.com/monzo","facebook": "https://www.facebook.com/monzobank","instagram": "https://www.instagram.com/monzo","youtube": "https://www.youtube.com/monzobank","wikipedia": "https://en.wikipedia.org/wiki/Monzo"},"websiteTitle": "Monzo | Open a Free Account","language": "en-GB","ukCompanyNumber": "09446231","ukCompanyStatus": "Active","ukCompany": {"companyNumber": "09446231","companyName": "MONZO BANK LIMITED","companyStatus": "Active","companyType": "Private limited Company","incorporationDate": "2015-02-18","sicCodes": ["64191","64999"],"natureOfBusiness": ["64191 - Banks","64999 - Financial intermediation not elsewhere classified"],"registeredOfficeAddress": "Broadwalk House, 5 Appold Street, London, England, EC2A 2AG","matchedBy": "number-on-site","registerUrl": "https://find-and-update.company-information.service.gov.uk/company/09446231"},"websiteUrl": "https://monzo.com/","techStack": {"cms": "Contentful","frameworks": ["Next.js","React"],"other": ["Amazon CloudFront"]},"cms": "Contentful","cdn": "Amazon CloudFront","mailProvider": "Google Workspace","mxHosts": ["aspmx.l.google.com","alt1.aspmx.l.google.com"],"spfPresent": true,"dmarcPolicy": "reject"}
How much does it cost to enrich a company domain?
Pay per result: $5 per 1,000 company profiles. Rows with status not_found or error are free. Compute, DNS and register lookups are included; no proxy is needed.
| Event | Price | Charged when |
|---|---|---|
apify-actor-start | $0.00005 | Once per run, when it starts. |
result | $0.005 | Each company profile saved with status ok. |
| Domains | Cost |
|---|---|
| 100 | $0.50 |
| 1,000 | $5.00 |
| 10,000 | $50.00 |
The Actor stops gracefully when your run's maximum charge is reached.
Integrations, exports and API access
Run it from the Apify API, the JavaScript or Python client, the Apify CLI or on a Schedule. Send the dataset to Google Sheets, Airtable, HubSpot, Make, n8n, Zapier or a webhook. AI agents can call it through the Apify MCP server.
Limitations
- Big consumer brands sometimes block datacenter visitors (HTTP 403). The Actor then fills name, HQ and industry from Wikidata when the domain has a Wikidata item; otherwise the row is a free
errorrow with the DNS and mail columns. - HQ city is only as good as what the company publishes: schema.org markup on its site, the UK registered office, or Wikidata. A
tldsource means the country comes from a country-code domain only. - Industry is a sector guess (about 20 labels), not a NAICS code.
uk-sicis the most reliable source,keywordsthe least. - Companies House matching uses the company number printed on the site, or an exact name match in the register search. It never guesses fuzzy matches, so some UK companies stay unmatched.
- No headcount ranges from LinkedIn, no revenue, no funding and no contact people.
- Results reflect the website and registers at the time of the run.
FAQ
Do I need an API key or an account with a data vendor? No. The Actor reads the company's public homepage, public DNS, the public Companies House register and Wikidata.
How fast is it? About one second per domain, ten domains in parallel.
Why did a domain come back as error? The website blocked the request or names no organisation, and no other source knew the company. You are not billed for it. The warnings column says what happened.
Does it return employees or contact e-mails? No, by design. It returns company-level data only; e-mail addresses and phone numbers in descriptions are redacted.
Can I enrich 10,000 domains? Yes. Paste them (or send them through the API) and set Maximum results to at least that number.
Can I use it from an AI agent or MCP client? Yes. It runs with no input, accepts plain domain strings and every row explains itself with status and error.
What if a site changes? Rows degrade to fewer filled columns or a free error row, never to made-up values. Report problems in the Issues tab with the run ID.
Related Actors
- Domain Intelligence Report - use it for a deep technical audit of a domain: DNS, TLS expiry, registrar, hosting and DKIM.
- Companies House Scraper - use it for full UK register data: filing history, accounts and confirmation deadlines.
- LinkedIn Company Scraper - use it to add LinkedIn industry, size and follower counts to the
linkedinUrlthis Actor finds. - LinkedIn Ad Library Scraper - use it to see which ads a company is running on LinkedIn.
- Google Maps Scraper - use it to build the list of local businesses and their websites to enrich here.
- ATS Jobs Scraper - use it to see which of your accounts are hiring.
- Website Screenshot API - use it to capture each company's homepage next to its profile.
If this Actor saved you time, a rating or a save helps others find it. Found a problem? Open an Issue, we reply within 24 h.
Legal and data-protection notice
This Actor extracts company-level information that companies publish about themselves on their own websites and in public DNS, plus public records from the UK Companies House register (Open Government Licence v3.0) and Wikidata (CC0). It does not collect founders, employees, officers, persons with significant control or contact people, it redacts e-mail addresses and phone numbers found in descriptions, and it does not log in or work around access controls. A small business's address can still be a home address, so your results could contain personal data. Personal data is protected by the UK GDPR, the EU GDPR and other regulations around the world. You should not process personal data unless you have a legitimate reason to do so. If you are unsure whether your reason is legitimate, consult your lawyers. You are responsible for complying with the terms of the websites you look up and with applicable law when using the extracted data.
This Actor is an independent tool and is not affiliated with, endorsed by or sponsored by Companies House, Wikidata, LinkedIn or any company whose domain you look up. All trademarks belong to their respective owners.