Klaviyo account audit
Use this skill when an e-commerce prospect or client hands over Klaviyo access and the account needs auditing before anyone proposes work. Produces the findings ranked by revenue at stake, and a filled-in Replit prompt that builds the audit deck from them. Also use for "audit their Klaviyo", "email audit for [client]", "what's broken in their flows", "build the audit deck".
Applies when Klaviyo access arrives, before any proposal is written. Produces ranked findings with revenue attached to each, and the Replit prompt that turns them into the deck.
The play
- Check the plumbing before judging any campaign. Tracking installed and firing, the store integration syncing, deliverability authenticated, list growth real rather than purchased. Broken plumbing invalidates every number underneath it, and the checks are in references/audit-checklist.md.
- Audit the flows before the campaigns. Flows run without anyone touching them, so a broken flow has been losing money every day since it broke, while a weak campaign lost money once. The order to check them in, and what each should be earning, is in references/audit-checklist.md.
- Attach a revenue number to every finding. Not "the welcome flow is weak", but what it currently earns per recipient against what comparable accounts earn, multiplied by volume, as an annual figure. The method and the benchmarks are in references/revenue-sizing.md. A finding with no number is an opinion and gets cut.
- Rank by revenue at stake, then by effort. The top three are what the deck is about. Everything else is an appendix, and most of it should not be in the deck at all.
- Branch by what the account shows:
- Flows missing entirely: the finding is the gap, and these are usually the largest and cheapest wins in the account.
- Flows present but untouched since setup: check the dates. A flow last edited two years ago is running on a product catalogue and a price list that no longer exist.
- Heavy discounting in every flow: the problem is margin, not email. Size it that way or the audit recommends more of what is hurting them.
- Strong account overall: say so plainly and find the two real things. A padded audit on a good account is how a firm loses a sophisticated prospect.
- Deliverability failing: nothing else matters. That becomes the whole audit.
- Fill the prompt in references/replit-deck-prompt.md with the ranked findings and generate the deck. The prompt is filled with findings, never with raw exports, because a deck assembled from screenshots of the account is a report rather than an argument.
- Review the generated deck against the findings before it goes anywhere. The prompt produces a draft, not a deliverable, and every number on a slide is checked against the source.
What good looks like
- First thing I check that most people skip: when each flow was last edited. Accounts look busy and are actually frozen, and the edit dates say so in ten seconds.
- The mediocre version: a long list of best practices the account is not following, no numbers, screenshots of every flow, and a recommendation to do all of it. It demonstrates knowledge and sells nothing.
- I know the audit is right when the first slide says a single number the prospect did not know, and they ask how it was calculated.
- Second test: three findings, not fifteen. A prospect who agrees with three things buys. A prospect handed fifteen feels audited.
- Red flag: the findings would be true of any account in the category. That is a template, and they have seen it.
Rules
- MUST verify tracking and store integration before reading any performance number.
- MUST attach a revenue figure to every finding in the deck.
- MUST rank by revenue at stake, and cut to three.
- MUST state the benchmark source and the assumptions behind every projection.
- MUST review the generated deck against the findings before sending.
- NEVER put a finding in the deck that cannot be sized.
- NEVER present a projection as a guarantee, and never quote a range tighter than the data supports.
references/audit-checklist.md
The checklist
In order. Each section can invalidate everything below it, which is why the plumbing comes before the creative.
1. Plumbing
| Check | Failing looks like | If it fails |
|---|---|---|
| Store integration syncing | Order and product data stale or partial | Stop. Every revenue number in the account is wrong. |
| Tracking installed and firing | Viewed Product, Added to Cart, Started Checkout missing or sparse | Browse and cart flows cannot work. This is finding one. |
| Sending domain authenticated | Shared sending domain, or DMARC absent | Deliverability finding, outranks everything creative |
| List growth source | Sudden jumps, imported lists, no signup source data | Suppress and investigate before recommending more sending |
| Suppression hygiene | Bounces and unsubscribes still receiving | Compliance problem, not an optimisation |
2. Deliverability
Open rates are unreliable since privacy protection inflated them. Judge on click rate, bounce rate, spam complaints and unsubscribe rate, and on whether those numbers are stable or sliding.
| Signal | Healthy | Investigate |
|---|---|---|
| Spam complaint rate | Under 0.1% | Over 0.3% is urgent |
| Hard bounce rate | Under 0.5% | Over 2% suggests list quality |
| Unsubscribe rate per send | Under 0.3% | Over 0.5% suggests frequency or relevance |
| Click rate trend over 6 months | Flat or rising | Sliding means inbox placement, not creative |
A failing account here gets a one-finding audit. Recommending creative work on an account landing in spam is malpractice.
3. Flows, in revenue order
Checked before campaigns, because they run unattended.
| Flow | Present? | Last edited | What to look at |
|---|---|---|---|
| Abandoned checkout | Usually | Often years ago | Timing of the first send, number of steps, whether a discount is given away in step one |
| Welcome | Usually | Often never | Whether it sells or just introduces, and whether it segments by signup source |
| Browse abandonment | Often missing | Requires tracking from section 1 | |
| Post-purchase | Often thin | Second-order timing against actual repurchase interval | |
| Winback | Often missing | Defined against their real purchase cycle, not a default 90 days | |
| Back in stock, price drop | Rarely present | Only worth it with the catalogue to support it |
For each: does it exist, when was it last touched, how many steps, what does it earn per recipient, and is a discount being given to people who would have bought anyway.
That last question is the one most audits never ask, and on a heavily discounted account it is the biggest finding in the file.
4. Campaigns
Six months of sends. Frequency, segmentation depth, and whether performance differs between segmented and full-list sends. Most accounts send to everyone and the numbers show it.
5. Segmentation and list
Engagement segments defined and used, VIP or repeat-buyer segment present, sunset policy for the unengaged. An account sending everything to everyone has a deliverability problem arriving in about three months.
references/replit-deck-prompt.md
The Replit deck prompt
Filled with findings, never with raw exports. The prompt builds the deck; the thinking happens before it.
Fill this in
Build a slide deck as a single self-contained HTML page, one full-viewport
section per slide, arrow-key navigation, readable when projected.
AUDIENCE: [name, role] at [company], [category], [rough AOV].
They have not seen this before. They know their account is underperforming
and do not know by how much.
SLIDE 1 - THE NUMBER
Headline: [$X to $Y per year currently left on the table]
Subhead: one line naming where it comes from.
Footnote: the assumption behind the range, in plain language.
SLIDE 2 - WHAT WE LOOKED AT
Four lines: account scope, period reviewed, what was checked,
what was out of scope. Builds trust and prevents a later argument.
SLIDE 3, 4, 5 - ONE FINDING EACH
For each:
- What is happening now, one sentence, factual and unarguable
- The evidence: the specific number from their account
- What it should be: the benchmark and its source
- The gap: annual revenue at stake, as a range
- The fix: one sentence, no implementation detail
SLIDE 6 - WHAT WE WOULD DO FIRST
The three fixes in order, with a rough sequence. No pricing.
SLIDE 7 - WHAT WE ARE NOT WORRYING ABOUT
Two or three things their account does well. Real ones.
DESIGN: [brand colours], [font], no stock photography, no icons for
decoration. Numbers large. One idea per slide. Dark text on light.
DO NOT: invent any number not given above, add slides, add a pricing
slide, or use the word "leverage".
Why slide 7 exists
An audit that finds only problems reads as a sales document, and a prospect who has built something they are proud of stops listening. Naming two genuine strengths buys the credibility that makes the three findings land. It is also the slide that gets cut under time pressure, and it should not be.
Why no pricing in the deck
The deck's job is agreement that the gap is real. Pricing in the same document turns the meeting into a negotiation about the price before the problem is agreed. Price after they accept the number.
After it generates
Check every figure on every slide against the findings file. A generated deck is a draft: it will occasionally round, restate or invent a number, and one wrong figure in front of a founder who knows their account ends the meeting.
Then read it once as the prospect. If a slide would make them defensive rather than curious, rewrite the sentence, not the finding.
references/revenue-sizing.md
Sizing a finding
Every finding carries a number or it does not go in the deck. The number is what makes an audit an argument rather than a critique.
The method
gap per recipient = benchmark revenue per recipient - current revenue per recipient
annual volume = recipients entering that flow per month x 12
revenue at stake = gap per recipient x annual volume
For a missing flow, current is zero and the whole benchmark is the gap. This is why missing flows are almost always the top findings.
Use revenue per recipient, not open or click rates. It is the only number that survives a conversation with a founder.
Benchmarks
Ranges, not points, and they move by category and average order value. Take them from the account's own comparable flows wherever possible, and from published category benchmarks otherwise. State which, on the slide.
| Flow | Typical revenue per recipient | Depends most on |
|---|---|---|
| Abandoned checkout | The highest in the account, several times any other flow | AOV and timing of the first send |
| Welcome | Strong, second or third | Whether it sells rather than introduces |
| Browse abandonment | Moderate | Catalogue size and tracking quality |
| Post-purchase | Moderate, compounding | Repurchase interval |
| Winback | Low per recipient, large volume | How the lapse window is defined |
Deliberately no hard numbers here. A benchmark table with precise figures gets quoted into a deck two years later against a different category, and a sized finding is only as good as the comparability of its benchmark. Pull current figures per engagement and cite the source.
Honesty rules for the projection
- State the assumption on the slide. "Assumes checkout abandons stay at current volume and the flow reaches typical performance for this AOV band."
- Give a range, not a point. A single number invites an argument about that number instead of a conversation about the gap.
- Discount for implementation. Benchmarks come from accounts that have been optimised for a while, not from week one.
- Never annualise a seasonal spike. Taking Black Friday volume times twelve produces a number that destroys credibility the moment someone checks it.
- Subtract cannibalisation on anything discount-led. Revenue from a discount flow is not all incremental, and a sophisticated prospect knows it.
Ranking
Sort by revenue at stake, then split by effort.
| Low effort | High effort | |
|---|---|---|
| High revenue | Lead the deck with these | Second section, the real project |
| Low revenue | Appendix, or a free quick win | Cut entirely |
The low-revenue, low-effort items are worth giving away in the meeting. Handing over two fixes for free is the cheapest credibility available and costs an hour.
The one number on slide one
The sum of the top three findings, as an annual range, with the assumption stated underneath. Everything else in the deck exists to support that number.