Skip to content

Company Enricher

Try for free

Turn company names, domains or profile links into firmographics: website, industry, HQ address, phone, founded year, employees, revenue, ownership, CEO, funding totals and a description. Optional leadership, social links, competitors, funding rounds and acquisitions at no extra charge. No login needed.

🏢 Company Enricher

Turn a list of company names, domains or profile links into clean firmographics: website, industry, HQ address, phone, founded year, employees, revenue, ownership, CEO, funding totals and a short description, one row per company. Every lookup reads the company's public Owler profile live, with no login and no API key. You pay $0.85 per 1,000 enriched companies, and companies that are not found are free.

✨ Why use Company Enricher?

  • 🔎 Names, domains or links: use whatever your list has. A domain gives the most exact match, and every row says how it was matched (matchType).
  • 🧾 One full record per company: legal name, website, industry and SIC codes, street address, phone, founded year, employee count and range, revenue and revenue range, ownership, ticker, CEO with title and LinkedIn, total funding, followers.
  • 🧩 Extra data at no extra charge: switch on the leadership team, social profiles, competitors (with their size and revenue), funding rounds with investors, and acquisitions. They come from the same page.
  • 🔗 Easy to join back: every row carries your original input, so you can match it to your CRM or spreadsheet.
  • 🆓 Misses are free and explained: a company with no profile comes back as a free row with matched: false and the reason.
  • ⚡ Fast: 10 lookups run in parallel by default; in our tests 1,232 companies took under 3 minutes and 9,954 companies about 22 minutes, with flat memory.

🎯 Use cases

  • 📇 CRM enrichment: fill in industry, size, revenue band, HQ and ownership for the accounts you already have.
  • 🎯 Lead scoring and routing: score a lead list by employees, revenueRange, industry and country, and route it to the right team.
  • 🗺️ Market mapping: start from a few companies, switch on competitors, and get the size and revenue of the companies they compete with.
  • 💼 Account research: a short profile, the CEO with LinkedIn, the latest funding rounds and acquisitions before a sales call.
  • 📊 Investor and M&A research: total funding, funding rounds with investors and recent acquisitions for a list of targets.

🚀 How to use

  1. Paste company names (one per line), domains or website addresses, or Owler company profile links. You can mix all three, or upload a .txt/.csv list of links.
  2. Optionally set Maximum companies and switch on the extra data you need (leadership, social profiles, competitors, funding and acquisitions).
  3. Click Start and wait for the run to finish.
  4. Export the results as JSON, CSV, Excel or HTML, or read them through the API.

📥 Input

