Glossary
Slowly changing dimension
The techniques for recording how a dimension table's attributes change over time without breaking historical reporting.
Also called: SCD, SCD Type 1, SCD Type 2
A slowly changing dimension (SCD) is a pattern for updating a dimension table when a real-world attribute changes — a customer relocates, a product is recategorized, an employee changes department — without losing the ability to report history accurately. The name distinguishes these occasional attribute changes from the fact table, which grows with every new event.
The most common approaches are named by type: Type 1 overwrites the old value with the new one, losing history but keeping the table simple; Type 2 adds a new row with a new surrogate key and effective-date columns, preserving every historical version so a past report still reflects the attribute as it was at the time; Type 3 keeps limited history in extra columns, such as "previous region." Type 2 is the default choice whenever historical accuracy matters.
Getting SCD handling wrong is a frequent cause of reports that silently rewrite history — a Type 1 dimension will change last year's sales-by-region totals the moment a customer moves, because there is no way to distinguish which region applied at the time of each historical fact. Tools like dbt and dedicated data vault patterns automate SCD Type 2 logic so analysts do not have to hand-write the merge logic themselves.
Last reviewed September 22, 2026