DATA

Data

Every source, what it is used for, how records are collected, how a record is matched to a company, and how a subsidiary is tied to the parent that owns it.

Sources
Twenty independent
Adverse regulators
US, UK and EU
Universe
20,000+ companies
Matching
Deterministic, on identifiers

The architecture

01  Sources 02  Collection agents 03  Normalisation 04  Resolution 05  Scoring Adjudicated regulators EPA · SEC · MSHA · DG COMP OSHA · FCA · DOJ · CMA · SFO 8 GDPR authorities · registers Commitment registries SBTi · UNGC · Modern Slavery CSRD Company-reported WBA — direction and decile Identifier data GLEIF · OpenFIGI · Exhibit 21 Discovery — not evidence GDELT · NewsAPI Nothing here fires a band Fetch Poll each register on its own cadence. Raw response kept. Retrieved date recorded. Parse Docket to fields: regulator, case reference, stage, date, penalty, named respondents. Deduplicate One case counts once, across sources and across the ten defendants it may name. Stage admitted · litigated consent · uncontested filed Sets the severity band. Severity Band from the stage, position from the source, 0–100. Pillar By subject of the finding, via the regulator’s remit. Identifier ladder LEI ISIN Ticker and exchange OpenFIGI Registered name + domicile Each step deterministic. No match falls to the precision queue, not a guess. Parent walk Subsidiary resolved, then walked up ownership to the listed parent a portfolio actually holds. Every hop recorded. Effective severity severity × tier weight × decay (48-month half-life, floor 0.10) Tier 5 contributes nothing. Bars and bands Governance 70 · Environment 80 Critical floor 69.0 One stated fact fires a band. Snapshots scored · findings · exclusions Dated, versioned, reproducible. Six reports, one snapshot Portfolio screening · pension fund evidence · exclusions · momentum · heatmap · leaders. Public reports run a quarter behind; client reports run on current data. Precision queue Anything the ladder cannot resolve deterministically. Held, not guessed, and counted as unseen in every coverage figure until it resolves.

Sources in, evidence out. Every record carries a date and a source before it moves to the next stage.

The sources

Twenty independent sources, grouped by what they are. Sources are not blended: each answers one question, and the question determines where its output can appear.

SourceWhat it is
Adjudicated — a named regulator’s own decision
EPA (ECHO)Environmental enforcement dockets, judicial and administrative. Pillar E.
MSHAMine-safety enforcement. Pillar S.
OSHA (ITA)Workplace fatalities and injury records. Pillar S.
SECLitigation releases and administrative proceedings. Pillar G.
DOJEnforcement actions, including foreign-bribery matters. Pillar G.
DG COMPEU competition infringement decisions. Pillar G.
FCAUK conduct final notices. Pillar G.
CMAUK competition decisions. Pillar G.
SFOUK fraud and bribery outcomes. Pillar G.
GDPR authoritiesEight national data-protection regulators: AEPD (ES) · Garante (IT) · DPC (IE) · CNIL (FR) · BfDI and the Länder (DE) · UODO (PL) · ANSPDCP (RO) · ICO (UK). Pillar G.
Sector registersFDA · Capital Markets Tribunal · FSC Bulgaria. Jurisdiction-specific determinations, pillar by remit.
Commitment and disclosure registries — a filing, not a finding
SBTiExternally validated emissions targets, with the validation date.
UN Global CompactParticipation, and the principle mapping PAI 10 is reported against.
Modern Slavery RegistryStatement filed or absent. Recorded as a filing, not scored as performance.
CSRDFiled sustainability disclosure under the EU reporting regime.
Company-reported and independently measured
WBABenchmark placement and reported emissions, as corroboration rather than a finding.
Climate TRACEEmissions derived independently, from satellite and sensor observation of facilities. Nothing is self-reported to it.
Identifier and structural
GLEIFLEI reference data, and the parent relationships used in the ownership walk.
OpenFIGIInstrument-to-issuer mapping where a record carries a security but no issuer identifier.
SEC Exhibit 21The significant subsidiaries every US registrant lists with its annual report — the subsidiary-to-parent map for regulators that name an operating entity rather than the listed company.
Discovery — none of it is evidence
GDELT · NewsAPIEvent feeds. They can tell the agents which docket to fetch. Nothing a journalist wrote can fire a band.

