Once, the report builder was the reason customers signed.
It let them build their own dashboards. Any metric, any cut, no waiting on the vendor. Very little on the market did that at the time. It was in every demo. It closed deals. Anyone proposing a cut back then would have been argued down, correctly.
It was Core. Everyone in the building would have said so.
It is still called Core. That is the problem.
Somewhere in the years since, the ground moved. Customers stopped wanting to build their own reports. They wanted the product to tell them the answer. Competitors who once had nothing shipped clean defaults that covered what most people needed. The power users who loved the builder shrank to a stubborn few. The rest quietly stopped opening it.
None of that was a disaster. There was no single day the builder died. The value just seeped out of it, slowly, into other features and other tools.
And here is the part that did not move. The label.
The builder was still Core. Still in the deck. Still passing every quarterly maintenance review. Still staffed like the crown jewel it used to be.
So two things are in play here. A part has a label, which is what the company thinks it is worth. It also has a value, which is what it is worth today. Usually those two move together.
Drift is what happens when they come apart. The value leaves. The label stays. What you are left with is the most expensive object in a product.
I described it last time without naming it. This is its name. Core Drift.
I have argued one of these out and cut it. It was the right call and I would make it again. It also cost more than it needed to.
Obvious bloat is rarely the danger. Obvious bloat gets cut. A feature nobody defends, a service with no owner, a dead integration: those get noticed, because nothing protects them.
Core Drift is protected. What protects it is its own reputation.
Ask in a planning meeting whether the builder still earns its cost. The answer arrives before you finish the question. It's Core. That ends it. Two words that used to be true do the work of a reason, and nobody checks.
That is why it is the hardest shape to catch. Teams do have a natural defence here. They look hardest at the parts they are unsure about. Core Drift is the part nobody is unsure about, so the defence never fires.
It does leave marks, though.
The clearest one is a reason gap. Ask why a Core part matters and you get a history lesson instead of an answer. People tell you what it did. Who it won. The deal it closed back then. Nobody tells you what it is doing this quarter. The reputation is answering a question only the value should answer.
There is one more in the same family. The defence leans on "we've always," which is a fact about the past wearing the clothes of a reason.
Catch it early, because it welds.
While a part sits there labelled Core and unexamined, things get built on top of it. Integrated with it. Taught to every new hire as a fixed point. It becomes load-bearing, not because it is valuable, but because it has been there long enough for everything else to lean on it.
By the time someone admits the value left, the part is holding up things that still have value. You cannot just remove it any more. You have to excavate it.
So check before the welding starts. Not a full audit. A habit.
Every so often, make each part you call Core earn the label again, out loud, in the present tense.
Not "this was essential." Not "this is what we're known for." One sentence: here is what it does for us now, and here is who would feel it if it vanished this quarter.
If the only honest sentence you can build is about the past, you have not found dead weight. You have found drift, early, while it is still cheap to move. That is the missing question from issue one, pointed at the parts you are most sure of.
Then you have to actually remove it, and that is a different problem.
The feature that has drifted furthest is often the one that was built for a key account, early, when the founders were still in the room for feature decisions. That is how it got its label in the first place. So it has a sponsor, and the sponsor is not below you on the org chart. They are above it.
Which means when the cut lands, the last stubborn user does not file a support ticket. They call the founder. And the founder, who has not thought about that feature in three years, has to defend a decision they did not know had been made.
That is the cost. The call was right. The month afterwards was avoidable.
Two things, both before you cut.
Build the workaround first. Not a migration guide. An actual answer for the one user who will notice, ready before anything is removed, so the conversation is about what they do instead rather than what you took away.
And tell the old sponsor yourself, with the reason, before it ships. A founder who hears it from you can defend it. A founder who hears it from a customer cannot, and will remember which of those two happened.
None of that makes the cost disappear. It moves it somewhere cheap, which is one short conversation you chose, instead of a phone call you did not.
So check the old stakeholders before you remove a flagship. The label was never only in the product. Part of it has been sitting in the head of whoever asked for the thing in the first place, and nobody sent them the memo.
Core Drift is one shape, and the best disguised. There are others, and each hides in its own way. But under most of them runs the same signal, and it is not a number on a dashboard. It is something a room does.
A part has drifted. Some people can feel it. Rather than say so, they get careful. The reasons turn vague. The subject changes. The meeting moves on.
That flinch is some of the most honest information a team produces about its own bloat, and it usually goes unread. Reading it is where I go next.
Cases in this series are composites. The patterns are real, the companies are not.
The full Core and Bloat™ method, four boxes and all, sits at dirkbauer.com/core-and-bloat.html.

