Skip to content
Arya PawarProduct Designer

Rebuilding a media simulator that planners kept leaving for spreadsheets

A global CPG company had a media simulator that told planners where to put their money. But it planned one cell at a time (market × brand × region × sub-brand), only from a budget, and everything sat on one page. Planners don’t plan one cell, though. They plan a whole portfolio. So a planner covering four brands ran four scenarios, stitched them together in Excel before anything could go to their leadership, and dropped off. The new simulator asks what you’re trying to do first, and plans the whole portfolio in one run.

Client
A global CPG company
Role
Sole designer
Process
User interviews, three approaches, OOUX, flows, edge states
Timeline
3 months
One cell → One portfolioMedia simulatorBeforeEverything on one pageFilters, scope, rules, budgetRun it once per brandSame setup, four times×4Stitch it in ExcelOutputs merged by hand4 runsAfterApproachSpend, goal or in flightScope4 brands, 1 portfolioPlanOnly stage that changesRunOnceCompareSide by side1 runBefore: one brand at a time, stitched together by hand.After: pick what you’re trying to do, then one journey.4 runs → 1 run. One portfolio, planned together.

At a glance

What moved

Per portfolio plan, down from four scenarios and an Excel file

1 run

Per portfolio plan, down from four scenarios and an Excel file

Ways to plan: from a budget or from a target

2

Ways to plan: from a budget or from a target

Stages, the same for every approach

5

Stages, the same for every approach

New objects: combination, portfolio, constraint

3

New objects: combination, portfolio, constraint

What was wrong with the old simulator

The model was fine, right? It did single-cell planning well. It just didn’t scale to how planners actually work.

  • One combination per run. Each run covered one cell. A portfolio plan meant several runs, and the planner had to reconcile the outputs by hand.
  • Only one way to plan. You could only go forwards from a budget. You couldn’t start from a business target and let the tool work back to the spend. And that’s the most common question planners get asked.
  • Everything on one page. Scope, constraints and setup, all together on one screen. Fine for one cell. Really heavy once a plan covered many.
  • Nothing got saved. Market, brand, region, sub-brand were just filters. The screen read them, and then they were gone. So you set up the same thing every single time.
  • Problems showed up after the run. You’d only find out something was off once the run had already gone out and come back.

The bigger the plan, the more the work multiplied. The tool didn’t take on any of that scale. The planner did.

The old simulator on one page: KPI cards, Create New Portfolio, an Existing Scenarios table, Create New Scenario, and a constraints table with a hierarchy tree, all stacked together. Names are blurred.
The old simulator. Portfolio, scenarios, setup and constraints, all on one page. Names blurred.

The jobs

These came out of the user interviews and all the feedback on the old flow. They’re what planners were actually hiring the simulator to do.

  1. 01

    “Let me plan my whole portfolio in one go.”

    When I plan across several brands and markets, I want to plan them together, so I don’t run four scenarios and stitch them in Excel.

  2. 02

    “Let me start from my target.”

    When I’ve got a business target, I want the tool to work back to the spend that gets me there, so I can answer the question I actually get asked.

  3. 03

    “Ask me what I’m trying to do first.”

    When I start a plan, I want to pick my approach first, so I only see what matters for it.

  4. 04

    “Let me reuse my setup.”

    When I’ve built my scope once, I want to save it and plan with it again, so I’m not re-entering the same thing every cycle.

  5. 05

    “Tell me what won’t work before I run it.”

    When a combination isn’t available or data is missing, I want to know at setup, so I’m not waiting on a run that fails.

  6. 06

    “Let me compare my options.”

    When I’ve got two plans, I want to see them side by side against last year’s numbers, so I can pick the one I’ll present.

What was delivered

So the simulator got rebuilt around intent. You say what kind of planning you’re doing, and everything after that adapts to it.

In the old simulatorIn the new simulator
One cell per runA portfolio: many brand-market combinations, planned together in one run
Only forwards from a budgetPick your approach: Spend based, Goal based, or In flight
Everything on one pageOne journey in five stages: Approach → Scope → Plan → Run → Compare
Scope was a filter that disappearedScope is something you build, name, save and reuse
Errors after the runProblems caught at setup, before anything runs
Comparing only the same typeCompare across approaches, against the MAT baseline

Role: Sole designer. Discovery, user interviews, the three approaches, OOUX, flows and all the screens.

Three approaches

So after discovery and the interviews, it came down to one question: what does a planner want to know when they open this tool?