FieldWhat it does
companyNamesCompany names, one per line. Matched through Owler's company search: an exact name match wins, then a name that starts the same way, then the top search result.
companyDomainsDomains or website addresses (shopify.com, https://www.hubspot.com/about). The profile whose main domain equals yours wins, then the parent domain (m.facebook.com → facebook.com), then the same brand under another ending (zalando.de → Zalando, matchType domain-similar). Anything else comes back as not found.
companyUrlsOwler company profile links (https://www.owler.com/company/stripe), used as given. Links to other websites are treated as domains.
maxResultsEnrich at most this many companies (links first, then domains, then names). Empty or 0 = every company.
includeUnmatchedOn (default): companies that are not found come back as free rows with an error. Off: they are left out.
includeLeadership / includeSocial / includeCompetitors / includeFundingExtra data from the same page, no extra charge.
maxConcurrencyCompanies looked up at the same time (default 10).
proxyConfigurationScrape.ly datacenter proxies by default.

companies, domains and urls are accepted as aliases of the three lists.

{
  "companyNames": ["Stripe", "Siemens", "Datadog"],
  "companyDomains": ["shopify.com"],
  "includeCompetitors": true
}

📤 Output

One row per company you asked for (an entry that appears twice in the same list is looked up once). Companies that are not found have matched: false and an error (and are free).

FieldDescription
input, inputType, matchTypeWhat you entered, whether it was a name, domain or url, and how the profile was matched (url, domain, domain-similar, name-exact, name-partial, top-suggestion)
url, owlerIdThe company profile the row was read from
name, legalName, website, domain, logoShort and legal name, website, main domain and logo
descriptionOne-paragraph company description
industry, industries, sicCodesIndustry sectors, the broader industry group and SIC codes
headquarters, address, phoneHQ as city, state, country; street address (street1, street2, city, state, country, zipcode); main phone number
yearFoundedFounding year
employees, employeesFormatted, employeesRangeEmployee count as a number and as text, and the size band
revenue, revenueFormatted, revenueRangeEstimated annual revenue in USD, as text, and the revenue band
ownership, companyStatus, ticker, exchangePublic or private, status (for example Independent Company), stock ticker and exchange for listed companies
ceoname, designation (title), rating (CEO approval, 0 to 100), photoUrl, linkedin, twitter
totalFunding, totalFundingFormatted, fundingRoundCountTotal funding raised and the number of funding rounds
totalCompetitors, totalAcquisitions, totalInvestments, followersHow many competitors, acquisitions and investments the profile lists, and its follower count
leadershipWith Leadership team: key executives with name, designation, photoUrl, linkedin, twitter
socialWith Social profiles: the company's own linkedin, twitter, facebook, instagram, youtube links
competitorsWith Competitors: each competitor's name, website, url, industry, headquarters, yearFounded, ownership, employees, employeesRange, revenue, revenueRange, totalFunding, ceo
fundingRounds, acquisitionsWith Funding rounds and acquisitions: round, date, amount, investors; acquired company name, date, amount, description, url
matched, error, scrapedAtWhether a profile was found, why not, and when the row was read

Example (Siemens, from a test run, extra data left out):

{
  "input": "Siemens",
  "inputType": "name",
  "matchType": "name-exact",
  "url": "https://www.owler.com/company/siemens",
  "owlerId": 126201,
  "name": "Siemens",
  "legalName": "Siemens AG",
  "website": "https://www.siemens.com/",
  "domain": "siemens.com",
  "description": "Siemens is a Germany-based holding company that owns and operates businesses in markets such as energy, financing, healthcare, and mobility.",
  "industry": "Industrial Software & Technology",
  "industries": ["Industrial Goods & Services"],
  "sicCodes": ["1731"],
  "headquarters": "Munich, Bavaria, DE",
  "address": {"street1": "Werner-von-Siemens-Strasse 1", "street2": null, "city": "Munich", "state": "Bavaria", "country": "DE", "zipcode": "80333"},
  "phone": "49-89-3803-5491",
  "yearFounded": 1847,
  "employees": 317000,
  "employeesFormatted": "317,000",
  "employeesRange": "100,000 - 9,999,999",
  "revenue": 97221983780,
  "revenueFormatted": "97.2B",
  "revenueRange": "$50B - 100B",
  "ownership": "Public",
  "companyStatus": "Independent Company",
  "ticker": "SIE",
  "exchange": "FRA",
  "ceo": {"name": "Roland Busch", "designation": "President & CEO", "rating": 88, "photoUrl": "https://image4.owler.com/ceo/Roland_Busch_owler_20230116_121401_original.png", "linkedin": "https://www.linkedin.com/in/buschroland/", "twitter": "https://twitter.com/BuschRo"},
  "totalFunding": 1508900000,
  "totalFundingFormatted": "1.5B",
  "fundingRoundCount": 3,
  "totalCompetitors": 24,
  "totalAcquisitions": 82,
  "totalInvestments": 63,
  "followers": 78132,
  "matched": true,
  "scrapedAt": "2026-11-13T02:31:59.134Z"
}

A company that is not found:

{"input": "nonexistent-domain-zzq.com", "inputType": "domain", "matched": false, "error": "no Owler company profile lists the domain nonexistent-domain-zzq.com", "url": null, "scrapedAt": "2026-11-13T02:31:58.950Z"}

💰 Pricing

  • $0.00085 per enriched company (company-record event), which is $0.85 per 1,000 companies.
  • Platform usage (compute and proxy) is included in that price.
  • Companies that are not found, or whose profile could not be read, are free.
  • The extra data (leadership, social profiles, competitors, funding, acquisitions) costs nothing extra.
  • Example: enriching a CRM export of 5,000 companies where 4,600 are found costs 4,600 x $0.00085 ≈ $3.91.

If you set a maximum charge for the run, the run stops cleanly when it is reached and keeps every company it already delivered.

❓ FAQ

Where does the data come from? From the public company profiles on owler.com, read live on every run. Names and domains are matched with Owler's own company search. Revenue and employee figures are the estimates the profile shows.

Do I need a login, an API key or my own proxy? No. The actor works without any account on the site and uses Scrape.ly datacenter proxies by default.

Name, domain or link: which should I use? A link is exact. A domain picks the profile whose main domain equals yours (or the same brand under another ending, marked domain-similar). A name picks the closest search match, so a common name (for example "Wise") can match a different company: check matchType, name and domain, or use the domain instead.

How many companies can I enrich? As many as you like: there is no limit on the list. Rows are saved as they come, about 7 to 8 companies per second at the default settings (9,954 companies took about 22 minutes in a test run). Lists of more than about 25,000 companies need a run timeout above the default hour.

Why is a field empty? The profile does not show it: smaller companies often have no street address, phone, CEO, funding or ticker. Empty fields are null.

Can I schedule it or use it through the API? Yes. Schedule runs in Scrape.ly, call the actor through the Scrape.ly API, or connect it to your automation tools; results can be exported as JSON, CSV or Excel.

Is it legal? The actor reads publicly accessible company profile pages. CEO and executive names, photos and social links are personal data in many countries: use them only with a lawful basis.

⚠️ Limits

  • The data is what the public profile shows. Revenue and employee counts are estimates, and profiles of small companies are often sparse.
  • Funding rounds and acquisitions list the most recent ones the public profile carries (up to 5 each in our tests). fundingRoundCount, totalAcquisitions and totalFunding always give the full totals.
  • Name matching uses search; a name shared by several companies can match the wrong one. Use domains or profile links for exact matches.
  • Contact details of employees (emails, direct phone numbers) are not included.
//From the blog\\

Latest articles

All articles

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes.

No credit card. No setup calls.