Skip to content
← Back to guides

Kimball Dimensional Modeling

5 min read

Kimball dimensional modeling is the most influential methodology for designing analytical data warehouses. Developed by Ralph Kimball and his colleagues over several decades, it provides a systematic process for translating raw operational data into structures that business users can query intuitively. The end result is almost always a star schema -- fact tables surrounded by dimension tables -- but the methodology is about far more than table shapes. It is a disciplined approach to understanding business processes and making design decisions that serve analysts for years.

The Four-Step Design Process

Kimball's methodology follows four steps, always in this order.

Step 1: Select the business process. A business process is a measurable activity that the organization performs repeatedly. Sales transactions, order fulfillment, customer support tickets, website visits, inventory snapshots -- each of these is a distinct business process. The key insight is that you model one process at a time, not the entire enterprise in a single pass. This makes dimensional modeling inherently incremental and bottom-up.

Step 2: Declare the grain. The grain defines what a single row in the fact table represents. "One row per line item per sales transaction" is a valid grain. "One row per customer per month" is also valid but produces a very different model. Declaring the grain is the most critical decision in the process because every subsequent choice -- which dimensions apply, which facts are measurable -- follows from it. If the grain is ambiguous, the model will be unreliable.

Step 3: Identify the dimensions. Once the grain is set, the dimensions emerge naturally. For a sales transaction at the line-item grain, the dimensions are typically date, product, customer, store, and promotion. Each dimension provides the descriptive context that analysts use for filtering, grouping, and slicing. The question to ask is: "By what attributes would a business user want to analyze this fact?"

Step 4: Identify the facts. Facts are the numeric measurements that occur at the declared grain. For a sales line item, typical facts include quantity sold, unit price, discount amount, and extended revenue. Facts should be additive whenever possible -- meaning they can be summed across any dimension without producing meaningless results. Semi-additive facts (like account balances, which can be summed across some dimensions but not time) and non-additive facts (like ratios) require special handling.

The Bus Matrix

The bus matrix is Kimball's tool for planning an enterprise-wide data warehouse as a collection of dimensional models. It is a simple grid: rows are business processes (sales, inventory, returns), and columns are dimensions (date, product, customer, store). An X in a cell means that dimension applies to that business process.

The power of the bus matrix lies in conformed dimensions -- dimensions that are shared across multiple business processes. When the sales fact table and the returns fact table both reference the same product dimension and the same customer dimension, analysts can drill across processes. "Show me customers who bought product X and later returned it" becomes a straightforward query joining two fact tables through conformed dimensions.

Without conformed dimensions, each business process becomes a silo. The bus matrix prevents this by making shared dimensions a first-class planning artifact.

Why Dimensional Modeling Exists

The fundamental problem dimensional modeling solves is the gap between how operational systems store data and how business users need to analyze it. Operational databases are normalized to eliminate redundancy and support transactional integrity. This is exactly right for applications that insert, update, and delete rows throughout the day.

But analysts do not insert or update rows. They aggregate, filter, compare, and trend. Normalized schemas force them to write complex multi-table joins just to answer basic questions. Dimensional modeling restructures the same data into a shape optimized for these analytical patterns -- fewer joins, predictable structure, and vocabulary that maps to business concepts rather than system internals.

Kimball vs Other Approaches

Kimball's bottom-up, process-at-a-time approach contrasts with Bill Inmon's top-down enterprise data warehouse methodology. Inmon advocates building a centralized, normalized integration layer first, then deriving dimensional marts from it. Both approaches have merit, and many modern architectures blend elements of each. For a detailed comparison, see Kimball vs Inmon.

A third alternative, Data Vault 2.0, takes yet another approach -- optimizing for auditability and incremental loading rather than direct query performance. Data Vault is often used as a staging layer that feeds downstream star schemas for reporting.

Practical Starting Point

If you are new to dimensional modeling, the best way to learn is to model a single, familiar business process. Pick something concrete -- retail sales, website analytics, helpdesk tickets -- and walk through the four steps. Define the grain, list the dimensions, identify the facts, and sketch the star schema. The Introduction to Star Schema Design blog post does exactly this with a retail sales example, showing how the methodology translates into actual table structures.

The methodology scales. The same four steps that model a single sales process also guide enterprise-wide warehouse design when combined with the bus matrix. Start small, conform dimensions as you add processes, and let the architecture grow organically from real business requirements.

Try it yourself — paste a schema and get a star schema in seconds.

Try the demo free
datamodelassistant.com

AI-assisted dimensional modeling. Kimball star schemas and Data Vault 2.0 from your source schema.

© 2026 datamodelassistant.com