Sources being added

The sources below are fetched on their own schedules and matched through the same identifier ladder and parent walk as everything above, but nothing they produce reaches a report, a band or an exclusion yet. Each is held in staging until a hand-checked sample of 100 matched records resolves to the right listed company at 95% precision or better. Most of these regulators act against a national bank or an operating subsidiary rather than the listed parent, and a wrong attribution against a named holding is the most damaging error a report can make.

SourceWhat it adds
Staged — adjudicated regulators, not yet adopted
OCCNational-bank enforcement actions and civil money penalties. Pillar G.
Federal ReserveEnforcement actions against bank holding companies. Pillar G.
FDICEnforcement decisions and orders. Pillar G.
CFPBConsumer-finance enforcement actions. Pillar S.
FinCENAnti-money-laundering penalties under the Bank Secrecy Act. Pillar G.
DOL Wage and HourWage-theft cases, from the same Department of Labor data service as the OSHA records. Pillar S.
DOJ press releasesCorporate criminal resolutions that sit outside the foreign-bribery pages, such as deferred prosecution agreements. Pillar G.
CPSCConsumer-product safety civil penalties. Pillar S.
OFSIUK penalties for breaching financial sanctions — enforcement of a breach, which is conduct, unlike the designations below. Pillar G.
ICOUK data-protection monetary penalties, fetched through the ICO’s own search API. Reprimands are filtered out. Pillar G.
Staged — sanctions designations, a separate flag
OFAC SDNThe US Treasury’s Specially Designated Nationals list.
UK Sanctions ListThe FCDO’s list, which replaced the OFSI Consolidated List when that closed on 28 January 2026.
EU financial sanctionsThe EU’s consolidated financial-sanctions file.
Pilot — monitored tier, never evidence
GDELTThe project’s raw event files, as a second independent press feed for monitored controversies. Its company matching is measured on a sample before it appears anywhere.

Sanctions are a flag, not a finding. A designation is a foreign-policy decision, not a determination of misconduct, so it will be shown as a separate “Sanctioned” flag beside the band and never on the band ladder. A company is flagged only on an identifier match; a match on name alone goes to a review queue and appears on no page, because transliterated names and aliases make this the highest false-positive risk of any source. Most designations name individuals, vessels and unlisted state entities, so few listed companies are expected to carry the flag.

Considered and not used

SourceWhy not
Violation TrackerIt repackages regulators already fetched here. Where it covers a regulator we do not, we go to that regulator directly.
BHRRCNo grant of reuse for its content.
OpenSanctionsCommercial use needs a paid licence, and the official sanctions lists it compiles are free at source.

The GDPR route, stated honestly

Eight data-protection authorities are approached. They are not equivalent, and a source count that presented them as eight interchangeable feeds would be wrong:

AuthorityStatus
ICO (UK)The only true API. Machine-readable, respondent named.
AEPD · Garante · DPC · CNIL · ANSPDCPDecisions retrievable with the respondent named, on their own publication cadence.
UODO (PL)The respondent is redacted. A decision can be counted, but it can never be attached to a company — so it cannot fire a band against anyone.
BfDI (DE)Nothing machine-readable at federal level; the sixteen Länder authorities each publish separately. The German route is manual.

Eight approached, six that can name a respondent. That is the number that matters for attribution, and it is the number the coverage figures are built on. A GDPR decision that can be read but not attributed is counted as a decision seen, not as a finding against a company.

Climate TRACE

Climate TRACE derives emissions independently, from satellite and sensor observation of the facilities themselves. Nobody self-reports to it — which is what distinguishes it from the figures an issuer publishes in its own accounts, and why the two can never be merged into one number.

