Denmark Company Registry Data: How to Access CVR Company Data, Financials & UBO

06/04/2026 06:38 · 10 min read
Denmark Company Registry Data: How to Access CVR Company Data, Financials & UBO

Denmark runs one of the most open company registers in Europe. The Central Business Register publishes core data on every Danish business as free, structured, machine‑readable open data — and unusually, it publishes full annual accounts for private limited companies, not just listed ones. But the picture changed in September 2025, when beneficial‑ownership data moved behind a legitimate‑interest wall. This is what is actually available, where it lives, how current it is, and what it costs.

If you build compliance, risk, or data products that touch Danish entities, the practical questions are concrete: how many companies are there, how often does the data refresh, which fields are free and which are gated, what financials are public for private versus listed companies, and how do you pull it at scale. We answer each below, with the source and the date attached so you can verify rather than take it on trust.

Where Danish company data is published

The authoritative source is the Central Business Register — in Danish, Det Centrale Virksomhedsregister, almost always shortened to CVR. It has been the legal system of record for company base data since 1999 and is operated by the Danish Business Authority (Erhvervsstyrelsen), an agency under the Ministry of Industry, Business and Financial Affairs.

CVR covers every registered business in Denmark and, since 2018, Greenland. The one carve‑out: personally owned businesses with annual turnover below DKK 50,000 are not required to be in the register. Every other legal entity — companies, branches, foundations, associations, and public authorities — carries a unique CVR number that follows it across tax, banking, and contracts.

Three public front doors matter:

  • datacvr.virk.dk — the official lookup portal. Free, no account needed, available in Danish, English, and West Greenlandic. Search by CVR number, name, address, or person.
  • regnskaber.virk.dk — the annual‑accounts portal. Free access to filed annual reports, with digital coverage running back roughly two decades.
  • data.virk.dk — system‑to‑system distribution of the register as open data, for programmatic access.

The provenance point. Everything downstream — aggregators, screening tools, AI agents — ultimately traces back to CVR. The value is not in re‑hosting it; it is in normalising it, connecting it across borders, and making the financials machine‑readable. We come back to that under access.

CVR numbers and production units (P‑numbers)

One detail trips up almost everyone ingesting CVR for the first time. The CVR number identifies the legal entity. Each physical location that entity operates — an office, a factory, a shop — gets its own P‑number (produktionsenhedsnummer), a separate 10‑digit identifier. One company can hold many P‑numbers: a single CVR with five branches sits above five P‑units.

P‑numbers drive Danish employment statistics and appear on payslips, but for KYB, invoicing, and supplier verification you key off the CVR number, not the P‑number. Both are searchable on datacvr.virk.dk. If you model the register without this one‑to‑many relationship, you will double‑count establishments as if they were separate companies — a common and avoidable error in counterparty datasets.

How many companies are there, active and inactive

Here is where most write‑ups get sloppy, because two different numbers get used interchangeably. The register holds units; the statistics office counts economically active enterprises. They are not the same, and the gap matters for anyone sizing a dataset.

As of mid‑to‑late 2025, the register held on the order of 900,000 + live units, of which roughly 380,000–390,000 are corporations (mainly anpartsselskaber / ApS and aktieselskaber / A/S) and around 300,000 are sole proprietorships, with the remainder being associations, foundations, branches, and public bodies. The statistically active enterprise population — firms with employees or meaningful revenue — is materially smaller than the headline register count, because the register also carries dormant, dissolving, and recently ceased units.

REGISTERED UNITS IN CVR — APPROXIMATE COMPOSITIONCorporations (ApS / A/S)~385,000Sole proprietorships~300,000Associations, foundations, branches, public bodies~250,000Indicative scale. Register totals exceed the count of economically active enterprises.
Sources: Danish Business Authority (CVR); commercial register snapshots (HitHorizons, Aug 2025). Figures are rounded and indicative; the register is live and shifts daily.

For practical work, treat the register as having three layers: a core of limited‑liability companies that file public accounts and ownership data, a long tail of sole proprietorships with thin public footprints, and a standing population of inactive and dissolving units that you must filter out before any analysis. The status field — aktiv, under oploosning (under dissolution), ophoort (ceased), under konkurs (in bankruptcy) — is the single most important attribute for telling a live counterparty from a husk.

