How I rebuilt Ceremony in seven days.
A founder-led haircare brand on Kaua’i, stuck on a stock Shopify theme with off-brand voice and a Klaviyo flow leaking conversions. Here’s exactly what shipped, and what changed.
What was actually broken.
Ceremony ran on Shopify’s Balance theme, mostly out of the box. The brand voice was strong on the founder’s lead-magnet page, then stopped at the homepage. A 30-minute review surfaced the real picture:
Wrong domain in the welcome flow’s unsubscribe footer. Pointing to a domain that no longer existed — a deliverability liability and a credibility hit.
Email CTA pointing to a 404. The Day 3 email’s primary "Shop the Shampoo Powder" button linked to a product slug that didn’t exist. Every click hit a Shopify 404.
"Future of Haircare" copy on every product page. A generic clean-beauty cliché the brand voice doc explicitly rejected.
"Drops" instructions for a roller-ball product. Customers were getting wrong usage instructions on the product they bought.
Welcome flow conversion rate: 0.00%. 178 recipients, 38% open, 3.4% click, zero attributed orders. Leaking at click-to-purchase.
The ads weren’t the problem. The leads were getting in. The flow was losing them at email two.
Day by day, what shipped.
Review + brand voice document
Live walkthrough of homepage, top 5 products, About, FAQ, all 16 articles. Wrote the voice doc — approved language ("preservative-free," "small-batch," "four-minute ritual," "Kaua’i") and rejected language ("clean," "sustainable," "Future of Haircare").
Homepage rebuild + SEO meta
Replaced the section-based index.json with a custom index.liquid. New hero in brand voice, three-tier kit pricing, four-minute-ritual structure, founder portrait. Set title/description meta. Added Organization, WebSite, and FAQPage JSON-LD.
Klaviyo welcome flow rewrite
Read the existing Email 2 + 3 HTML. Caught the wrong-domain unsubscribe footer and the 404 product link. Rewrote both in brand voice with correct URLs. Bumped Email 3 from 10% to 15% off with 24-hour urgency, and created the discount code via API.
Voice cleanup across catalog
Scanned all products, articles, and pages for voice violations. Found 19: "Clean Haircare," "Future of Haircare," "drops"/"dropper" for a roller-ball oil, "scalp scrub" references after the product was archived. Rewrote each. Cleared all 19.
Two SEO landing pages
Built /preservative-free-shampoo (commercial-intent niche keyword competitors weren’t owning) and /made-on-kauai (place-based, small-batch buyer searches). Each got FAQPage and Place schema for rich-result eligibility.
Schema + reviews integration
Replaced Shopify’s default with a custom Product schema injecting aggregateRating from Judge.me metafields. Added BreadcrumbList globally. Ran the Rich Results Test on every update.
Redirects + cleanup
Found six legacy URLs Google still indexed. Wired them into 301 redirects pointing to the right products. Unpublished eight affiliate-style pages that conflicted with brand voice. Deleted dead theme files from a previous app.
The difference between a Shopify store that converts and one that doesn’t isn’t the theme. It’s the hundred small voice and flow decisions nobody is auditing.
Same patterns, your brand.
Almost every online brand under $1M annual revenue is leaking the same conversions in the same places:
- ›A Klaviyo welcome flow with stale CTAs and broken links nobody has touched in 18 months.
- ›Product pages with rented brand voice ("clean," "natural," "transformative") instead of owned language.
- ›Schema markup missing or partial — losing the rich-result advantage to competitors who have it.
- ›Old URLs Google still indexes, sending traffic to 404s.
- ›Automation pipelines that exist on paper but break silently because nobody checks the logs.
The Setup is the same 7-day rebuild for your brand. Same template architecture, email review, search-tag patterns, and brand voice methodology.