Dun & Bradstreet Scraper icon

Dun & Bradstreet Scraper

Scrape Dun & Bradstreet (dnb.com) business directory by company name, country, size, role or industry. Extract company profiles, revenue, employee…

Start using this actor on Apify ↗Need a custom scraper?Contact us ↗

Dun & Bradstreet Scraper at a glance

Dun & Bradstreet Scraper is a ready-to-run Apify actor from abotapi for collecting web data. Its documented output includes company, profile link, profileurl, encryptedduns and role, which you can export as JSON, CSV or Excel or read through the Apify API. It costs $2.00 per 1,000 results on the Apify Free plan and from $1.40 on paid plans, with smaller per-run or optional feature charges listed on Apify.

Runs on
Apify cloud: console, API, schedules and integrations
Data type
Other
Pricing
$2.00 per 1,000 results (Free plan), from $1.40 on paid plans
Output
Documented below · JSON, CSV, Excel
Inputs
18 options

Scrape Dun & Bradstreet (dnb.com) business directory by company name, country, size, role or industry. Extract company profiles, revenue, employee counts, key executives, principals, contact details and stock information. Ideal for B2B lead generation, company research and market intelligence.

What Dun & Bradstreet Scraper can do

  • The definitive firmographic source. Dun & Bradstreet maintains profiles on hundreds of millions of businesses with revenue, employee counts, corporate family roles and industry classification that most data providers resell.
  • Search the way you think. Type a company name keyword plus an optional country, employee size range and corporate role; the directory applies every filter before results come back.
  • Browse industries directly. Paste any directory industry page (country, region or city scoped) and the actor walks its listings page by page.
  • Rich company profiles. Each record can be enriched with formatted revenue, exact employee counts with reliability metadata, key principals, phone, website, stock exchange, Fortune-style rankings, corporate family and similar companies.
  • Recurring-run friendly. Incremental mode compares every scan against a saved baseline: unchanged companies are skipped, changed ones ship with the fields that moved, and disappeared companies can be reported.
  • Clean structured output. Flat records with stable IDs, ready for spreadsheets, CRM imports, or direct API consumption.

Choose what to collect

These inputs let you configure Dun & Bradstreet Scraper - Companies, Revenue & Contacts. Open the actor on Apify to enter your values and review the current options.

Supported input fields
InputWhat it controls
modestring · requiredSearch looks companies up by name with optional filters. Links mode walks any page the directory publishes: industry browse pages (with region or city), and company profile pages.

Choices: search, urls

queriesarrayOne or more company name keywords. Each keyword runs its own search; the record limit is shared between them.
countrystringTwo-letter country code the search is scoped to, for example us, gb, de, in, cn. Leave as us for the United States.
employeesMinintegerOptional lower bound on employee count, applied by the directory before results return.
employeesMaxintegerOptional upper bound on employee count, applied by the directory before results return.
companyRolestringOptional role in the corporate family tree. The directory only narrows its role counts, so this is applied to the collected results.

Choices: any, branch, parent, subsidiary

urlsarrayLinks mode: paste industry browse pages, region or city browse pages, company profile pages, or legacy listing links. Multi-URL, filter fields ignored, pagination walks forward.
Show 11 more inputs
More input fields
InputWhat it controls
fetchDetailsbooleanRead each company's profile page to add revenue, employee counts, principals, contacts, stock listing, corporate family and similar companies. Turning this off ships search rows only and costs less.
maxPagesintegerHow many result pages to walk per search or browse scope at most. Leave empty or 0 for no page limit: the record limit below is what stops a run. The directory serves the first 1,000 matches per scope.
maxItemsintegerMaximum company records to collect per run across all searches and links. 0 means unlimited.
resumeFromRunIdstringID of an unfinished run to pick up from: records already collected by that run are skipped and the walk continues where it stopped.
incrementalModebooleanCompare every scanned record against the saved baseline: unchanged companies are skipped (no cost), changed ones ship with changeType and changedFields, and records that disappeared can be reported as EXPIRED.
stateKeystringOptional name for the saved baseline. Use one key per recurring scope so scheduled runs compare like with like.
emitUnchangedbooleanIncremental mode: also push records whose data did not change (they keep changeType UNCHANGED and are charged as dataset rows).
emitExpiredbooleanIncremental mode: push an EXPIRED row for every baseline record missing from a complete scan. Skipped automatically when a run stopped early.
ignoreFieldsForChangesarrayField names change detection should disregard (yours are added to the built-in noise list, which already covers result position and run bookkeeping).
notionParentPageUrlstringOptional Notion page URL: each collected record becomes a child page under it.
maxNotifyListingsintegerCap on how many records a connector export carries.

Fields in the output

The documented dataset includes the fields below. Availability can depend on the source page and selected mode.

