Work · Ki’olal Biocosmetics · Client engagement, 2026

I specced the lifecycle system a luxury skincare brand launches on, and built the gate that keeps its voice

Ki’olal pairs Mayan botanicals with modern formulation, at $87 to $895, and I owned email, SMS and customer experience on an independent engagement reporting to the founder, with edit access to Shopify and Klaviyo. I specced the campaign system and the automations under it to run in Klaviyo, and built the quality gate that holds the brand voice at production speed.

23 emails · 17 SMSspecced Klaviyo-ready
3-judge gate11 of 11 emails cleared 85
3 flows9 emails + 4 SMS, always on
What I walked into

A beautiful brand with an empty inbox

Ki’olal had the brand, the products and a 38-page summer campaign vision. The business had no lifecycle layer: no calendar in motion, no automation catching a purchase or an abandoned cart, and no path onto Amazon or TikTok Shop. The vision came with the brand. I added the build-ready specs for the 100-day arc, three always-on flows, the three-judge gate, and the storefront and retail work.

The constraint that shaped everything was voice. Ki’olal writes poetry backed by proof, an evening ritual of cleanser, toner and a Tepezcohuite night treatment, framed as ceremonia. Producing at volume flattens this kind of voice. The founder’s feedback landed inline on my specs, through my kiolal.com inbox, which kept the bar where it belonged.

One engagement, five layers: a 100-day campaign, the always-on automations underneath it, a measurable quality gate that scores every draft, parts of the storefront and its user flow, and the compliance work that opens new retail channels.

The brand, live

The storefront the campaign runs on

kiolal.com
Kiolal homepage: Sacred Luna Ceremonia hero with the limited-time gift card
Summer Ceremonia early access page with 48-hour priority offer
Kiolal welcome popup capturing email and SMS with explicit consent language
Recovery Night Treatment product page
Kiolal Origins page: Every brand begins with a product, over a desert landscape
Kiolal Our Philosophy page
Kiolal Ingredients page
How I built it · five layers

Voice was the constraint, so every layer below protects it

Layer 01 · The campaign system

A 100-day arc, written as build-ready specs

The Summer Skin-to-Soul Ceremonia runs June 22 to September 30: eleven emails on a weekly Thursday cadence in three monthly movements, three warm-up sends before it, and thirteen SMS riding beside it. Every email is a build-ready spec down to the module: email three runs thirteen of them, from the hidden preheader to a footer with the Miami address, with the art direction written like direction. "The feeling: the day is over; restoration begins."

Every token in the spec ships with a default, so a raw token never renders and the opening line reads "night is when your skin does its deepest work" whether or not a first name exists. Images export at 2× under 500KB with no baked-in text, because clients block images and dark mode inverts them. The spec even polices its own facts: "real formulas only," with the stale ingredient list from an old landing page named and banned.

11 campaign emails + 3 warm-ups + 13 SMS · one offer, repeated identically everywhere
One hundred days, three movements
Jul · Discover the Ritual4 sends
Aug · Return to Balance4 sends
Sep · Finale3 sends
SMS beside every week13
Layer 02 · Always-on automations

The flows wait before they offer a discount

Post-purchase opens two to four hours after the order with a line that knows what it is: "consider this a warm hello rather than a receipt." Delivery triggers the ritual-teaching email, then a review ask seven days later, with a final follow-up only if no review came in. Two cart emails pull the cart back with Shopify’s live cart block.

The winback flow shows it best. At sixty days quiet: "We kept your place," warm and offer-free. At seventy-five the email holds the discount back and describes how the evening ritual feels. Only at ninety days does the single gift appear, and then the flow closes itself out: "We would rather leave you in peace than crowd your inbox." I wrote every trigger, delay and exit condition into the spec, so the builder assembles the flows in Klaviyo without guessing once.

3 flows · 9 emails + 4 SMS · discount held back until day 90, then sunset
Winback, by the calendar
Day 60 · "We kept your place"no offer
Day 75 · the feel of the ritualno offer
Day 90 · one gift, one CTA15% + mist
Then · frequency dropssunset
Layer 03 · The quality gate

Every email has to score 85 to ship

Every email passes a de-AI edit first, working from a written list of tells: em-dash overuse, openings on a negation, manufactured antithesis, rule-of-three rhythm, and a banned-word list running from "elevate" to "game-changer." Then three LLM judges score in parallel, each playing a different reader. The first decides as a subscriber would: open, keep reading, click. The second audits craft as a senior email strategist. The third hunts machine-written prose and returns the exact flagged phrases.