Danish company types and how entities are classified

The register carries many legal forms, but for data work a handful account for almost everything. The split that matters most is limited‑liability versus everything else, because it decides whether a company files public accounts.

FormWhat it isMin. capitalLiabilityPublic accounts?
A/S (aktieselskab)Public limited companyDKK 400,000LimitedYes
ApS (anpartsselskab)Private limited company — the most common formDKK 20,000LimitedYes
P/S (partnerselskab)Partnership limited by sharesDKK 400,000MixedYes
I/S (interessentskab)General partnershipNoneUnlimited, joint
K/S (kommanditselskab)Limited partnershipNoneMixed
EnkeltmandsvirksomhedSole proprietorshipNonePersonal, unlimitedNo
Erhvervsdrivende fondCommercial foundationEntityYes

Two notes for anyone reasoning about the population. First, the IVS (iværksætterselskab), the DKK 1 entrepreneur company, was abolished in 2019; existing ones had to convert to ApS or dissolve, so a current Danish dataset should contain no live IVS entities (the form does still exist in Greenland). Second, the ApS minimum capital was cut from DKK 40,000 to DKK 20,000 in early 2025 — worth knowing if you reconcile capital figures against older records. Corporate tax is a flat 22%.

Industry codes: DB07 is being replaced by DB25

Every company in CVR carries an activity code — the Dansk Branchekode. The long‑standing version, DB07, is built on NACE Rev. 2. It is now being replaced by DB25, a six‑digit Danish subdivision of NACE Rev. 2.1, which came into force across the EU on 1 January 2025 under Regulation (EU) 2023/137. On that date the Danish Business Authority reclassified the main activity code of every company in the register, so active entities now carry a DB25 code: the first four digits map to the NACE class, the last two add Danish detail.

The practical catch: the reclassification is administrative — it does not change any company's legal status — but through 2026 some Statistics Denmark outputs still report on DB07, so you will encounter both code versions in circulation. If you filter Danish companies by industry, confirm which version your source uses and bridge your time series, or you will misclassify or break trend lines across the 2025 boundary.

Three‑year dynamics

The clearest read on register churn is the bankruptcy series, which Statistics Denmark publishes for active enterprises — firms with employees or turnover above DKK 1 million, which strips out the shell‑company noise.

BANKRUPTCIES AMONG ACTIVE ENTERPRISES3,5002,3001,2000~2,8302022derived3,078202313‑year high2,4912024−19% YoY
Source: Statistics Denmark (active‑enterprise bankruptcies), reported via Bloomberg and Chambers Insolvency 2025. 2023 = 3,078 (+8.6% YoY, highest since 2010); 2024 = 2,491 (−19%). 2022 (~2,830) is derived from the reported 2023 growth rate. Including inactive firms, 2024 totalled 5,692.

The shape of the last three years is a post‑COVID rebound: support packages suppressed insolvencies through 2020–2021, then 2023 spiked to a 13‑year high before easing back in 2024. Construction and trade carried most of it — together roughly 45% of active‑enterprise bankruptcies in 2023. Early‑2026 monthly prints suggest the rate is running broadly in line with the longer‑run average rather than spiking, though full‑year 2025 figures were still consolidating at the time of writing, so treat any single‑year 2025 total with caution.

What data is free, and what costs money

This is Denmark's headline advantage: the core register is genuinely free and open. The cost question is less about the registry charging you and more about how much engineering you spend turning documents into usable data.

DataWhereCostNotes
Company base data (name, CVR no., status, address, industry, dates)datacvr.virk.dk / data.virk.dkFreeOpen data licence; bulk and system‑to‑system available
Management and foundersdatacvr.virk.dkFreePublicly listed for registered entities
Legal owners (stakes ≥ 5%)datacvr.virk.dkFreeRemains public after the 2025 changes
Annual reports / accountsregnskaber.virk.dkFreeFiled documents; historically PDF, now iXBRL for FY2025+
Beneficial owners (UBO / reelle ejere)CVR, gatedRestrictedLegitimate‑interest access only since 1 Sep 2025
Cleaned, structured, segmentable datasets & financialsCommercial providersThe registry is built for single lookups, not screening or list‑building

