Skip to main content
Version: v1.1

Rating Methodology (AAA-D)

Legacy URL

This page keeps its historical slug for backwards-compatible links. The current public methodology is AAA-D and leakage-taxonomy led. Gold/Silver/Bronze/Declared are legacy compatibility fields, not the current certificate-facing rating scale.

TrackForge rates catalogue and track state using an institutionally recognisable AAA-D scale. The rating expresses active royalty-leakage exposure under the declared methodology version, workflow version, taxonomy version, and jurisdictional scope.

The current public methodology label for the M58 grading/certification slice is methodology v1.1.

Short Version

A rating is made by applying a fixed scoring model to a frozen catalogue population:

  1. Freeze the original ingested catalogue population.
  2. Read the results-page findings for that population.
  3. Attach the evidence available for each population row.
  4. Project each row into deterministic leakage state.
  5. Apply risk-point penalties for active failure-mode findings, agreement-binding risk, ISWC risk, and population defects.
  6. Average the row scores.
  7. Apply catalogue-level caps where a defect is too material to be averaged away.
  8. Map the final score to AAA-D.
  9. Hash the rating input, leakage vector, methodology artefact, and proof root.

The purpose of the rating is not to reward attractive metadata. It is to measure how much of the catalogue population can be relied on for collection, sale diligence, and remediation under the declared workflow.

For the recomputable public scoring contract, see Rating Input & Scoring Schedule. That page is the detailed schedule for row inputs, risk points, catalogue caps, threshold lookup, and verification requirements.

Population Denominator

Catalogue-sale diligence begins with the original ingested catalogue population where that population is available. Every in-scope uploaded track remains in the denominator, even if it is later cleaned, matched, remediated, or found to be orphaned.

This rule matters because a cleaned subset can make a distressed catalogue look better than it is. A track with no ISRC, no matched evidence snapshot, no work identity, or no registration evidence is itself a rating fact. It is not removed from the denominator because the workflow could not enrich it.

When an original intake population was not persisted for a historical or non-production event, the model falls back to the sealed evidence snapshot set. Current M58 production events should identify which population source was used.

From Results Page To Rating

The /results page is the operational view of the ingested catalogue analysis. It is built from run-scoped recovery.findings rows. Those rows carry the failure mode, description, asset type, asset identifier, owner entity, value tier, valuation method, provenance, and enrichment evidence for each detected leakage condition.

The rating is a deterministic translation of that results state into an institutional grade. The results page answers: what problems did the catalogue analysis find? The rating answers: given those problems, the population denominator, and the sale-diligence rules, what grade does this catalogue deserve?

The leakage findings on the results page are therefore the primary taxonomy input to the grade. M58 v1.1 also adds registration and diligence signals that are not always represented as ordinary leakage findings:

  • PRS/SearchWorks WACD agreement binding.
  • ISWC missing/conflict coverage.
  • Population defects such as missing ISRCs or population rows with no matched sealed snapshot.

These additional signals exist because a catalogue can carry serious transaction risk even where income is still being received. Inferred PRS income, for example, may still pay, but it is weaker than agreement-determined income for sale diligence.

Relationship To The Revenue Leakage Taxonomy

TrackForge maintains a revenue leakage taxonomy: named failure modes across the music royalty value chain. The public taxonomy families are:

StageFamilyExamples of leakage conditions
1Creationownership complexity, ghost contributions, sample or interpolation clearance gaps
2Recordingmissing ISRC, duplicate ISRC, conflicting recording identity
3Rights assignmentmissing assignments, conflicting publisher/writer shares, transfer ambiguity
4Work registrationmissing work registration, missing ISWC, wrong shares, territory or agreement defects
5Recording-to-work linkagemissing or wrong ISRC-to-work link, tunecode mismatch, work/recording contamination
6Distributiondelivery gaps, DSP metadata divergence, unavailable or mismatched release data
7Consumption / usageunreported or misclassified usage signals
8Usage reportingusage files missing identifiers, bundled reports, poor statement granularity
9Matching & allocationblack-box allocation, MLC absence, SoundExchange absence, MCPS drain-clock exposure
10Royalty calculationwrong rates, currency conversion errors, deductions or threshold issues
11Payment distributionpayment to wrong entity, defunct payment path, retained income
12Reconciliation & auditunaudited catalogue state, time-barred claims, insufficient evidence

