Insights

Revenue growth management is a portfolio problem

A single brand isn't a single elasticity curve. The bottle and the can price like different products, and pricing them as one is how nine figures leak out.

A.Team | AI Solutions||6 min read
Revenue growth management is a portfolio problem

A Fortune 500 beverage portfolio doesn't have one elasticity curve. It has dozens. The bottle and the can of the same brand sit on different curves. The value tier and the premium tier sit on different curves. The on-premise pour and the grocery six-pack sit on different curves. Most revenue growth management software optimizes as if there were one, and that's where the money leaks out.

The default RGM question, and the one most AI pricing optimization tools are built to answer, is "what should the price be?" A model ingests historical price and volume, returns a recommended list price, and the commercial team takes a list-price action. The topline lands roughly flat, and the model takes the blame. The model was fine. The unit of analysis was wrong.

Why a single brand isn't a single elasticity curve

On a recent RGM engagement with a Fortune 500 beverage company, our data-science team found that package format changes elasticity inside the same brand, often by a wide margin and not always in the same direction. In several core brands the bottle was less price-sensitive than the can. That gap is the difference between a price increase that holds volume and one that gives it away. Raising price on the more elastic format sheds volume. Raising it on the less elastic one often doesn't, and it can shift mix toward the format that holds, lifting revenue even as the other softens.

So the move is asymmetric: a measured list increase on the low-elasticity bottle SKUs, targeted promotional depth on the high-elasticity cans, with the promo trigger pointed at the price-sensitive segment so demand absorbs the discount. Run inside a single planning window, not smeared across a year.

Two package formats, two elasticity curves. Pricing them as one is where the margin leaks.

Portfolio constraints are the hard half

Here's where the client's brand portfolio lead stopped us, and it reframed the engagement:

We have a very specific portfolio strategy, and sometimes we cannot change the price depending on the position of the brand in our specific portfolio.

Every CPG portfolio has a price architecture. One brand is the value anchor. One is the accessible-premium step up. One is the premium halo. The value brand's price can't cross the premium brand's floor. Promo depth on the halo can't compress its gap to the tier below. Some brands are funded for share and can't be promoted out of distribution. A pricing model that doesn't carry those rules will recommend the highest-expected-value move every time, and that move breaks three constraints the commercial team can never execute.

The unlock is an elasticity model that knows the rules of the portfolio it's pricing inside, and only surfaces moves that survive them.

The pricing slice alone was worth $132M

When we modeled package-level elasticity against portfolio role and ran the asymmetric mix of list movement and surgical promo against the historical data, the pricing lever alone surfaced $132M in addressable revenue opportunity. That's the pricing slice of the broader $180M we identified in a single declining market in 90 days. No headline price hike anywhere in the system. The bottles carried the increase. The cans took the promotion. The portfolio cleared $132M because the moves were made at the package layer, under the portfolio's own constraints.

A model asked "what should Brand X cost?" can't find that. The question that finds it is "across this brand's SKUs, where are we over-pressing the elastic side and under-pressing the inelastic side, given the rules we have to price inside?"

What an RGM stack actually has to carry

In A.Team's experience, most pricing AI carries one or two of these. A system that produces nine-figure surgical recommendations carries all six:

Capability

Why it matters

What generic pricing AI misses

Package-level elasticity

Glass, can, multipack, and single-serve are separate demand curves

Averages them into one brand-level curve and prices the average

Tier-aware elasticity

The cheaper the tier, the more elastic, and the more dangerous a blanket move

Applies one elasticity assumption across value and premium alike

Cross-SKU substitution

Price up a can and demand moves somewhere; the model has to know where

Treats each SKU in isolation and loses track of where volume goes

Portfolio constraints as a hard input

Price ladders, brand roles, trade commitments, and promo bands govern what's executable

Optimizes for expected value and proposes moves the team can't run

Channel and pack-format mix

A format that wins in grocery can cannibalize on-premise

Ignores channel context and double-counts the same volume

A short feedback loop

Elasticity drifts; last year's coefficients are already stale

Trains once and never updates as the market moves

Why generic AI pricing optimization can't do this

A pricing recommendation is a constrained optimization where the constraints are tacit. The elasticity curves live in your sales-out and panel data, not in any model's training set. The portfolio rules live in an RGM playbook and a brand manager's head. The substitution effects live in cross-SKU correlations only a model trained on your portfolio will surface.

A general-purpose LLM can write a memo about revenue growth management. It can't decompose your elasticity by package, encode your portfolio rules as constraints, simulate the mix shift of an asymmetric move, and tell you which SKUs to touch and which to leave alone. That takes a system built for your portfolio, learning from your executions, priced inside your rules. It's one of the clearest AI agent use cases in CPG: a pricing agent scoped to the data the function already owns, moving a number the business already reports.

The pricing agent, built on your portfolio rules

A.Team doesn't drop in a pricing SaaS. We build the elasticity stack on your own sales-out, panel, and shipment data, and encode your pricing playbook, the price ladders, brand roles, and trade and promo commitments, as hard constraints, so the model only surfaces moves the commercial team can actually run. The pricing agent watches the elasticity surfaces and competitor moves and flags an out-of-corridor price move with its reasoning, the volume impact, and a cannibalization estimate. A person approves it; the agent never prices on its own.

We prove it on a 90-day lighthouse: one portfolio, one market, a static dataset to a working model first, then live connectivity. That sprint is where the $132M pricing opportunity came from, the largest slice of the $180M identified in that market, and it surfaced because the model produced package- and brand-specific elasticities rather than a portfolio average. To be precise about that number: it's an identified opportunity, not booked revenue. The model sizes the move and shows its reasoning; activation sits with your pricing committee. That's the honest shape of the work: we find the nine figures fast and hand execution to the team that owns the price.

The headline price-hike conversation is the easy one. The surgical, portfolio-aware one is where the nine figures are. Price the portfolio like a portfolio.

See how the planning intelligence system works →

A.Team AI Solutions builds intelligence systems for Fortune 500 consumer brands. The engagement referenced is anonymized to role and business unit.

Revenue growth management

Frequently asked questions

Revenue growth management is the discipline of growing net revenue and margin through pricing, price-pack architecture, promotion, and mix, rather than volume alone. In practice it decides what each SKU should cost, where to promote, and how the portfolio's brands relate to each other on price.

Because a brand isn't a single product on a single demand curve. Its bottle, can, multipack, and single-serve respond differently to a price move, and so do its value and premium tiers. Optimizing one list price averages across those differences and leaves money on the table. The lever is the package and portfolio mix, not the headline price.

Brand-level elasticity treats every SKU in a brand as one demand curve. Package-level elasticity measures each format separately, because a glass bottle and a can of the same brand often carry very different price sensitivity. Pricing at the package level is what lets you raise price where demand holds and promote where it doesn't.

Only if the constraints are built in. An AI pricing optimization system has to ingest price ladders, brand roles, trade commitments, and promo bands as hard rules, then recommend only the moves that survive them. A model that optimizes for expected value without those rules will keep proposing actions the commercial team can never execute.

A scoped pricing agent can be live in about 90 days on a lighthouse-pilot model: connect one function's data, define the moves it can recommend, keep a person in the loop on high-stakes calls, and prove it against a real commercial number before scaling. Early signals come within the first sprint, not at the end of a quarter.

Related Insights
All insights
Revenue Growth Management Is a Portfolio Problem, Not a Price Problem | A.Team AI Solutions | Insights | A.Team