Andrew Lauchner

Notes

Revenue per recipient is the only flow metric that survives contact with a real account.

Total revenue tells you how big the list is. Revenue per recipient tells you what the program is actually doing — and in every account I have opened, the flows whose entire job is producing the second order sit at the bottom of that column with the biggest audiences above them.

2,140 words · about nine minutes at 240 words a minute

The first thing I ask for is not a revenue report. It is a flow export with the send count still attached, because a send count is a denominator and a revenue report on its own is not a measurement of anything.

◆ Opening two or three paragraphs, in Andrew’s voice: the moment on a call when somebody reads out a flow revenue number and the room treats it as a result. No invented numbers.

Here is the version of that column I am allowed to publish. It is two accounts, anonymised, with absolute revenue removed and the axis on a log scale so that a flow earning cents and a flow earning dollars can appear in the same picture without one of them becoming a stub.

What the column is

Revenue per recipient is one division: attributed revenue for a flow, over the number of people that flow actually sent to in the same window. Not opens. Not clicks. Recipients. It is the only flow number that answers the question a CFO actually asks, which is what one more person entering this flow is worth.1

Total flow revenue answers a different question, and it is a question about list size. A post-purchase series attached to every order in a large account will out-earn a checkout-abandonment series in absolute terms while earning a fraction of it per person, and the account will read that as the post-purchase series working.

In the first account, 93,808 post-purchase sends earned 11 to 15 cents each while checkout abandonment earned $1.86.

From the caption on the homepage chart, published 22 Sep 2026

◆ The paragraph that turns the observation into a mechanism: why the flows nearest the purchase earn most per recipient, and why that is a fact about intent rather than about copy.

Deriving it from an export you already have

Three columns and one division. If your platform gives you a flow report with recipients and attributed revenue over a fixed window, you are done in a spreadsheet. If it gives you revenue and a percentage of total, you are missing the denominator and the number cannot be built.

  1. Fix the window first, and use the same one for every flow. A flow that launched inside the window is not comparable to one that ran the whole of it.
  2. Take recipients, not sends, and not list size. A person who received three emails in a four-email series is one recipient of the series and three recipients of the messages.
  3. Divide attributed revenue by recipients. Keep the platform’s attribution window constant and write it down — the number is only comparable against itself.
rpr(flow, window) = attributed_revenue(flow, window)
                  / unique_recipients(flow, window)

# state alongside every figure:
#   window            e.g. 2026-01-01 .. 2026-06-30
#   attribution model e.g. 5-day click, 5-day open  ◆ name yours
#   excluded          e.g. marketplace revenue      ◆ name yours
The four columns a revenue-per-recipient figure needs
ColumnWhat it isWhere it comes from
FlowOne series, not one messageFlow report
RecipientsUnique people who received the series in the windowFlow report — this is the column that goes missing
RevenueAttributed revenue, one model, statedFlow report
WindowIdentical for every row, written downYou choose it. Choose once.

The three lines under the formula are not decoration. A revenue-per-recipient figure without a window, an attribution model and an exclusion list is a number you cannot compare to next quarter’s, which means it is not a measurement.

What it does not do

It is not incrementality. A flow with a high revenue per recipient is not proven to have caused that revenue — checkout abandonment reaches people who were already most of the way to buying, and some share of them would have bought anyway. Ranking flows by this column tells you where the money is landing, not where you created it. Separating those two requires holding out a randomly assigned share of the entering audience and comparing, which is a different exercise and a longer one.

What to do with it on Monday

◆ Three to five concrete moves, each one a thing a lifecycle owner can do inside a week. Structure: name the move, name the number that tells you it worked, name the window.

  • ◆ Move one.
  • ◆ Move two.
  • ◆ Move three.

Notes and sources

  1. Recipients rather than sends, because a four-message series divided by sends understates per-person value by roughly the number of messages. Both are defensible; only one answers “what is one more person worth.”