The full taxonomy is broader than any single rating workflow. M58 v1.1 is the current UK/US catalogue-sale diligence workflow. It consumes the active findings and evidence available under that workflow, then records the deterministic projection in the leakage vector.

The public results page groups findings into industry-facing categories such as Ghost Tracks, Unclaimed Royalties, Unregistered Works, Rights Chain Issues, Distribution & Delivery, Linkage Failures, Data Quality, and Payment Leakage. Underneath those categories are the RL-*, XD-*, DL-*, and PO-* failure-mode identifiers used by the taxonomy.

In the compact M58 proof bundle, the production leakage vector currently records one row-risk item per rated catalogue population row. That item carries the active finding count, severity counts, agreement-binding state, ISWC state, population flags, evidence references, and remediation pointer for that row. Where a richer export includes individual RL-* finding identifiers, those identifiers explain the underlying taxonomy conditions that contributed to the row risk.

Leakage Vector

Each leakage-vector item has a stable shape:

{
"taxonomy_item_id": "M58-CATALOGUE-TRACK-RISK",
"state": "active | inactive | not_applicable",
"affected_revenue_pathway": "uk_us_collection",
"affected_right_type": "composition_and_recording",
"evidence_references": ["..."],
"materiality_inputs": {},
"remediation_pointer": "..."
}

The vector is ordered, canonicalised, and hashed. The hash is stored as leakage_vector_hash in the rating event. Any change to an active condition, evidence reference, materiality input, or remediation pointer changes the hash.

Per-Track / Per-Row Risk Points

Each rated population row starts at 100. Risk points are added from the active evidence state and then capped at 100. The row score is:

row_score = max(0, 100 - min(total_risk_points, 100))

Current M58 v1.1 risk points:

InputStateRisk points
Active finding severitycritical finding22 each, up to 3 per row
Active finding severityhigh finding13 each, up to 3 per row
Active finding severitymedium finding6 each, up to 3 per row
Active finding severitylow finding2 each, up to 3 per row
Agreement bindingagreement-bound0
Agreement bindinginferred or assumed18
Agreement bindingmissing or conflicting35
ISWC coveragepresent0
ISWC coveragemissing10
ISWC coverageconflicting20
Population integritymissing ISRC28
Population integrityno matched evidence snapshot30
Population integrityduplicate ISRC in population8
Population integritymissing title6
Population integritymissing work identity10

The active-finding severity inputs come from the evidence snapshot's finding summary, which is derived from the results-page leakage findings for the current run. Agreement, ISWC, and population-integrity inputs are recomputed directly from the frozen population and source evidence used by the rating event. The full public scoring schedule is published in Rating Input & Scoring Schedule.

Catalogue Aggregation

The raw catalogue score is the arithmetic average of the row scores across the rating denominator:

raw_catalogue_score = sum(row_score) / rated_population_count

The model then applies cap rules. Caps prevent a catalogue with a severe structural defect from receiving a high grade merely because the rest of the population looks clean.

Current M58 v1.1 catalogue caps:

ConditionMaximum score
Any critical active finding exists72
Any missing or conflicting agreement binding exists82
Any inferred or assumed agreement binding exists90
Zero agreement-bound works and any agreement risk exists72
Agreement-risk rows are at least 25% of the population82
Missing/conflicting agreement rows are at least 25% of the population40
Original population is used, zero agreement-bound works, and agreement risk exists40
Any ISWC conflict exists82
Any missing ISWC exists90
ISWC-risk rows are at least 25% of the population82
Missing ISWCs are at least 50% of the population40
Missing ISRCs are at least 10% of the population40
Unmatched population rows are at least 10% of the population40

The final numeric score is the lower of the raw average and every applicable cap.

Numeric Score To AAA-D

Minimum final scoreRating
95AAA
90AA
82A
72BBB
62BB
52B
40CCC
30CC
20C
0D

Rating Definitions