Climate TRACE names the facility operator; the issuer graph names the listed parent. The two are reconciled through the same parent walk the enforcement records go through, so an observed figure is attributed to the company an investor actually holds rather than to whichever entity happens to run the site.

Where it sits. Beside company-reported figures, as independently measured data with the basis labelled on the figure itself — derived from observation, next to the issuer’s own published figure, not merged with it. It does not enter the severity scale and it does not trigger an exclusion. An exclusion follows an adjudicated determination by a named regulator, and an inference from a satellite is not one.

How the agents collect

Collection runs continuously and per source, because registers publish on their own schedules and none of them announce it.

  1. Fetch. Each register is checked on its own schedule and the raw response is kept, along with the date it was retrieved. The stored artefact is what the report later links to.
  2. Parse. A docket becomes fields: regulator, case reference, stage, decision date, penalty where one is stated, and the respondents named in it. Where a term or an end date is quoted — a consent decree, a monitorship — it is parsed from the source’s own text, narrowly, and anything ambiguous stays unknown.
  3. Deduplicate. The same matter reaches us more than once, from more than one source. It is collapsed to one case, and a case naming ten defendants stays one case.
  4. Normalise. Stage sets the severity band, source sets the position inside it, and the regulator’s remit sets the pillar.
  5. Resolve. The parties named in the record become companies, or they go to the precision queue.

Identifier mapping

Resolution is deterministic at every step. A determination names a respondent — often a local operating entity, in the register’s own spelling, with no identifier attached. Turning that into a company a portfolio holds is a fixed sequence of checks, tried in order:

StepBasis
LEIThe legal entity identifier, where the record carries one. Exact.
ISINSecurity identifier, resolved to its issuer.
Ticker and exchangeOnly together — a ticker alone is ambiguous across venues.
OpenFIGIInstrument-to-issuer mapping for records that carry a security but no issuer identifier.
Registered name and domicileExact match on the registered name within a jurisdiction. Not similarity, not fuzzy distance.

Behind the ladder sits a reconciled record of names, tickers, ISINs and LEIs, with duplicates collapsed, and a precision queue holding everything it cannot settle deterministically.

Nothing is matched on name similarity. If no check resolves it, the record goes to the precision queue and is held. It is not attached to the nearest plausible company, and until it resolves it is counted as unseen rather than dropped — which is why coverage is reported as its own figure.

Parent and subsidiary

Regulators act against the entity in front of them, which is usually not the listed company. A fine against a national operating subsidiary is invisible to any dataset that stops at the named respondent — and that invisibility is exactly what makes a holding look clean.

So resolution does not stop at the entity. Once the respondent is identified, ownership is walked upward to the listed parent, and the determination is attributed to the company an investor can actually hold. Every hop is recorded, so the chain from docket to holding can be read back: this determination, against this subsidiary, owned by this parent, on this date.

Attribution is point-in-time throughout. Ownership as at the determination date is what governs, not ownership today, and where holdings are involved presence is recorded at stated observation dates with no continuity claimed between them.

What comes out

A run produces three dated outputs — the companies scored, the findings behind them, and the exclusions — each stamped with the register revision and scoring version that produced it. The six reports are views onto those artefacts rather than separate pipelines, which is why the answers cannot contradict each other.

What is deliberately not collected

No modelled or inferred figure is ever scored. Nothing estimated stands in where a company has not reported, no sentiment or controversy score is derived from media, no self-reported questionnaire is accepted from the assessed company, and no third-party ESG dataset is overlaid on top — the pipeline resolves, normalises and validates its own inputs rather than inheriting someone else’s conclusions.

Where a commitment depends on revenue by activity — tobacco, thermal coal, oil and gas — it is reported as untested rather than assumed passed. Where a company sits outside US, UK and EU jurisdiction, no adverse finding can arise here, so the absence of a finding says nothing about it.

Coverage is reported as its own figure beside every result, kept separate from it. A low adverse figure where coverage is thin can mean the record is hard to see rather than clean.

See this on your own holdings.

Clients receive the reports on current data across the complete universe, with the source record behind every determination. Higher-frequency updates and bespoke reporting are available on request.