So the honest framing is: looking up one Danish company is free; operating on all of them is not. The registry will hand you a company's accounts as a document, but it will not hand you "every active construction ApS in Jutland with revenue above DKK 10m and a director change in the last 12 months." That kind of query — segmentation, screening, change monitoring — is where paid layers exist.

How Global Database fits in
Denmark, normalised and connected to everywhere else.

We pull Danish records straight from CVR, then do the work the registry does not: normalise to English, link entities across borders, and turn filed PDF accounts into structured financials you can query and screen.

Two fields that trip people up: VAT and advertising protection

Beyond the headline data, two CVR fields cause more downstream problems than their size suggests. Both are free to read; both are easy to misuse.

VAT (moms) registration status

CVR records whether an entity is VAT‑registered (shown as Momsregistreret: Ja/Nej). Danish VAT is 25%, and registration is required once taxable sales pass DKK 50,000 over a 12‑month period, so a genuinely trading company is usually registered — a missing VAT flag on an ostensibly active business is worth a second look. One caveat for cross‑border trade: the CVR flag tells you the Danish position, but the authoritative check for an EU VAT number is the European Commission's VIES system. Treat the CVR VAT status and a VIES validation as two separate checks, not one.

Advertising protection (reklamebeskyttelse)

Any entity can flag itself reklamebeskyttet — advertising‑protected — to opt out of direct marketing. The flag sits at the CVR or P‑number level and shows in the public record. If a unit is protected, its CVR data must not be used by private parties for direct marketing, and if you pass the data to someone else you must carry the protection flag with it. For any sales or outreach use of Danish registry data, this is not optional metadata — it is a compliance control, and stated opt‑outs have to be honoured. Strip this field out of your pipeline and you have built a marketing list that breaks Danish law.

Shareholders and beneficial owners

Denmark keeps two distinct ownership layers, and the 2025 change hit only one of them.

Legal owners and shareholders — still public

Companies register their legal owners (legale ejere) holding stakes of 5% or more, including the size of the holding and voting power, alongside founders and management. This layer remains publicly accessible through CVR. For most due‑diligence and KYB workflows on Danish counterparties, this is the workhorse field.

Beneficial owners — now gated

Separately, since 23 May 2017, Danish companies have been legally required to register their ultimate beneficial owners (reelle ejere) — the natural person who ultimately owns or controls more than 25% of shares or voting rights, directly or indirectly, or who exercises control by other means. If no such person exists, the company registers its management instead.

The change everyone in compliance needs to know: from 1 September 2025, beneficial‑ownership data is no longer openly public. Access now requires demonstrating a legitimate interest plus authentication (via MitID and a declaration). This implements the EU's Sixth Anti‑Money Laundering Directive (Directive (EU) 2024/1640) and follows the Court of Justice's November 2022 ruling that unrestricted public UBO access was a disproportionate intrusion on privacy rights.

HOW UBO ACCESS CHANGEDOPEN → RESTRICTEDPUBLICLY OPENAnyone could query · 2017–2025RESTRICTEDLegitimate interestMay 2017UBO registration becomesmandatory for companies.Nov 2022CJEU rules open publicaccess disproportionate.1 Sep 2025Public access closed —legitimate interest only.
Sources: Danish Business Authority; Mazanti, Commenda, and Kielberg legal guidance (Aug–Oct 2025); Open Ownership. Disclosing UBO data to unauthorised parties is now a criminal offence.

Denmark's implementation is comparatively generous: access is still available to obliged entities under AML rules, journalists, civil society organisations, certain third‑country obliged entities, and authorised data aggregators — but it is conditional, authenticated, and logged. The era of pulling Danish UBO data anonymously and at will is over. If your product depends on it, you now need a lawful access basis, not just a scraper.

Financials: what is public for private vs public companies

Denmark's financial transparency is the part that surprises people coming from jurisdictions where private‑company accounts are hidden. Danish private limited companies file full annual accounts that are then published in CVR. Not summaries — balance sheet, income statement, notes, and (where required) an auditor's report.

The rules sit in the Danish Financial Statements Act (Årsregnskabsloven), which transposes EU Directive 2013/34/EU and sorts companies into four reporting classes:

ACCOUNTING CLASSES UNDER THE FINANCIAL STATEMENTS ACTClass A · Sole traders & small partnershipsMinimal obligations. Generallynotrequired to publish accounts in CVR.Not publicClass B · Small ApS & smaller A/SMost common class. Public accounts; audit often optional under thresholds.PublicClass C · Medium & large companiesFuller disclosure; statutory audit required.PublicClass D · Listed & state‑owned companiesMost extensive disclosure; report under IFRS.Public
Source: Danish Financial Statements Act (Årsregnskabsloven); Erhvervsstyrelsen guidance. Thresholds determining class and audit exemption are revised periodically.

Who must file? All limited‑liability companies — A/S, ApS, partner companies (P/S), commercial foundations, and partnerships where all partners are themselves limited‑liability entities — must submit an annual report to Erhvervsstyrelsen, which then becomes public. Sole proprietorships generally do not: they keep books for tax, but there is no public årsrapport. So the "private vs public" distinction in Denmark is not listed‑vs‑unlisted; it is limited‑liability‑vs‑sole‑trader.

Two operational details that affect anyone ingesting this data:

  • Deadlines. Most companies must file within six months of their financial year‑end; listed and state‑owned companies file faster. Miss it and management faces fees and, ultimately, compulsory dissolution (tvangsoploosning).
  • Format shift. For financial years with a balance‑sheet date on or after 1 January 2025, non‑financial companies must file in inline XBRL (iXBRL) only, replacing the old PDF‑plus‑XBRL dual filing. This is good news for structured extraction — but the historical archive is still overwhelmingly PDF, which is why machine‑readable financials remain a build problem for most teams.

How to access the data

There are two ways to get Danish company data, and they are not the same product: straight from the registry, or through Global Database. The registry hands you authoritative raw data; a provider hands you that same data normalised and connected. Start with the registry's own channels.

Via the registry

The official register exposes its data three ways. All three are free and authoritative — and all three give you raw data, in Danish, that you clean and process yourself. There is no official MCP server or English‑normalised feed; that layer only exists with a provider.

VIA THE REGISTRY — THREE CHANNELSWeb lookupdatacvr.virk.dkOne companyat a time.Open‑data APIsystem‑to‑systemReal‑time lookups,structured JSON.Bulk & CSVregister extractsWhole segmentsto load yourself.Single lookup · manualWhole population · raw
The register’s own channels: a single lookup, an open‑data API, or bulk extracts. All free, all in Danish, all raw — you do the cleaning, parsing, and matching.
  • Web lookup — free on datacvr.virk.dk. Perfect for verifying a single CVR number; useless for analysing thousands.
  • Open‑data API — the Danish Business Authority distributes CVR as open data via system‑to‑system access, returning structured JSON. Since September 2025 it exposes two tracks: one including beneficial‑ownership data (gated to legitimate‑interest holders) and one without.
  • Bulk / CSV extracts — register extracts (udtræk) pull whole slices for loading into your own systems. This is the registry's route for screening and list‑building — though the cleaning, parsing, and entity matching are yours to do.

Where registry‑direct data stops being enough

To be straight about it, the free Danish register is excellent, and for many tasks you do not need anything else. The gaps are specific and worth naming honestly:

  • Single lookups, not screening. virk.dk answers "tell me about this company." It does not answer "give me every company that matches these filters." For segmentation you need a structured dataset or a different tool.
  • Documents, not data. Historical financials are PDFs. Turning twenty years of filed accounts into comparable, queryable figures is an extraction project, not a download.
  • Danish‑only and Denmark‑only. Field labels and entity types are native; cross‑border consistency — matching a Danish subsidiary to a German parent and a UK sister — is on you. This is the same friction that shows up country by country in our registry API availability by country reference.
  • UBO is now conditional. Post‑September‑2025, beneficial‑ownership access needs a lawful basis and authentication. An anonymous pipeline no longer works.

This is the line where Global Database picks up. Two things the registry cannot do on its own. It follows ownership to the end of the chain: the register shows a company's immediate legal owners, but the beneficial owner often sits several layers up, behind holding companies in other countries. Global Database walks that chain — owner of the owner of the owner — across its cross‑border company graph until it resolves the natural person at the top, so you still reach the UBO even where the Danish register's own ownership lookup is now gated. And it follows the financials to the parent: when a Danish entity is a subsidiary whose headquarters sits in another country, the local filing tells only part of the story — so because the same store spans 400+ registries, you get the parent's accounts and financials too. The group, not just the Danish node.

