modeling-warehouse-foundations
Installation
SKILL.md
Modeling warehouse foundations
Everything the domain modeling skills (revenue, conversion, activation, product usage, dimension tables) share: how to turn a metric definition into a durable, reusable model on one of two stacks. Read the relevant reference on demand — this entry point is a map, not the whole story.
A "model" here is a named, queryable object that encodes a metric or dimension once so every insight, dashboard, and downstream model reuses the same definition instead of re-deriving it. Two ways to build one:
| Stack | What a model is | Build with | Best when |
|---|---|---|---|
| PostHog-native | A saved query (view), optionally materialized into a physical table | posthog:view-create → posthog:view-materialize (HogQL) |
Data already lives in PostHog (events, persons, or a connected warehouse source); you want it usable in insights/dashboards/SQL with no extra infra. |
| dbt / external | A dbt model (.sql) in staging/ → marts/, tested via schema.yml |
dbt, run in the user's own scheduler/CI | The team already runs dbt, needs multi-step lineage/tests/CI, or models data that lives outside PostHog. |
Pick one per model; you can run both stacks side by side across a project. Details:
references/posthog-views.md and
references/dbt-project.md.