On this page
Data quality in Golden
Understand the Golden record-quality score, what moves it, what it deliberately does not mean, and how saved table measurements support comparison.
Golden measures records against their dataset’s quality rules. A measurement can contain a score from 0 to 100, findings, counts, a definition, and a calculation time. It describes conformance to those rules, not whether a customer is real or two records describe the same person.
Quality score calculation
For simple fields, a mandatory field has weight 2 and an optional field has weight 1. Passing fields contribute their weight; a failed field does not. The proportion of earned points to available points is expressed as an integer percentage. Repeated and nested structures have their own contributions: use the record’s quality explanation instead of counting visible JSON members.
The result has these boundaries:
| Condition | Result |
|---|---|
| An error remains | The final score cannot exceed 99 |
| Some points are earned | Rounding does not turn the result into zero |
| No points are earned | The score is zero |
| Nothing is measurable | No numeric score is reported |
| Only warnings remain | A score of 100 is still possible after rounding |
A warning can reduce its field’s contribution. The additional whole-record ceiling applies to errors, not to warnings.
A worked example
Immediately after installing Aurelia, before editing or resolving duplicates,
Ana’s CRM-0001 record has 14 available points. Thirteen points are earned. The
phone 611000000 is not in its normalized form and contributes no point.
100 × 13 / 14 = 92.857… → 93
The quality explanation reports score 93, available points 14, no errors,
and one warning at phone. A draft containing the same business fields and
phone +34611000000 measures 100 with no findings. This is a measurable
formatting improvement; it does not verify the telephone belongs to Ana.
Follow Read quality in Aurelia to reproduce both measurements without modifying the installed sample.
Quality metadata on a record
Read _metadata._quality with the record’s top-level qualityState:
| State | Meaning |
|---|---|
CURRENT | The stored quality definition matches the current definition |
STALE | Measurement information remains but its definition differs or is missing |
UNCALCULATED | Neither a definition nor a measurement has been recorded |
This is not determined by comparing _quality_calculated_at and _updated.
A definition change can make a stored score stale without changing a business
value. CURRENT does not guarantee a numeric score when nothing is measurable.
Non-current responses omit detailed findings and their error/warning counts. They can retain the previous score alongside its state. Missing findings do not mean the record passed validation.
Use the metadata reference for exact paths.
Use messageKey to identify a finding programmatically; localized message
text is for readers. schemaPath names its field definition and recordPath
locates the affected value, including an item in a repeated structure.
Changes that affect measurement
Tokens, validation rules, mandatory values, nested structures, and repeated values affect measurement. Cleaning and transformations can change what is stored and therefore what is measured. A completed load can still contain invalid or missing data; a cleaner’s error policy is a separate decision.
Compare measurements only when their definitions and coverage are comparable. A higher score after relaxing a rule is not evidence of improved source data. Datasets with different available points give the same defect different weight.
From records to a table
The Quality overview displays a saved observation: either a daily snapshot for a closed UTC day or an on-demand measurement with its actual measurement time. Aurelia’s installer saves an initial measurement, so its quality can be read without waiting for a daily snapshot. Opening the page does not recalculate records or create another measurement.
Read the selected observation’s date, definition, and coverage before interpreting its mean, histogram, or issue ranking. Measuring on demand aggregates the stored record measurements; it does not make stale records current. Both kinds of observation are table-wide aggregates; they do not become row-scoped aggregates for a restricted reader. See Metrics for the response and access conditions.
For comparison, a fresh Aurelia installation has this distribution of current record scores, before any exercise:
| Score | Records |
|---|---|
| 93 | 250 |
| 86 | 53 |
| 79 | 28 |
| 71 | 47 |
The arithmetic mean is 88.25 when displayed to two decimal places. All 378 records have at least one warning; 17 also have an error. These are counts from the initial records, not a promise about a snapshot after subsequent edits.
Improve the outcome
- Read the findings for a record, not just its score.
- Identify whether the authoritative source or a Golden transformation should change.
- Check a corrected draft and inspect the resulting findings.
- Apply the chosen correction through the appropriate write or load operation.
- Read back the stored record and measurement; a draft check alone saves nothing.
- Request a new measurement, or use the next daily snapshot, to assess the table-wide change. Check its date, definition, and coverage.
See Investigate data quality and Configure validation and quality.