How to Experience this portfolio

Placebo & Co. | Portfolio Documentation
For recruiters & hiring managers

How to experience
this portfolio

Hi. I'm Gonzalo Conejero, the person behind this store.

The brand is fictional. The supplements don't exist. But the Shopify architecture, Klaviyo flows, segmentation logic, and lifecycle copy behind all of it are real work, built to demonstrate what I can actually do.

This page tells you how to trigger the system so you can see it in action, not just read about it.
Entry point → trigger → flow sequence
Click an entry point to see what it triggers
Entry points
Pop-up
Homepage subscribe
Footer field
Persistent subscribe
Quiz
Zero-party data
Order
Bank transfer only
Preference center
Existing subscriber
Klaviyo trigger
List subscribe
Form submitted + profile props
Order placed event
Added to segment
01
Newsletter pop-up
Highest-yield single entry point in the system.
Welcome series Preference flows Sunset flow

Visit the homepage. A pop-up will appear after a few seconds. Subscribe with a real email address you can check.

What follows is a 3-email welcome series spaced over 7 days. The first email introduces the brand, the second showcases the product range, and if you place an order at that point the series stops there. If you don't, a third email arrives with a 15% discount code. The timing and conditional logic are intentional: they're part of what's being demonstrated.

The pop-up also includes three content preference checkboxes (Product Updates, Wellness Commentary, Marketing Strategy Breakdowns). Checking any of them writes a boolean property to your Klaviyo profile and triggers the corresponding newsletter preference flow -- making this the only entry point that can fire up to four flows simultaneously.

If you never open or click, you'll eventually enter a sunset flow designed to clean unengaged subscribers from the list.

Flows you'll see
Welcome Series Newsletter Preference (up to ×3) Sunset / Never Engaged
Where to look: Your inbox over the next 7 days. Check spam if nothing arrives. Deliverability setup is part of the demo too.
02
Footer subscribe field
Same flow, different subscriber intent.
Welcome series

Scroll to the bottom of any page. The footer subscribe field is always available.

This triggers the same welcome series as the pop-up, but in a real store these two subscriber groups behave differently. Someone who scrolled past a pop-up and still subscribed via the footer is a meaningfully more intentional subscriber. The architecture treats them the same; the segmentation could separate them.

Use this if: you've already subscribed via the pop-up and want to observe the same flow from a second email address.
03
The quiz
Zero-party data collection in action.
Typeform → Klaviyo Personalisation

Find the quiz on the homepage. It asks a few questions about your (fictional) wellness goals and returns a product recommendation. Complete it with a real email address.

Under the hood: your answers update custom profile properties in Klaviyo via the Typeform integration, which then personalise the follow-up email sequence. This is a separate flow from the welcome series. Complete the quiz after subscribing to trigger both.

Flows you'll see
Post-Quiz Recommendations Profile property segmentation
What to notice: The recommendation email references your specific quiz answers. That personalisation is driven by profile properties set during form submission, not static logic.
04
Place an order
The richest path. No payment required.
Post-purchase Review request Replenishment

Add any product to your cart and go through checkout. At the payment step, select bank transfer as it's the only available method. No payment details are required and nothing should be transferred. The order confirmation email explains this.

I process orders on the back end to keep the post-purchase sequence running as it would in a live store. Nothing ships, because nothing exists.

This path unlocks the largest portion of the Klaviyo architecture, flows that can only fire from a real order event.

