/BLOG
Why semantic layers fail at organizational scale
What breaks semantic models once they become shared infrastructure.
← JournalAt a small scale, semantic models feel simple. There’s one dataset, a few reports, and changes happen quickly. Everyone roughly understands what depends on what, and problems are easy to reason about. The model feels close, familiar, and manageable.
That illusion doesn’t survive growth.
As soon as a semantic model starts powering dozens of internal reports, feeding downstream models, supporting paginated reports, and enabling thousands of self-service objects, something fundamental changes. The semantic layer stops being a BI artifact and quietly becomes shared infrastructure.
Most teams don’t notice the moment when that happens. There’s no big migration or architectural rewrite. The model still works, reports still refresh, and new logic keeps getting added. From the outside, everything looks fine. Internally, the ground is already shifting.
When a semantic model becomes infrastructure
This is where many semantic layers begin to degrade. Not because of a single bad decision, but because of a pattern that feels harmless at first. The model starts being treated like a shared folder. Someone adds one more measure because it’s faster than asking questions. Temporary logic slips in under pressure and never leaves. Slightly different definitions coexist because they mostly match and changing them feels risky.
Over time, the model also starts growing sideways. New tables are added because another team wants their data included. Columns are pulled in “just in case” because someone might need them later. The goal slowly shifts toward having everything available in a single dataset, with as many KPIs as possible exposed at once. What started as a focused semantic layer turns into a catch-all container.
No individual addition looks dangerous. Each table has a reason. Each column answers a request. But together, they increase cognitive load, blur boundaries, and make it harder to understand what the model is actually responsible for. The damage accumulates quietly.
This usually isn’t the result of negligence or bad intent. It’s what naturally happens when many teams share the same surface without strong guardrails. The system keeps delivering value, so nobody feels urgency to slow down and clean things up. The cost is spread thinly enough that no single person feels responsible for it.
Ownership is often where the cracks widen. Ask who owns the semantic model and the answer is rarely clear. Sometimes it’s the BI engineer. Sometimes it’s a business stakeholder. Often it’s “everyone,” which in practice means no one.
When ownership is blurred, cleanup is always postponed. Temporary decisions become permanent by default. Technical debt grows steadily, without an owner who feels the cost of carrying it.
For a long time, the model still appears to work. Numbers look plausible. Consumers keep trusting it, mostly out of habit. Then one day a small change breaks something unexpected, or two reports stop agreeing, or confidence erodes just enough that people start questioning the outputs.
The failure rarely arrives loudly. It arrives after a long period of quiet decay.
What has to change once that happens
At this point, the instinctive reaction is often to look for better tools. More governance features, stricter permissions, another abstraction layer. In practice, tooling alone rarely fixes the underlying problem.
The real shift has to be mental. Once a semantic model becomes shared infrastructure, it can no longer be treated as lightweight or disposable. The rules have to change, even if the technology stays the same.
The model needs a clear owner. Not a committee and not a vague shared responsibility, but someone accountable for its shape over time. Without that, every compromise is rational in the moment and harmful in aggregate. Someone has to be allowed to say no, and someone has to feel the long-term cost of decisions.
Change also needs friction. Not bureaucracy, but intent. When adding or modifying logic is effortless, inconsistency becomes inevitable. At this stage, guardrails matter more than flexibility, because stability becomes the primary value.
Most importantly, semantic models need to be treated like products, not dumping grounds. Scope matters. Not everything belongs in one dataset, and not every KPI needs to be available everywhere. Definitions should be explicit and visible. Breaking changes should be allowed, but never silent. “Temporary” logic should be rare enough that it actually feels temporary.
None of this guarantees success. But without these constraints, scale turns semantic layers into fragile systems held together by habit and hope. Tools can support discipline, but they can’t replace it.
Once a model becomes infrastructure, treating it as anything less is simply dishonest. And the longer that reality is ignored, the harder it becomes to fix.