RatingCurrent meaning
AAANo active leakage conditions under the current workflow and scope; identity, rights, and registration state are clean against the current taxonomy and evidence snapshot.
AANo material active leakage; minor remediable or informational issues may exist but do not presently create meaningful leakage exposure under the current scope.
ALow leakage exposure; limited active leakage conditions or data defects with bounded operational impact.
BBBModerate leakage exposure; active leakage conditions exist and should be remediated before the catalogue is represented as operationally clean.
BBElevated leakage exposure; multiple active leakage conditions, material registration defects, or unresolved rights/identity problems affect revenue pathways.
BHigh leakage exposure; broad or severe leakage across one or more material revenue pathways.
CCCSevere to critical leakage exposure; catalogue or track state is materially compromised under the current workflow.
CCCritical leakage exposure; collection pathways are significantly broken or structurally unsafe for certification as clean.
CNear-failing state; pervasive active leakage or missing rights/registration state in material pathways.
DFailing state under the current methodology; cannot be represented as materially collection-ready.

Agreement Binding And ISWC Coverage

For UK composition pathways, TrackForge treats PRS/SearchWorks WACD agreement binding as a rating input. A work can still receive revenue when the publisher claim is not explicitly tied to a specific agreement, but that revenue path is weaker: the claim is more vulnerable to dispute, counterclaim, and manual back-and-forth than a work bound to the relevant PRS/ICE agreement record.

The rating methodology distinguishes:

  • Agreement-bound works - the track/work is tied to the relevant society-assigned agreement identifier in the client's PRS/WACD account.
  • Unbound or inferred works - the work has ownership or income signals, but no explicit agreement binding in the frozen evidence snapshot.
  • Missing or conflicting works - the work has no reliable agreement route or has evidence that contradicts the expected client account path.
  • Not applicable - agreement binding is outside the declared rights, society, or workflow scope for that subject.

ISWC coverage is also a rating input. Missing, conflicting, or weak ISWC evidence reduces the ability to resolve the registered composition, cross-reference society records, and support downstream registrations or corrections. The impact is methodology-versioned so a small number of low-value unresolved identifiers cannot be averaged together with severe agreement-binding gaps.

Failure Rates And Summaries

A rating event should expose both counts and rates. For example:

  • Agreement binding: bound, inferred/assumed, missing/conflicting, not applicable.
  • ISWC coverage: present, missing, conflicting, not applicable.
  • Leakage state: active, inactive, not applicable.
  • Taxonomy family counts where individual RL-* findings are available.
  • Population integrity: missing ISRC, unmatched snapshot, duplicate ISRC, missing work identity.

Counts show scale. Rates show materiality. A catalogue with 10 missing ISWCs out of 50 tracks carries a different risk profile from 10 missing ISWCs out of 10,000 tracks. The cap rules above are the current public mechanism for turning material failure rates into grade ceilings.

Proof And Reproducibility

Every M58 rating event records:

  • methodology_version and methodology_hash.
  • taxonomy_version and workflow_version.
  • rating_input_hash.
  • leakage_vector_hash.
  • agreement_binding_summary.
  • iswc_coverage_summary.
  • snapshot run and snapshot time.
  • Merkle root / current root and OpenTimestamps proof state where applicable.

The rating input hash binds the final grade to the exact methodology, scope, population-derived leakage vector, row materiality inputs, summary counts, and proof references. The Merkle/root proof binds the sealed evidence snapshots used by the rating workflow. Where a population row has no matched sealed snapshot, that absence is not hidden: it appears as population risk in the leakage vector and affects the rating.

Legacy Medal Tiers

Historical TrackForge systems used Gold/Silver/Bronze/Declared as metadata-completeness labels. Those labels may still appear in:

  • Historical certificates.
  • Legacy API fields such as tier counts.
  • Internal diagnostics while systems are migrated.

They must be labelled as legacy when shown beside current rating output. They do not define the current certificate-facing methodology.

Track And Catalogue Ratings

Track-level output can expose both the track's leakage vector and, where implemented, its AAA-D rating. Catalogue-level output aggregates track and pathway state under the published methodology rules.

Historical ratings remain bound to the methodology version and hash used when they were produced.

Not-Rateable States

A failed or incomplete workflow is not a lower rating. If required evidence steps did not complete, the output should be withheld or marked not-rateable until the declared workflow has run successfully.