---
title: "Levels: catalogue check and catalogue rating"
description: "A catalogue check reads public registries only and issues no letter. A catalogue rating adds the owner's attestation and in-route evidence, applies coverage minimums and issues a letter. A third level is set aside."
image: "https://trackforge.studio/docs/img/trackforge-social-card.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://trackforge.studio/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Levels: catalogue check and catalogue rating

:::caution[Draft rule book, not yet calibrated]
The coverage minimums a catalogue rating applies are starting values in the draft rule book v2.4; the [method statement](/docs/certification/rating/method-statement#from-scores-to-a-letter) gives them.
:::

TrackForge surveys a catalogue at one of two levels. They differ in what evidence goes in and in whether a letter comes out.

## Tier 0: catalogue check

A catalogue check reads **public registries and identity data only**: the works the owner has listed, read against sources TrackForge can reach without the owner's help. It says, work by work, what those sources show and what they could not check.

- **No letter is issued.** The check reports components, coverage and defects, but no grade: without the owner's attestation of what they own, a letter would be a guess.
- **"Not checked" is said plainly, with its reason.** A route a public source cannot answer for is reported as not checked, not as sound. For a UK catalogue checked from public data alone, the UK routes are reported as not checked.
- **No coverage minimums apply**, because nothing is being graded.

## Tier 1: catalogue rating

A catalogue rating adds the owner's side of the evidence:

- **The owner's attestation**: the population of works, the rights positions held on each, society memberships and collecting routes, the channel mix of the catalogue's income, and the remediation history. The attestation fixes the population before any lookup runs; it decides no state.
- **In-route exports**: the owner's own lists from the societies that collect for them, such as a complete works list from a performing-right society.
- **Statements and agreements where supplied.** Statements feed the collection component; agreements feed title.

With that evidence the survey can say whether what the societies hold agrees with what the owner says they own. Then:

- **A letter is issued** when the coverage minimums are met, and withheld, with its reasons named, when they are not. No letter is issued while a single work carrying a material share of the catalogue's weight is not checked because evidence was not supplied, it was not reached in the run, or a source could not be read. A rating is never issued while any work at all was not reached in the run; a draft can be.
- **Coverage minimums apply** to identity, title and registration at every primary route in scope. Above the minimum, coverage still caps the letter on a ladder, so a thinly evidenced catalogue cannot reach the top letter.

The attestation is stored with its hash, bound to the population it covers; a later change to the population needs a new attestation. The attestation's hash is a field of the [tuple](/docs/certification/rating/the-tuple).

## Tier 2: asset integrity assessment

A third level, the asset integrity assessment, would add a cash bridge from statements to bank, population reconciliation, exceptions and independence disclosures for a lender or buyer. It is named in the rule book and set aside; nothing on these pages depends on it.

## Which level a Workspace catalogue gets

A catalogue kept in the TrackForge Workspace can be checked from its saved works at the first level with no action by the owner beyond saving the works. The second level needs the owner's attestation and uploads. What crosses from the Workspace to the rating is set out under [data handling](/docs/certification/rating/data-handling).

Source: https://trackforge.studio/docs/certification/rating/levels/index.mdx