companyNameCompany (text)
urlProfile link (link)
profileUrlprofileUrl
encryptedDunsencryptedDuns
companyRoleRole (text)
industryNameIndustry (text)
salesRevenueFormattedRevenue (text)
addressStreetaddressStreet
addressCityCity (text)
addressRegionaddressRegion
addressPostalCodeaddressPostalCode
addressCountryCountry (text)
Show 48 more fields
countrycountry
tradeStyleNamestradeStyleNames
scopeKindscopeKind
scopescope
searchQuerysearchQuery
changeTypeChange (text)
firstSeenAtfirstSeenAt
lastSeenAtlastSeenAt
scrapedAtscrapedAt
revenueFormattedRevenue (text)
salessales
salesCurrencysalesCurrency
revenueYearrevenueYear
revenueReliabilityrevenueReliability
annualRevenuesannualRevenues
financialHistoryfinancialHistory
employeesConsolidatedValueEmployees (number)
employeesConsolidatedScopeemployeesConsolidatedScope
employeesConsolidatedReliabilityemployeesConsolidatedReliability
employeesThisSiteValueemployeesThisSiteValue
employeesThisSiteScopeemployeesThisSiteScope
employeesThisSiteReliabilityemployeesThisSiteReliability
keyPrincipalKey principal (text)
keyPrincipalPositionkeyPrincipalPosition
principalsprincipals
totalPrincipalstotalPrincipals
totalContactsOnFiletotalContactsOnFile
phonePhone (text)
websiteWebsite (link)
stockExchangeStock (text)
stockTickerstockTicker
tradeStyleNametradeStyleName
industriesindustries
parentIndustryparentIndustry
secondaryIndustrysecondaryIndustry
ownershipTypeownershipType
entityTypeentityType
isPrivateisPrivate
isPartnershipisPartnership
isProprietorshipisProprietorship
isHeadquartersisHeadquarters
ranksranks
corporateFamilycorporateFamily
similarCompaniessimilarCompanies
companyLocationcompanyLocation
descriptiondescription
fiscalPeriodEndfiscalPeriodEnd
detailFetcheddetailFetched

Example output

An example from this actor’s documentation. Values are illustrative; this is not a fresh live result.

{
  "companyName": "Sample Industries Inc",
  "encryptedDuns": "00000000000000000000000000000000",
  "url": "https://www.dnb.com/business-directory/company-profiles/sample-industries-inc.00000000000000000000000000000000",
  "companyRole": "Parent",
  "industryName": "Computer Systems Design Services",
  "revenueFormatted": "$12.5 M",
  "sales": 12500000,
  "salesCurrency": "USD",
  "revenueYear": "2025",
  "revenueReliability": "Actual",
  "employeesConsolidatedValue": 412,
  "employeesConsolidatedScope": "Consolidated",
  "employeesConsolidatedReliability": "Actual",
  "employeesThisSiteValue": 250,
  "keyPrincipal": "Jane Doe",
  "keyPrincipalPosition": "President and Chief Executive Officer",
  "principals": [
    {
      "name": "Jane Doe",
      "position": "President and Chief Executive Officer"
    }
  ],
  "totalPrincipals": 4,
  "totalContactsOnFile": "1,204",
  "phone": "(000) 000-0000",
  "website": "www.sampleindustries.example",
  "stockExchange": "NASDAQ:SMP",
  "tradeStyleName": "Sample Industries",
  "industries": [
    "Computer Systems Design Services"
  ],
  "parentIndustry": "Information",
  "ownershipType": "Public",
  "entityType": "Parent",
  "isPrivate": false,
  "ranks": [
    {
      "rank": 500,
      "list": "Fortune 1000 Revenue Rank",
      "year": "2026"
    }
  ],
  "corporateFamily": {
    "globalHeadquarters": "Sample Industries Inc"
  },
  "addressStreet": "100 Example Pkwy Ste 300",
  "addressCity": "Austin",
  "addressRegion": "Texas",
  "addressPostalCode": "78701",
  "addressCountry": "United States",
  "changeType": "NEW",
  "detailFetched": true,
  "scrapedAt": "2026-01-01T00:00:00Z"
}

Ways to use this data

  • Who: Sales and GTM teams building targeted prospect lists filtered by industry, size and corporate role.
  • Who: Data teams enriching an existing company list with revenue bands, employee counts and executive names.
  • Who: Market researchers mapping an industry across a country, region or city.
  • Who: Ops teams keeping a CRM in sync: scheduled incremental runs flag new, changed and vanished companies.

Before you run

Start with a small input and check the resulting records against your expected fields. Source content and actor options can change; the current Apify listing is the reference for availability and pricing.

Questions about this actor

What data does Dun & Bradstreet Scraper return?

The documented output for Dun & Bradstreet Scraper includes company, profile link, profileurl, encryptedduns, role, industry, revenue and addressstreet. Availability of each field depends on the source page and the selected mode.

How much does Dun & Bradstreet Scraper cost?

It costs $2.00 per 1,000 results on the Apify Free plan and from $1.40 on paid plans, with smaller per-run or optional feature charges listed on Apify. The Apify listing shows the current rate for every plan.

Can I schedule recurring runs?

Yes. Pair a schedule with incremental mode and a fixed state key: the first run saves a baseline, later runs push only new or changed companies, and optional EXPIRED rows report companies that left the scope.

Why did a run return fewer records than the directory shows for my search?

Each scope serves its first 1,000 matches. Add a region, city, employee range or role filter to scope tighter instead of paging deeper.

Why did a run fail with a connection message?

The directory checks every connection and occasionally refuses an exit. The run opens a fresh connection and retries a bounded number of times, then uses the backup connection once; when that fails too it ends with an honest failure instead of an empty result. Re-running later usually resolves it.

Can an AI agent use this actor?

Yes. The dataset is flat JSON with stable record IDs, and MCP connectors hand results straight to agent workflows.

Ready to collect with Dun & Bradstreet Scraper?

Run it on Apify with your own input and export the results as JSON, CSV or Excel.