None of this makes registry data worse than aggregated or AI‑generated alternatives — the opposite. It makes it the right foundation, provided someone does the normalisation, linkage, and lawful access layer on top, and exposes it the way modern teams actually consume data — from API to an MCP server for AI agents (see our guide to the best MCP servers for Claude Code). For a fuller treatment of the trade‑offs between pulling registries live versus working from a continuously refreshed store, our piece on live registry APIs versus stored data covers it, and our comparison of registry data providers walks through where each tool wins and loses.

Via Global Database
This data is available via API, bulk feeds, MCP and CRM.
API Bulk feeds MCP CRM

Frequently asked questions

What is the official Danish company register?

It is the Central Business Register, or CVR (Det Centrale Virksomhedsregister), the legal system of record for Danish company base data since 1999. It is run by the Danish Business Authority (Erhvervsstyrelsen) and covers all businesses in Denmark and, since 2018, Greenland. The public portal is datacvr.virk.dk.

Is Danish company data free?

The core register is free and open. Base data, management, legal owners holding 5%+, and filed annual reports are all freely accessible through the official virk.dk portals, and the register is also distributed as open data for system‑to‑system use. What costs money is the work of turning it into clean, structured, segmentable datasets — the registry is built for single lookups, not list‑building or large‑scale screening.

How many companies are registered in Denmark?

As of 2025, the register held roughly 900,000+ live units, of which about 380,000–390,000 are corporations (mainly ApS and A/S) and around 300,000 are sole proprietorships, with the rest being associations, foundations, branches, and public bodies. The count of economically active enterprises — firms with employees or meaningful revenue — is smaller, because the register also carries dormant and dissolving units.

How often is CVR data updated?

CVR is a live register: companies are legally required to report changes — new owners, address changes, board changes — promptly, and those updates flow into the public data on an ongoing basis rather than on a fixed annual cycle. Annual reports appear once filed, within the statutory deadline after each financial year‑end.

Are private company financials public in Denmark?

Yes, and this is unusual. All Danish limited‑liability companies — including private ApS, not just listed firms — must file annual accounts with Erhvervsstyrelsen, which then become public in CVR. The accounts include the balance sheet, income statement, and notes. Sole proprietorships are the main exception: they generally do not file a public annual report.

What changed with Danish beneficial ownership (UBO) data in 2025?

From 1 September 2025, beneficial‑ownership data is no longer openly public. Access now requires demonstrating a legitimate interest plus authentication. The change implements the EU's Sixth Anti‑Money Laundering Directive and follows the Court of Justice's 2022 ruling against unrestricted public access. Obliged entities, journalists, civil society, certain third‑country entities, and authorised aggregators retain conditional access.

What is the difference between legal owners and beneficial owners in CVR?

Legal owners (legale ejere) are the registered shareholders holding 5% or more, and that layer remains public. Beneficial owners (reelle ejere) are the natural persons who ultimately own or control more than 25% of a company, directly or indirectly; that layer is now gated behind the legitimate‑interest rules introduced in September 2025.

How do I access Danish company data through an API?

The Danish Business Authority distributes CVR as open data via system‑to‑system access, returning structured JSON. Since September 2025 there are two API tracks — one including beneficial‑ownership data (restricted to legitimate‑interest holders) and one without it. For cross‑border, English‑normalised, structured data with digitised financials, commercial providers add a layer on top of the raw feed.

In what format are Danish annual reports filed?

Historically, annual reports were filed as PDF alongside an XBRL data file. For financial years with a balance‑sheet date on or after 1 January 2025, non‑financial companies must file in inline XBRL (iXBRL) only. The historical archive remains largely PDF, which is why extracting comparable financial figures at scale is still a meaningful engineering task.

Can I download Danish company data in bulk or CSV?

Yes. The register supports extracts (udtræk) for pulling whole segments, and the open‑data distribution supports system‑to‑system bulk access. For ready‑to‑load, cleaned datasets — or for combining Denmark with other markets in one schema — commercial providers deliver bulk files, CSV, API, and MCP access.