Agency Skills
SkillsMCPCollectionsContributorsContribute
Install MCP
Agency Skills

Skills written by the people who run agencies, consultancies and coaching firms. Free and open source, MIT.

LibraryAll skillsCollectionsContributors
ContributeHow to contributeContributor guideGitHubReport a problem
GiaCompany BrainPowered by Gia
Skills/Win the work/Klaviyo account audit
Marketing

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".

Kayla BonnetteKayla BonnetteCo-Founder, Outlandish
Say something like
“audit their Klaviyo”“email audit for [client]”“what's broken in their flows”“build the audit deck”
klaviyoreplitshopifyemail-marketingauditecommercelifecycle-marketingpitch
SKILL.mdView on GitHub

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

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
3 reference files
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

CheckFailing looks likeIf it fails
Store integration syncingOrder and product data stale or partialStop. Every revenue number in the account is wrong.
Tracking installed and firingViewed Product, Added to Cart, Started Checkout missing or sparseBrowse and cart flows cannot work. This is finding one.
Sending domain authenticatedShared sending domain, or DMARC absentDeliverability finding, outranks everything creative
List growth sourceSudden jumps, imported lists, no signup source dataSuppress and investigate before recommending more sending
Suppression hygieneBounces and unsubscribes still receivingCompliance 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.

SignalHealthyInvestigate
Spam complaint rateUnder 0.1%Over 0.3% is urgent
Hard bounce rateUnder 0.5%Over 2% suggests list quality
Unsubscribe rate per sendUnder 0.3%Over 0.5% suggests frequency or relevance
Click rate trend over 6 monthsFlat or risingSliding 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.

FlowPresent?Last editedWhat to look at
Abandoned checkoutUsuallyOften years agoTiming of the first send, number of steps, whether a discount is given away in step one
WelcomeUsuallyOften neverWhether it sells or just introduces, and whether it segments by signup source
Browse abandonmentOften missingRequires tracking from section 1
Post-purchaseOften thinSecond-order timing against actual repurchase interval
WinbackOften missingDefined against their real purchase cycle, not a default 90 days
Back in stock, price dropRarely presentOnly 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.

FlowTypical revenue per recipientDepends most on
Abandoned checkoutThe highest in the account, several times any other flowAOV and timing of the first send
WelcomeStrong, second or thirdWhether it sells rather than introduces
Browse abandonmentModerateCatalogue size and tracking quality
Post-purchaseModerate, compoundingRepurchase interval
WinbackLow per recipient, large volumeHow 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 effortHigh effort
High revenueLead the deck with theseSecond section, the real project
Low revenueAppendix, or a free quick winCut 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.

Install this skill

Pick where your agent runs.

View prompt
Help me install the skill named "klaviyo-account-audit" from this GitHub URL in Claude:
https://github.com/agiea-brain/agency-skills/tree/main/skills/kayla-bonnette/klaviyo-account-audit

Prepare only the "klaviyo-account-audit" skill, not other skills in the repository.

Inspect each complete skill folder, not just SKILL.md. Preserve the original instructions and include all supporting files (such as references, scripts, templates and assets), keeping their relative paths intact. Package each skill as a downloadable ZIP containing its skill folder with SKILL.md directly inside that folder. If a skill only contains SKILL.md, package that folder too.

Give me the download link for each ZIP and walk me through uploading and enabling it under Settings, Capabilities, Skills in Claude. If you cannot access GitHub or create downloadable files here, explain what I need to download and how to package and upload it myself. Do not invent missing files or claim the skill is installed before I upload it.

Paste this prompt into Claude. It packages the skill folder, supporting files included, and walks you through uploading it under Settings, Capabilities, Skills.

0installs
Marketingcategory
MITlicense