Agency Portfolio Rollup: Tool-Attributable Lift Across 15 Client Accounts

A practical method for aggregating tool-sourced wins across a mixed client book into one defensible portfolio lift number — margin-weighted, outlier-safe, and ready for the pitch deck.
Quick answer
Roll up tool-attributable lift across your client book by (1) isolating wins the tool actually caused vs the strategist, (2) weighting each client's contribution by retainer margin rather than raw revenue lift, and (3) capping any single account at ~20% of the portfolio number so one outlier can't carry the deck. The output is one blended figure — typically expressed as incremental gross profit per €1 of tool spend — that survives scrutiny in both the internal consolidation memo and the new-business slide.
Agency Portfolio Rollup: Tool-Attributable Lift Across 15 Client Accounts
A method for aggregating tool-sourced CRO wins across an agency's client book into one margin-weighted, outlier-safe portfolio lift number.
A portfolio rollup is the internal report an agency lead runs across every active retainer to answer two questions at once: is the CRO tool stack paying for itself, and what's the single lift number we can put in front of prospect 16? It stitches together per-client experiment results, filters for wins the tool actually caused, and re-weights by retainer economics so a €40k/mo apparel client doesn't get drowned out by a €4k/mo hobbyist store.
The rollup lives in two documents: the internal tool-consolidation memo (do we renew 15 VWO seats or move everyone to one snippet?) and the new-business deck (the one lift slide that survives a CFO's scrutiny).
Most agencies already track per-client experiment results. The rollup is the layer on top: a single view of the book that answers whether the tools you pay for are net-positive across all 15 accounts, not just the loudest three.
The math looks simple until you try to defend it. Client A's checkout test moved €180k in annualised revenue but runs on a 12% retainer margin. Client B's PDP test moved €22k but sits on a 55% margin. Naively summing revenue lift makes A look 8x more valuable — the reality is closer to 1.8x.
The mixed-margin problem
The core distortion in any portfolio rollup is that revenue lift and agency P&L are only loosely correlated. A big fashion retainer with heavy account-management overhead can generate spectacular topline numbers that translate into thin gross profit for you.
The fix is to stop reporting client wins in revenue-lift terms internally. Convert every win into agency-side gross profit contribution — the retainer margin multiplied by the share of that retainer the tool-driven work justifies. This is the discipline in weighting client wins by retainer margin, not revenue lift.
The vanity trap
A portfolio number built on raw revenue lift will look 3-5x better than the margin-weighted version. It's also the number a prospect's CFO will pick apart in ninety seconds. Pick the smaller, defensible figure — it closes retainers; the vanity number loses them.
Building the rollup: five inputs per client
For each active account, capture five fields: annualised revenue lift from tool-run experiments, retainer gross margin, tool-cost allocation (seats plus your loaded strategist hours), attribution confidence, and a decay flag for anything older than six months.
Attribution confidence matters more than it looks. A test where the tool surfaced the hypothesis, ran the split, and reported the result is a clean tool-attributable win. A test where the strategist wrote the hypothesis on a whiteboard and the tool merely executed the split is partial credit at best — see separating tool-attributable lift from strategist-attributable lift for the credit rules.
The decay flag handles a real question: does a checkout win from Q1 still count in a Q4 rollup? A reasonable rule is full credit for the first six months post-test, then linear decay to zero over the next twelve. The full logic sits in attribution windows when a test ended six months ago.
What a 15-client rollup actually looks like
Illustrative 15-client rollup — grouped by retainer tier, showing how margin weighting collapses the apparent revenue-lift story
| Client tier | Accounts | Avg annualised revenue lift | Avg retainer margin | Margin-weighted lift per account | Share of portfolio number |
|---|---|---|---|---|---|
| Enterprise apparel (€30k+/mo) | 3 | €165,000 | 14% | €23,100 | 34% |
| Mid-market beauty & wellness | 5 | €68,000 | 38% | €25,840 | 42% |
| Growth-tier Shopify DTC | 4 | €24,000 | 52% | €12,480 | 20% |
| Small/legacy retainers | 3 | €9,500 | 45% | €4,275 | 4% |
| Portfolio total (15 accounts) | 15 | €1,152,500 raw | — | €244,545 margin-weighted | 100% |
Two things jump out. The three enterprise accounts produce 60%+ of the raw revenue lift but only 34% of the margin-weighted number. And the mid-market beauty tier — often the quietest cluster in the agency Slack — is doing the heaviest lifting on the P&L. That's the insight the rollup exists to surface.
Guardrails: outliers, churn, and stack fragmentation
Three edge cases will break a naive rollup. The 5x outlier — one client whose single checkout redesign generated more lift than the other fourteen combined — needs a cap, typically 20% of the portfolio number, per the logic in handling the one client whose win is 5x everyone else's. Above the cap, the excess is disclosed separately as a footnote rather than baked into the headline.
Churned-client wins are the second edge case. A retainer that produced €90k in tool-driven lift then churned six months later is not the same asset as a live account — how you count it depends on whether the rollup is for internal decisions or the pitch deck. The full breakdown lives in counting churned-client wins in the portfolio number. Stack fragmentation is the third: two clients on Optimizely, one on VWO, twelve on the consolidated snippet — the incompatible-stacks rollup approach normalises across them without overclaiming.
Two documents, one number
The internal use case is the tool-consolidation memo: if the margin-weighted portfolio lift attributable to your incumbent testing tool is €244k a year against €71k in combined seat and integration cost, the ROI story is a 3.4x multiple — and the memo to kill 15 VWO seats writes itself once the alternative delivers within 15% of that number at a fraction of the cost.
The external use case is the new-business deck. Prospect 16 doesn't want a case study — they want the one portfolio slide showing average tool-attributable lift per retainer with the methodology footnoted. Done properly, that slide shortens the retainer sales cycle by a full round of stakeholder review, which is the whole point of the onboarding-client-16 workflow.
Refresh cadence and version control
Rebuild the rollup quarterly, not monthly. Monthly refreshes create noise — a single big test landing in week two swings the portfolio number by 15-20% and erodes trust in the figure. Quarterly gives enough tests to smooth the variance and matches the natural cadence of retainer QBRs.
Keep every prior quarter's rollup file. When a prospect asks how the number moved over the last year, you want a receipt, not a story. Four dated CSVs beat one polished PDF every time.
Frequently asked questions
Credit the tool for wins where it originated the hypothesis (e.g. surfaced the drop-off), executed the split, and reported significance. Credit the strategist where the hypothesis came from a whiteboard or a client conversation and the tool only ran the mechanics. Partial-credit splits (50/50) are fine for hybrid cases as long as you apply the rule consistently across all 15 accounts.
Margin, always, for any rollup that informs internal decisions. Revenue-weighted rollups look bigger but they lie about which clients actually fund the agency. A €40k/mo retainer at 12% margin contributes less gross profit than a €12k/mo retainer at 50% — the rollup should reflect that.
Cap that client's contribution at ~20% of the portfolio number and disclose the excess as a footnote. This keeps the headline defensible when a prospect's CFO asks 'is this an average or an outlier story?' — you can answer honestly and the number still holds up.
For the internal tool-ROI memo, yes — the tool did generate that lift while the retainer was active. For the new-business deck, treat them separately: showing a portfolio number inflated by churned accounts invites the follow-up question 'why did they leave?' You don't want that question in the pitch.
Twelve trailing months is standard. Anything older either decays out under the attribution-window rules or belongs in a separate historical case-study library. Twelve months also aligns with how prospects mentally benchmark agency performance during evaluation.
Normalise the inputs, not the stacks. Every client contributes annualised revenue lift, margin, and attribution confidence — regardless of whether the underlying tool was VWO, Optimizely, or a lightweight snippet. The rollup is stack-agnostic; the consolidation memo is where you actually compare stacks head-to-head.
For internal memos: incremental gross profit per €1 of tool spend (a ratio). For the new-business deck: average annualised tool-attributable revenue lift per active retainer (an absolute number). Different audiences, different units — but both derived from the same underlying rollup.
Quarterly. Monthly refreshes are noisy — one large test landing mid-month distorts the portfolio number by 15-20% and erodes trust internally. Quarterly smooths the variance and matches the QBR cadence prospects and clients are already used to.
The methodology is shared; the presentation differs. Internally you show incremental gross profit vs tool cost with all footnotes visible. Externally you show per-retainer average lift with the methodology in an appendix slide. Same source of truth, two audiences.
A defensible portfolio number lets prospect 16 skip the 'prove it works for shops like ours' round of diligence — usually a 2-4 week delay involving reference calls and case-study reviews. Replacing that with one credible slide typically compresses the retainer sales cycle by a full stakeholder review round.
See Metricuno on your data
Bring your stack — Google Analytics, Stripe, a CRM, anything — and we'll walk through the metric tree that turns your funnel into one number.