There were three good answers to that. Each one got mapped as a full journey, from landing to results, with what it’s good at and what it costs. Then all three went to the client, with the pros and cons laid out side by side.

  1. Option 1

    Inline

    They know nothing new. Same entry, same screens as today.

    1. Existing scenarios
    2. New scenario
    3. Inline filters
    4. Save as portfolio?
    5. Set constraints
    6. Run
    7. Results + compare
    Optimises for
    Adoption. It mirrors the current flow exactly, so nobody has to relearn anything.
    Trades away
    Portfolio clarity. Planners don’t see a portfolio until they’ve already done the work, so multi-brand planning stays hidden.
    When it wins
    The portfolio only shows up when it actually adds value, not as a forced step.
    Risks
    The “Save as portfolio?” prompt becomes one more dialog people close without reading.
  2. Option 2

    Portfolio first

    They know their portfolio. The portfolio is the first thing they see.

    1. Portfolio shelf
    2. Pick or create a portfolio
    3. New scenario (scoped)
    4. Set constraints
    5. Run
    6. Results + compare
    Optimises for
    Clarity. The portfolio is the first thing on screen, so the idea sinks in before anything else.
    Trades away
    Ease for people coming from the old tool. They have to make or pick a portfolio before they can do anything, and that’s a new step.
    When it wins
    Multi-brand category leads, and second-time users who’ve already built up a few portfolios.
    Risks
    An empty screen on day one, and “why do I have to make a portfolio first?” in every demo. Single-scenario users get an extra click.
  3. Option 3Recommended

    Intent first

    They know their goal. What they’re trying to do is the first thing they pick.

    1. Pick your intent
    2. Scope (portfolio or filters)
    3. Set up for that intent
    4. Constraints (or skip)
    5. Run
    6. Results for that question
    Optimises for
    Decision speed, for planners who already know what they want.
    Trades away
    Exploring. Once you pick an intent, the screens commit to it, so someone who doesn’t know yet gets stopped at the door.
    When it wins
    Repeat work, like running the same kind of plan every week. And In flight becomes a real choice, not something buried in a dropdown.
    Risks
    It’s a new pattern, so it needs some learning. And someone asking “what can I do here?” has no neutral way in.

Why intent first

We recommended intent first, and the client went with it. Three reasons:

  • Planners come in with a question. So the first screen asks it back.

    It starts with their question

  • The portfolio doesn’t go away. It just happens while you scope.

    The portfolio stays

  • Each screen only shows what that intent needs.

    Less on every screen

And the risks are covered: recent optimisations give a way in without picking anything, and one journey means the new pattern is learned once.

One journey for every approach

So now, you pick your approach first. But it’s not a different flow for each one. The same five stages carry every approach, and only the Plan stage changes.

Spend based

I have a budget

  1. Approach
  2. Scope
  3. Set budget & rules
  4. Run
  5. Compare

Goal based

I have a target

  1. Approach
  2. Scope
  3. Set target & rules
  4. Run
  5. Compare

In flight

Coming next

  1. Approach
  2. Scope
  3. Plan adapts
  4. Run
  5. Compare

Scope, Run and Compare stay exactly where they were. So a planner learns one journey, and a new approach doesn’t reset that.

A day in the life, before and after

Let’s say you’re a planner, and you’ve got four brands across a couple of markets this quarter.

Before

  1. 1

    Open the simulator

    One page. Set the filters for brand one.

  2. 2

    Fill in everything

    Scope, constraints, budget, all on one screen.

  3. 3

    Do it again

    Same setup for brands two, three and four.

  4. 4

    Guess a budget

    Your boss wants a target hit. The tool can’t start from one.

  5. 5

    A run fails

    Something wasn’t available. You find out now.

  6. 6

    Stitch it in Excel

    Four outputs, by hand.

4 runs + an Excel file

After

  1. 1

    Pick Goal based

    You’ve got a target, so you start there.

  2. 2

    Build your scope

    All four brands, in one place.

  3. 3

    Save it as a portfolio

    Next cycle, it’s already there.

  4. 4

    Set target and rules

    Apply a rule to many rows at once.

  5. 5

    See the flag at setup

    One combination isn’t available. Fixed before you run.

  6. 6

    Run once, then compare

    Side by side with a Spend based version.

1 run

The decisions that shaped it

Picking intent first was the big one. These are the calls that came after it.

  1. 01

    One journey, not one flow per approach.

    Every approach runs Approach → Scope → Plan → Run → Compare. Only the Plan stage changes. So planners learn it once, and goal based went in without a new flow.

  2. 02

    Scope became something you can save.

    It used to be a filter the screen read and threw away. Now it’s combinations you build, name as a portfolio, and plan with again next cycle.

  3. 03

    Rules live on their own.

    A constraint is a spend rule for a scope × channel, kept separate from the screens. So new kinds of rules extend it, instead of changing how planning works.

  4. 04

    Catch problems at setup, not after the run.

    Combinations that aren’t available in a market, missing data and locked rows show up while you’re setting up. Nobody waits on a run that comes back failed.

  5. 05

    Compare across approaches.

    A spend based plan and a goal based plan sit side by side, against the MAT baseline, so the planner picks the one they’ll present.

  6. 06

    Show In flight before it’s live.

    It sits on the landing as inactive, so planners know it’s coming, and the structure it needs is already there.