Flows you'll see
Post-Purchase (1st order) Shipping Confirmation Review Request Replenishment Reminder Winback (if you don't reorder)
To summarise: select bank transfer, complete checkout, do not transfer anything. The confirmation email handles the rest.
05
Preference center
For existing subscribers updating their content preferences.
Preference flows ×3

If you're already subscribed, visit the preference center via the link in any email footer. From there you can select which content tracks you want to receive: Product Updates, Wellness Commentary, or Marketing Strategy Breakdowns.

Each selection writes a boolean property to your Klaviyo profile (preference_product_updates, preference_wellness_content, preference_marketing_insights). When that property flips to true, the corresponding dynamic segment updates -- and the segment membership triggers the relevant preference flow.

This is distinct from the pop-up entry point in one important way: it targets existing subscribers actively managing what they receive, rather than new subscribers at acquisition. The trigger is also different -- "Added to segment" rather than "Form submitted" -- which means it fires every time the preference is updated, not just the first time.

Flows you'll see
Preference_ProductUpdates Preference_WellnessContent Preference_MarketingInsights
How to trigger it: Subscribe first via the pop-up or footer, then use the preference center link in the welcome email footer to update your selections.

Flow documentation

14 flows across 4 categories. Every trigger, split, timing, and strategic rationale. Click any flow to expand.

Acquisition
4 flows
Welcome Series Flagship
3-email onboarding sequence with conditional discount logic
List subscribe 3 emails
TriggerSubscribed to Email List
Emails3
Re-entryNo
SegmentAll Email List subscribers
Email sequence
# Email Demo timing Real-world timing Condition
1 Brand introduction Immediately Immediately Always sends
2 Product showcase +5 min Day 2 Always sends
3 15% discount (PLACEBO15) +5 min Day 7 Only if no purchase made
Conditional logic

A purchase event before Email 3 exits the subscriber from the flow. The discount is withheld from buyers — standard suppression logic to avoid discounting customers who already converted at full price.

Strategic rationale

The timing hold before the discount is deliberate. Email 1 builds trust, Email 2 educates and surfaces purchase intent, Email 3 applies discount pressure only to non-converters. Showing the discount too early trains subscribers to wait for it — the 2-email hold is a standard DTC pattern to protect margin while still recovering hesitant buyers.

Demo vs. real timing: Demo timings are compressed to 5/5 minutes so recruiters can experience the full sequence without waiting days. Each email footer explains the real-world timing rationale explicitly.

Post-Quiz Recommendations Flagship
5-branch personalisation flow driven by Typeform profile properties
Form submitted 1 email / branch
TriggerForm submitted (Typeform → Klaviyo)
Wait before split2 minutes
Property writtenquiz_result
Re-entryNo
Conditional split logic (waterfall)
Sleep → Sleep & Stress Result Focus → Focus & Clarity Result Energy → Energy & Performance Result Gut → Gut & Immunity Result Aging → Body & Longevity Result
Strategic rationale

Zero-party data collection at its most direct. The quiz explicitly asks and writes the answer to the profile rather than inferring intent from behaviour. The 2-minute wait before the split is intentional — it gives the Typeform webhook time to write the quiz_result property before the conditional split evaluates, avoiding a race condition where the split fires before the data arrives.

Copywriting rationale: Each branch email opens with the subscriber's specific result ("Your quiz results: ..."). The personalisation is surfaced explicitly rather than hidden — which doubles as a live demonstration of how personalisation logic works for any recruiter reading it.

Browse Abandonment
Onsite tracking-based recovery for identified subscribers
Viewed product 1 email
TriggerViewed product, no purchase, not in checkout
Timing5 min after browse (demo) / 1–3h (real)
Re-entryYes, after 24h
Implementation dependency

Requires Klaviyo JS snippet active on the storefront AND the visitor must be an identified subscriber (cookied from a previous email click). Anonymous browsers cannot be targeted — this is one of the most common implementation gaps in real stores and worth understanding before building this flow.

Strategic rationale

Demonstrates onsite tracking integration and mid-funnel behaviour targeting. The 5-minute demo timing is compressed — in a live store, 1–3 hours allows genuine browse sessions to complete before triggering and avoids interrupting active shoppers.

Abandoned Checkout
3-email recovery sequence with escalating urgency and final discount
Checkout started 3 emails
TriggerCheckout started, no purchase
Re-entryYes, after 24h
Email sequence
# Focus Demo timing Real-world timing
1 Soft reminder 5 min after 1h after
2 Mild urgency — product framing +5 min +24h
3 Final nudge — 5% discount (PLACEBO5) +10 min +72h
Strategic rationale

Three-email checkout recovery is DTC standard. The discount is held until Email 3 deliberately — leading with a discount in Email 1 trains customers to abandon intentionally to receive one. Email 3's 5% code targets pricing-aware customers who needed a final nudge rather than a genuine reminder.

Post-Purchase
6 flows
Post-Purchase Flagship
Order-count + category split across 3 customer tiers
Order placed 3 emails / path
TriggerOrder placed
First emailImmediately
Re-entryYes (per order)
Top-level splitOrder count: 1st / 2nd / 3rd+
1st order path
# Email Demo Real-world
1 New Customer Thank You Immediately Immediately
2 Usage tips (category-specific) +1h Day 3
3 2nd purchase incentive — 5% off +2h Day 7
2nd order path
# Email Demo Real-world
1 Thank You — returning customer Immediately Immediately
2 Cross-category recommendations (category split) +1h Day 5
3 Review request +1h 10min Day 10
3rd+ order path
# Email Demo Real-world
1 Thank You — loyal customer Immediately Immediately
2 Bundle recommendations + loyalty discount +10 min +2h
3 Loyal customer review request +1h 10min Day 10
Category split (applied in 1st and 2nd order paths)
Sleep & Stress Focus & Clarity Energy & Performance Gut, Immunity & Nutrition Body & Longevity
Strategic rationale

The most architecturally complex flow in the system. It demonstrates three capabilities simultaneously: order-count segmentation (treating new, returning, and loyal customers differently), product-category personalisation (educational content matched to what was purchased), and progressive incentive logic (5% for 2nd-order conversion, bundle discount for loyal customers). The review request is withheld until the 2nd order — a customer with two purchases has a more informed opinion and higher likelihood of leaving a meaningful review.

Replenishment Reminder
Single email timed to the end of a 30-day supply cycle
Order placed 1 email
TriggerOrder placed
Demo timing3 days after order
Real-world timing30 days after order
Exit conditionNew order placed → exits
Strategic rationale

30-day replenishment cadence maps to the standard supply cycle for most supplement products. This is consistently one of the highest-ROI post-purchase emails in DTC — it targets customers at the exact moment their supply runs out, before they've had time to switch to a competitor.

Review Request & Followup Flagship
Rating-based split with service recovery, improvement, and advocacy branches
Post-purchase (2nd & 3rd+) 2 emails
TriggerEmbedded in Post-Purchase (2nd & 3rd+ order paths)
Followup triggerReview submitted (rating captured)
Followup split by rating
1–2 stars Service recovery — acknowledges the issue, offers resolution, addresses the irony of a negative review on a fictional product
3–4 stars Improvement request — thanks for the feedback, asks what would have made it a 5
5 stars Advocacy — thanks, asks for social share or referral
Strategic rationale

Most brands send one generic "thanks for your review" email regardless of rating. Splitting by rating and responding contextually — especially with service recovery for negative reviews — demonstrates that the retention strategy extends beyond the purchase moment. A 1-star review is an opportunity, not just a metric.

Back in Stock
Immediate notification to waitlisted high-intent subscribers
Waitlist + restock 1 email
TriggerAdded to Back in Stock waitlist; fires on restock
TimingImmediately on restock
Strategic rationale

Back in Stock flows capture the highest-intent customers in the system — they have already self-identified as wanting a specific product. Conversion rates on these emails are typically the highest in any flow library because the persuasion work is already done. The only job of the email is to remove friction between intent and purchase.

Subscription Welcome Constrained
3-email onboarding for recurring order subscribers
Selling plan detected 3 emails
TriggerLine Items Selling Plan Name is not empty
Emails3 over 7 days
Email sequence
# Timing Email
1 Day 0 Welcome — confirms recurring order, sets expectations
2 Day 3 What to expect — usage tips and fictional product benefits
3 Day 7 Subscription management — how to pause, skip, or cancel
Platform constraint: Shopify's subscription purchase options require a supported payment gateway (Shopify Payments or approved processors). Bank transfer is explicitly excluded. Since the demo store uses bank transfer as its only payment method, subscription orders cannot be placed — making this flow untriggerable in the live environment. This is a documented Shopify platform limitation. The flow architecture, trigger logic, and email sequence are complete and ready to activate with a compatible payment gateway.
Subscription Renewal Constrained
Pre-renewal reminder and confirmation sequence
Upcoming renewal 2 emails
TriggerUpcoming renewal event
Emails2
# Timing Email
1 Before renewal Upcoming renewal reminder — what's coming, how to manage
2 On renewal Renewal confirmation — order confirmed, nothing will ship
Platform constraint: Same limitation as Subscription Welcome. Architecture complete, untriggerable in current demo environment due to bank transfer payment method restriction.
Retention
2 flows
Customer Winback Flagship
2-email lapsed customer recovery at 75 and 90 days
Order placed 2 emails
TriggerOrder placed, no subsequent order
Exit conditionNew order placed → exits immediately
Email sequence
# Email Demo Real-world Condition
1 "It's been a while" 3 days after order 75 days after order No new order
Wait + recheck 1 day 15 days Check for new order
2 "Last attempt" 1 day after Email 1 90 days after order Still no new order
Strategic rationale

The 75/90-day cadence maps to the replenishment cycle of most supplement products. Day 75 catches customers whose 60-day supply has run out. Day 90 is the accepted last-ditch effort before moving customers to passive retention (quarterly newsletters or suppression). The 15-day gap between attempts is deliberate — enough time to feel like a separate touchpoint rather than a follow-up.

Both emails are written with full transparency about the mechanics being demonstrated. Each includes a P.S. that explains the strategic rationale behind the timing — which serves double duty as portfolio documentation embedded directly in the email itself.

Sunset / Never Engaged Flagship
2-email list hygiene flow with profile suppression logic
Never Engaged segment 2 emails
TriggerAdded to "Never Engaged" segment
Segment definitionSubscribed, never opened or clicked
Re-entryNo
Flow sequence
Step Timing Action
Email 1 Day 1 "Still want to hear from us?" — offers preference update link
Wait 3 days
Email 2 Day 4 "We tried." — final warning, last chance to stay subscribed
Wait 5 days
Property update Day 9 Sets Unengaged = true if no action taken
Exit conditions

Opens Email 1, clicks any link, or updates preferences → exits flow, remains subscribed.

What Unengaged = true does in the system

Setting this property is the foundation for downstream suppression logic. The intended use is to exclude profiles where Unengaged = true from all marketing flow filters and campaign segments — ensuring suppressed contacts never receive sends even if they remain technically subscribed. Full automated profile suppression in Klaviyo requires API implementation beyond the native flow builder. In the current implementation, the property is set and available as a filter; API-level suppression is the documented next step. This approach preserves the profile and its data for list health reporting while stopping all marketing sends.

Strategic rationale

List hygiene is one of the most overlooked and highest-impact aspects of email marketing. Sending to chronically unengaged subscribers damages sender reputation and inbox placement for the entire list. The Sunset flow gives unengaged subscribers two clear opportunities to self-select out or reduce frequency before suppression — more respectful and more effective than hard-unsubscribing without notice. Email 1's preference center link is particularly important: it allows subscribers to reduce frequency rather than unsubscribe entirely, recovering people who want the content but feel overwhelmed by volume.

Preference
3 flows
Newsletter Preference Flows ×3
Segment-triggered confirmation flows for product, wellness, and strategy content tracks
Added to segment 1 email each
TriggerAdded to dynamic segment (boolean profile property)
Re-entryYes, after 30 days
Flows & profile properties
Product Updates preference_product_updates = true — new launches, offers, store updates
Wellness Content preference_wellness_content = true — brand commentary on wellness culture
Marketing Insights preference_marketing_insights = true — CRM strategy and retention marketing breakdowns
Why "Added to segment" over "Form submitted"

Segment-based triggers future-proof the flows to capture preference center updates — not just the initial form submission. If a subscriber updates their preferences 6 months later, the flow fires again. A form submission trigger would only fire once, missing all future updates.

Strategic rationale

Preference-based segmentation is the most direct form of consent-based personalisation. The three tracks reflect three distinct audiences visiting the store: potential customers, wellness readers, and marketing professionals evaluating the portfolio. The Marketing Strategy Insights track is particularly intentional — it acknowledges that a significant portion of this store's audience is there to evaluate the work, and gives them a content track built specifically for that purpose.

A note on how this was built

This project has been built in collaboration with Claude, Anthropic's AI assistant. The Shopify and Klaviyo architecture, the flow logic, the segmentation decisions, and the strategic rationale behind every timing and split are mine, but Claude was the execution partner throughout: writing and iterating on email copy, building and debugging the HTML and CSS for this page, structuring the flow documentation, and pushing back when something wasn't clear or accurate.
It's worth being transparent about that, partly because honesty is the whole point of this project, and partly because knowing how to work effectively with AI tools is increasingly part of the job.

If you're evaluating this portfolio, you're also seeing what a one-person project can look like when that person knows how to use the tools available to them.