Multi branch retailers usually start with one price list because it is the only manageable option. Head office sets the price, every branch charges it, done. Then reality arrives. The Tuguegarao branch pays freight that the Manila branch does not. A competitor two doors down from one branch starts undercutting a hero SKU. A branch manager begins quietly giving discounts to stay competitive, and now you have branch level pricing anyway, except nobody approved it and nobody can see it.
The honest case for different prices
The same SKU genuinely costs and competes differently by location:
- Landed cost differs. Trucking a sack of cement to a provincial branch can add real pesos per unit. Uniform pricing means that branch earns structurally thinner margin on every bag, invisibly.
- Competition differs. A branch facing an aggressive local rival on GI sheets needs pricing room. A branch that is the only serious supplier in town is leaving margin on the table at the uniform price.
- The market differs. Contractor heavy areas buy volume and negotiate. Walk in retail areas buy pieces and do not. One list cannot serve both postures well.
The honest case against
Uncontrolled branch pricing is worse than uniform pricing. If managers can change prices freely, you get margin leakage that looks like sales, favored customers getting quiet deals, and a margin report that cannot be compared across branches because the prices underneath it are drifting. Some businesses discover a branch has been selling a fast mover below landed cost for months. Nobody was stealing. Someone typed the wrong override a long time ago, and no system flagged it. That is the real risk of informal flexibility: not bad intentions, but unreviewed decisions aging silently, the same quiet leak that lives in unreconciled branch transfers.
How do you localize pricing without chaos?
The answer is branch level pricing as a controlled feature, not a habit. Head office sets the base price and a floor per SKU, for example landed cost plus 8 percent minimum. Branches may hold a local price within the band, proposed by the manager, approved by head office, recorded with a reason. Every override is logged: who, when, which customer, how far from base. The margin report then shows each branch against its own approved prices, and exceptions surface weekly instead of never. Managers get the flexibility that lets them compete. Owners keep the visibility that lets them sleep. The floor is the piece most operations skip and most regret skipping. An override that respects a landed cost floor can cost you some margin. One that does not can cost you the margin and the principal. Systems enforce floors without arguments, which is exactly what makes them better at it than people.
When should you switch to branch level pricing?
Do not localize pricing because the feature exists. Localize when the data tells you to: when landed cost per branch differs by more than a couple of percent, when a specific branch is losing identifiable sales to a local competitor, or when your discount log shows managers are already overriding constantly, which means the uniform list is fiction anyway. Start with a pilot: one branch, twenty SKUs, floors enforced by the system, results reviewed after a month. Branch level pricing makes sense exactly when it is a decision you make with numbers, and a disaster when it is a thing that happens to you one override at a time. Revisit the bands quarterly: freight rates move, competitors close, markets shift, and a localized price that was right in June can be leakage by December. If none of the signals are present, keep the single list and enjoy the simplicity. Complexity should be purchased only when it pays.
Localize pricing without losing control
We build pricing controls into multi branch ERPs: branch rules, floors, and audit trails, so flexibility never turns into leakage.
See the ERP We Built Tell Us About Your Branches