The process

  • Discovery and user feedback. Went through everything users had said about the old flow, and where it was breaking.
  • User interviews. Talked to planners about how they actually plan across a portfolio, and where the time really goes.
  • Three approaches. Inline, portfolio first and intent first, each mapped as a full journey with its trade-offs. All three went to the client, and we recommended intent first.
  • OOUX. Mapped the old tool as objects. That’s where the real problem showed up: scope was never an object. It was just a filter the screen read and then threw away. So any request to work across more than one cell had nothing to attach to.
  • One journey. Five stages for every approach, with only the Plan stage changing.
  • The states nobody sees. Five screens, and a lot of their states are about failures, limits and missing data. The old tool showed problems after a run had already gone out. These get caught at setup.

Three objects hold it together

The OOUX map of the old tool showed the real problem: scope was never an object. So three had to exist before any of this could work. The planning hierarchy and the media hierarchy never touch directly. They only meet through a junction object, and that object holds the relationship.

Planning hierarchyMarketBrandBusiness groupRegionSub-brandJunction objectCombinationone cell of scope1–manyPortfolionamed, saved, reusedUsermarket-scoped accesscreateshas 1–manyScenariospend or goal basedTargetgoal based only0–1Junction object1–manyConstraintscope × channel ruleMedia hierarchyChannelPlatformCampaignhas 0–manyRunqueued · running · failedproduces 1Resultvs the MAT baseline2–manyComparisonacross approachesJunction: the linkholds its own dataOnly for one approach
  • A new kind of rule

    Constraint

    Rules are their own object, so a new one extends it. Already proven: today’s channel spend rules run on it.

  • A new approach, like In flight

    Scenario · Plan stage

    Approach, Scope, Run and Compare don’t care which type made them. Already proven: goal based went in this way.

  • One cell or a whole portfolio

    Combination

    A portfolio is just a set of combinations, so there are no special cases. Already proven: portfolio planning runs on it today.

So every time a new request comes in, it plugs into one of these objects. The work goes into the new feature, not into rebuilding what’s underneath.

Final design

  1. 01

    Pick your approach

    Start a new optimisation screen with three cards: Spend Based, Goal Based and In Flight, each with a start button.
    Start a new optimisation: Spend based, Goal based and In flight.

    This wasn’t there before. You say what kind of planning you’re doing first, and the rest of the flow follows from that.

  2. 02

    Pick up where you left off

    Recent Optimizations list with filter chips for single cell, portfolio, goal based, spend based and run status. Each row shows scope, granularity, quarter, ROI, spend and who created it. Brand names are blurred.
    Recent optimisations, filtered by type or status. Brand names blurred.

    Every run is listed with its scope, quarter, ROI and spend. Filter by type or status, and open the results straight from here.

  3. 03

    Build your scope

    Scope setup screen before any brands are added: scenario details and time period at the top, a searchable brand list on the left, an empty Your Scenario panel, a target spend slider, and a MAT reference panel on the right. Brand names are blurred.
    Scope setup, before any brands are added. Brands on the left, your scenario on the right, MAT reference alongside.

    Add brands, build the combinations you want to plan together, and save them as a portfolio. Last year’s numbers sit right next to it, so you always know your starting point.

  4. 04

    Set your rules once

    Set constraints table at channel level. Two rows are checked with Apply to checked active, rules come from a reference scenario, two rows are locked, and the table shows 1–10 of 37 rows.
    Set constraints: two rows checked, rules taken from a reference scenario, two rows locked.

    Check the rows, apply a rule to all of them at once, or start from a past scenario. Even at 37 rows, it stays manageable.

  5. 05

    Read the result

    Scenario results: KPI cards for spend, incremental sales, volume, ROI, MROI, market share and profit against MAT, a results breakdown bar chart, and a platform breakdown table comparing optimised and MAT values.
    Scenario results against the MAT baseline, broken down by platform.

    The result sits against last year’s numbers. If the target isn’t met, you see the shortfall, not just a “no”.

  6. 06

    Compare and decide

    Scenario comparison: two scenarios picked at the top, KPI cards with both values, outcome bars side by side, and a channel comparison table with a MAT baseline toggle. Scenario names are blurred.
    Scenario comparison: two scenarios side by side, with the MAT baseline one toggle away.

    Put two plans side by side, even across approaches, and decide which one you’re taking into the room.

Outcome

4 → 1. What took four scenarios and manual consolidation is now one portfolio, one run, one result.

  • Two ways to plan. Planners can now start from a budget or from a target, in the same journey.
  • Built to extend. In flight, and any new kind of rule, slots into the same flow. Goal based was already added this way. So the next piece of work goes into the new feature itself, not into rebuilding what’s underneath.

The designs are handed off to engineering and not in production yet.