An email ships when all three score 85 or higher, three iteration rounds maximum. The gate caught a problem: judge B flagged a rendered email still hard-coding an old hero size after the spec had changed. And the de-AI pass shows up in the calendar itself. A subject line drafted as "Skincare was never just about your skin" shipped as "The five quiet minutes your skin has been missing."

De-AI edit → 3 judges in parallel → gate at 85 → 11 of 11 through, averaging 86.7 / 89.0 / 90.5
Gate at 85, three lenses
Judge A · the subscriber86.7
Judge B · the strategist89.0
Judge C · anti-AI editor90.5
Iteration budget≤3 rounds
Layer 04 · Storefront & user flow

The pages the campaign lands on

Lifecycle traffic is only as good as where it arrives, so I specced the storefront sections and the path from an email click through to checkout, and their developer built them. The offer had to read identically in four places, the announcement bar, the hero card, the early-access page and the email itself, because a customer who reads three versions of one gift stops believing all three.

The capture layer is where lifecycle begins, so I built it to earn the contact: email and SMS taken with separate consent, TCPA language on the phone field, and a stated trade of 10% off. I also crawled the full sitemap, ten product pages and nine collections included, into a knowledge base, ran a technical and SEO audit, and ranked the fixes, including the pricing bug that listed a $115 mist at zero dollars.

One offer, four surfaces · dual-consent capture · full-sitemap audit with a ranked fix list
Email click to checkout
Announcement barsame offer
Hero card + gift valuesame offer
Early-access page, 48hsame offer
Capture · email + SMS consentseparate
Layer 05 · Retail readiness

Amazon worksheets and the FDA pathway for TikTok Shop

I pushed the brand toward shelves it had never reached. I built Amazon worksheets for all ten SKUs, each covering title, bullets, backend search terms, structured attributes and A+ plans. They come off a master template designed so an operations person can create the listing with zero guessing. I sequenced the launch in three waves on operational readiness, leading with the hero skincare SKUs because single SKUs need the least listing data, then the bundles and the halo set.

For TikTok Shop eligibility I wrote the FDA pathway: a step-by-step MoCRA facility registration guide and the cosmetics compliance statement. Between them they cleared the paperwork that had kept the brand on its own storefront and nowhere else.

10 SKU worksheets · one technical and SEO audit · 3-wave handoff · FDA MoCRA + compliance statement
Three waves to retail
Wave 1 · five hero skincare SKUsready
Wave 2 · two ritual bundlesready
Wave 3 · halo set + accessoriesready
FDA MoCRA · TikTok Shop docsready
Result

What the engagement delivered

The campaign window runs through September, and send-performance data belongs to the brand, so this page reports what I built, and the scores it shipped with.

Lifecycle, installed

I specced 23 emails and 17 SMS, Klaviyo-ready: an 11-email campaign arc with three warm-ups, and three automation flows covering post-purchase, winback and abandoned cart. Each spec carries its own cadence, tokens, triggers and exits.

What the gate caught

All eleven campaign emails cleared the three-judge gate. The scores are mine on my own rubric, so the number worth reading is what the panel stopped. Judge B caught a rendered email still hard-coding an old hero size after the spec had changed.

New shelves, open

I handed off ten Amazon SKU worksheets in three launch waves, with the FDA MoCRA registration guide and cosmetics compliance statement behind them. The registration went through, the listings are live and TikTok Shop approved the seller. A promotional campaign is running now.

The engagement, in numbers
Campaign emails, specced11 + 3
SMS, campaign + flows17
Automation flows3
Judge gate clearance11 / 11
Amazon SKU worksheets10
Ingredient profiles in the KB97
Klaviyo Python toolchain 3-judge LLM gate TikTok Shop compliance Site & SEO audit
Operating principles

Three rules behind the system

Voice survives volume, or the system failed.
I built the panel because scaling output usually flattens a brand voice. Poetry and proof, scored by three lenses, beats one tired reviewer at 11pm.
Specs an operator can run blind.
Every deliverable, email, flow, or Amazon listing, ends in a worksheet the next person executes without asking a question. Handoff quality is part of the work.
One source of truth, and it is the live site.
The website is baseline, the campaign playbook is target state, and the rule is written down. Copy never quotes a future the customer can see is missing.

Need lifecycle that sounds like your brand, at production speed?

I build the campaign system, the automations and the quality gate, then hand over specs your team runs without me.