Company Domain Finder avatar

Company Domain Finder

Pricing

from $5.00 / 1,000 resolved domains

Go to Apify Store
Company Domain Finder

Company Domain Finder

Turn a bulk list of company names into their website domains, each with a confidence score. GDPR-clean (no personal data) and honest: an unsure lookup returns null and its alternatives, never a wrong domain.

Pricing

from $5.00 / 1,000 resolved domains

Rating

0.0

(0)

Developer

Lowland Data

Lowland Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 hours ago

Last modified

Share

You have a list of company names — event sign-ups, a conference exhibitor list, a column of messy CRM rows — and none of it is useful until each name has a website. The domain is the key that unlocks everything after it: the logo, the socials, the email pattern, the enrichment. Getting there by hand is an afternoon of typing names into a search bar.

This turns a list of company names into their domains, in bulk, and tells you how sure it is about each one. A well-known company resolves cleanly; an ambiguous or generic name comes back marked as such, with the alternatives it found, instead of a confident guess that sends your outreach to the wrong company. It never returns a domain it cannot stand behind — when it is not sure, it says so.

Every field it returns is about the company, not a person: a domain, a website, a confidence score. No personal names, no personal emails, no contact people — that is a deliberate, permanent property of the tool, the same GDPR-first line the rest of this account holds.

Live health record: lowlanddata.com/status/company-domain-finder - 30-day success rate and daily canary results, failures included. Full input/output reference: tool page.

Quick start (30 seconds)

  1. Paste your company names into companyNames, one per line.
  2. If they are all from one country, put its two-letter code in country (e.g. DE, FR, BE) — it makes European companies resolve far more reliably.
  3. Click Start. Each name comes back with a domain, a confidence score, a status, and any alternative domains it saw.

Filter your results to status = confirmed for the ones you can trust blindly, and eyeball the ambiguous and unconfirmed rows — they carry the alternatives so you can pick in a second.

What you can build with it

  • Prime a lead list before enrichment. You exported 500 company names from a conference app or Sales Navigator. Resolve them to domains here, then feed the domains into an email-finder or your CRM — the domain is the join key everything else needs.
  • Fill the blank "website" column in a CRM. Run the accounts with a missing domain through in one batch and write the confident matches straight back; review only the handful marked ambiguous.
  • Deduplicate a company list. Two rows that resolve to the same domain are the same company however differently their names were typed.
  • Resolve a European book of business. Set the country code and the national TLDs (colruyt.be, doctolib.fr) resolve where a US-centric tool guesses .com and misses.
  • Wire it into an automation. A Make/Zapier/n8n step, or an AI agent, that turns each new company name into a domain the moment it lands.

What you get

Each company name is one row:

{
"companyName": "Back Market",
"country": "FR",
"domain": "backmarket.com",
"website": "https://backmarket.com",
"confidence": 0.9,
"status": "confirmed",
"alternativeDomains": ["back-market.com"],
"matchedTitle": "Back Market - The refurbished tech marketplace",
"source": "dns-guess",
"checkedAt": "2026-09-25T10:00:00.000Z"
}

Field notes, so you know exactly how much to trust each row:

  • domain is the canonical registrable domain, or null when there is no confident match. Null is the honest answer: a wrong domain quietly poisons everything downstream, so this tool would rather return nothing than guess.
  • confidence is 0 to 1. 0.9 means the domain resolved and its own homepage confirmed the company name. 0.75 means the homepage loaded and the domain carries the name. 0.5 means the domain resolves and matches but the homepage could not be read to confirm it. 0 is a no-match.
  • status is confirmed, unconfirmed (resolves but unconfirmed homepage), ambiguous (more than one domain matches the name — alternativeDomains holds the rest), or no-match.
  • alternativeDomains are the other domains that matched the name. On an ambiguous or unconfirmed row, the right answer is usually in here.
  • matchedTitle is the homepage title that confirmed the match, kept as evidence.

How it resolves a name

It builds the likely domains from the name and a country-aware set of TLDs (.com first everywhere, then the national TLD for European companies), keeps the ones that actually resolve in DNS, and confirms each by reading its homepage and matching the company name — following redirects to the canonical site. When several domains match, it prefers the canonical one (.com over the national TLD over .io) and lists the rest as alternatives. A domain whose own site does not carry the company name is never returned, even if it resolves.

Well-known companies resolve very reliably. Ambiguous or very generic names (single common words, companies that trade under a different name than their domain) are where the confidence score and alternativeDomains earn their keep — read them rather than trusting the top row blindly.

What does a company domain lookup cost?

$5.00 per 1,000 resolved domains, and a name that comes back no-match is free — you pay only for answers, never for the misses. A run that resolves nothing costs the $0.00005 actor start and nothing else.

  • A 500-name list, ~85% resolving ≈ $2.15, once.
  • A daily 50-name feed from a form or CRM ≈ $0.19/month.

The price is all-inclusive: platform usage and DNS/homepage traffic are covered, there is no separate compute bill, and failed runs are free. The Apify free plan returns a 5-item sample per run, enough to see the output shape against your own list before scaling up.

Not technical? Let your AI assistant set it up

Copy this into ChatGPT, Claude or any AI assistant, fill in the one line, and follow the conversation:

Help me set up the "Company Domain Finder" actor on Apify
(https://apify.com/lowlanddata/company-domain-finder). Guide me one step at a time.
What I have: [E.G. "a spreadsheet column of 200 German company names I need
website domains for"]
Guide me to:
1. Create a free Apify account (apify.com), open the actor page, and paste my
company names into the companyNames field, one per line.
2. Set the country code if my list is all from one country (e.g. DE for Germany),
so European companies resolve more reliably.
3. Start a run, then export the results as CSV or Excel, or read them from the API
if I write code.
4. Explain the confidence and status columns so I know which rows I can trust
blindly and which to double-check.
5. If it works, remind me to leave a quick rating on the actor page and to report
anything wrong on its Issues tab.

Input

FieldDescription
companyNamesThe company names to resolve, one per line. A single name is a batch of one. Required.
countryOptional ISO 3166-1 alpha-2 code (e.g. DE, FR, BE, US) applied to every name. Biases the domain guesses toward that country's TLD.
maxItemsStop after this many names. Default 1000; free-plan runs are capped at 5.

Use it from your code

Run it synchronously and read the resolved domains straight back:

curl -X POST "https://api.apify.com/v2/acts/lowlanddata~company-domain-finder/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"companyNames": ["Adyen", "Personio"], "country": "DE"}'

Larger lists run better asynchronously: start the run, let the finished-run webhook fire, then fetch the dataset. Schedules, webhooks and the Make/Zapier/n8n integrations all apply. This is a standard Apify actor.

Use it with AI agents (MCP)

Through Apify's hosted MCP server, Claude, Cursor and other MCP-capable agents can call this as a tool: the agent hands over the company names and reads the domains back, no glue code involved.

Claude Code:

$claude mcp add apify --transport http "https://mcp.apify.com?actors=lowlanddata/company-domain-finder"

Cursor or Claude Desktop (add a custom connector / MCP server with this URL):

https://mcp.apify.com?actors=lowlanddata/company-domain-finder

Runs bill to the Apify account you sign in with. Per-client setup: Apify MCP docs.

Prompts that work once connected:

  • "Resolve these 40 company names to their website domains and flag any you're not sure about."
  • "Find the domain for 'Back Market', and if there's more than one candidate, show me the alternatives."

A company's domain, website and homepage title are public commercial information — this reads the public DNS and the public homepage of a business, nothing gated, nothing personal. No personal data enters the output by construction: there are no name, email or phone fields to fill, with or without any setting. Traffic is a handful of ordinary requests per name; no login, no CAPTCHA, nothing bypassed.

Is there a company name to domain API?

This is one. Send a list of names to run-sync-get-dataset-items and read the domains straight back as JSON, or run it on a schedule, or drive it as an MCP tool. It replaces the name-to-domain lookups that vanished when the old free autocomplete APIs moved behind enterprise products — same job, pay-per-result, no contract.

How accurate is it?

Well-known companies resolve very reliably; the honest limit is on ambiguous and generic names. Rather than paper over that with a single "98% accurate" number, every row carries its own confidence and status: a confirmed row was checked against the company's own homepage, and an uncertain one says so and hands you the alternatives. You decide the bar — trust confirmed blindly, glance at the rest — instead of trusting one average that hides the misses.

How do I enrich a whole list of companies?

Paste the whole list into companyNames (thousands is fine), set the country if they share one, and run it once. Export the dataset as CSV/Excel, or read it from the API, then join the domain column back onto your list on the company name. For a recurring feed — new form fills, new CRM rows — put it on a Schedule with a Make/Zapier/n8n or webhook step so each new name is resolved as it arrives.

FAQ

Why does it sometimes return null instead of a domain? Because it could not find a domain it is confident about. For a bulk pipeline a wrong domain is worse than a blank — it sends real outreach to the wrong company — so an uncertain lookup returns null, and where it can, the candidates it saw in alternativeDomains.

Does it return emails, phone numbers or contact people? No, and not via any setting. It resolves the company's domain and website only. Personal data is never collected — that is what makes the output safe to store and share.

What does ambiguous mean? More than one domain matched the name about equally (a .com and a national TLD, or a hyphenated variant). The primary is the best guess by canonical preference; alternativeDomains holds the others so you can pick in a glance.

Why is country worth setting? European companies frequently live on their national TLD (colruyt.be, doctolib.fr) and share generic names across countries. The country code guesses the right TLD and disambiguates.

Can I export the results to Excel? Yes: any dataset exports as Excel, CSV, JSON or XML from the Apify Console or API, the domain already in its own column.

How big a list can I send? Up to 100,000 names in one run. Each is an independent lookup, so a large list simply takes longer.

Why did I only get 5 results? The Apify free plan caps this actor at a 5-item sample. Any paid plan lifts the cap to your maxItems.

Can ChatGPT or Claude use it? Yes: connect it through Apify's MCP server (section above) and an agent can hand over the names and read the domains back in one conversation.

The company-identity family

This is the entry point of a family of small, composable, GDPR-clean enrichment tools — the domain is the key that unlocks the rest, and each sibling takes the domain this tool resolves and adds one organisation-level layer, never anything personal:

Troubleshooting

Failures are loud and named in the run's status message:

  • "Provide at least one company name." companyNames was empty; add at least one name.
  • "country must be an ISO 3166-1 alpha-2 code..." Use the two-letter code (DE, not Germany).
  • A row came back no-match you expected to resolve. Check the spelling and set the country; the alternativeDomains field often holds the domain it saw but could not confirm.
  • 5 results instead of your maxItems: the free-plan sample cap; a paid Apify plan removes it.

Support

Resolved a company wrong, or missing something you need? Open a report on the actor's Issues tab; this tool is actively maintained and reports get acted on.

If it earns its keep, a rating on this page takes ten seconds, helps the next buyer find the GDPR-clean option, and tells us which enrichment tool to build next.