New to Winbacks? Start with Getting started with Winbacks for an overview of how the feature works before diving into setup.
Before you start
You must have an active Cancel Flow set up in your Skio Dashboard. Winbacks only trigger when a subscriber cancels through the Cancel Flow — admin and API cancellations don't count.
You can only have one active Winback flow at a time. If you already have one running, you'll need to disable it before activating a new one.
If you plan to route subscribers by cancellation reason, make sure your Cancel Flow has cancellation reasons configured.
If you're using Klaviyo or Postscript for delivery, make sure your integration is connected under API & Integrations > Integrations.
Step 1: Navigate to Winbacks
In the left-hand menu of your Skio Dashboard, go to Retain > Winbacks.
Click Create new winback in the top right corner. The visual flow builder opens with a name field at the top and a pre-placed Trigger node on the canvas.
Enter a name for your flow in the Winback title field. This is for internal reference only.
Step 2: Configure the trigger
The Trigger node is already on the canvas and set to After cancel flow cancellation — this can't be changed. Every Winback flow starts when a subscriber completes a cancellation through your Cancel Flow.
.png?sv=2022-11-02&spr=https&st=2026-03-25T20%3A03%3A38Z&se=2026-03-25T20%3A22%3A38Z&sr=c&sp=r&sig=2vJVnZD51Nhcru6IcbwVDsfqBAclZr9PoNCxwEsm4Uc%3D)
The trigger node also controls your initial delay. The Delay journey toggle is on by default, with a default delay of 7 days. To change it, update the duration and unit fields directly on the node. You can set the delay anywhere from 1 hour up to 90 days.
Tip: Match your delay to your product's consumption cycle. Fast-moving consumables like coffee or supplements typically work well with a 3–7 day delay. Products with slower depletion rates — like skincare — often perform better with a 14–30 day delay, giving subscribers time to actually finish what they have before you reach out.
Adding a trigger filter (optional)
Define trigger filters to control which customers go through the Winback flow.
Customer-based conditions
Customer tag: Filter by whether a customer has or does not have a specified tag.
Credit balance: Filter customers based on their available store or subscription credit balance.
In Tier: Target customers who are currently in specific loyalty tiers.
Distance to tier: Target customers based on how close they are to reaching their next loyalty tier (measured by order count, LTV, or product count) and their current tier level.
Tier at risk: Target customers whose current tier is at risk of being lost due to tier expiry rules.
Subscription-based conditions
Order number: Filter by the current order number (for example, a subscription with 3 orders would have order number = 3).
Total quantity: Filter by total quantity of products in the subscription (for example, 1 × Product A and 1 × Product B = quantity of 2).
Total value: Filter by total dollar value of the subscription (sum of each product's subscription price × quantity).
Subscription creation date: Filter by when the subscription was created.
Day of week: Filter subscriptions with a specific charge day of the week.
Discount code: Filter subscriptions that contain specific discount codes.
Is prepaid renewing: Filter prepaid subscriptions by whether they are set to renew (continue into another term) or end after the current prepaid cycle.
Migrated from another platform: Identify subscriptions migrated from another platform (only captures the migrated subscription, not new subscriptions created by the same customer).
Next billing date: Filter subscriptions where the next billing date falls on, before, or after a selected date.
Shipping interval: Filter by how often the subscription ships (for example, every week, every 2 weeks, monthly).
Subscription country: Filter by shipping address country (supports multiple selections).
Subscription ID: Enter specific subscription IDs to target with the operation.
Subscription note: Filter subscriptions based on keywords or text stored in the internal subscription note.
Subscription status: Filter by status (Active, cancelled, failed, under review, paused).
Product-based conditions
Contains products: Identify subscriptions that include a specific product.
Contains dynamic boxes: Filter subscriptions that include a specific dynamic build-a-box product.
Contains static boxes: Filter subscriptions that include a specific static build-a-box product.
Exclude products: Identify subscriptions that do not include a specific product (helpful when paired with “contains products”).
Other conditions
Audit log: Filter subscriptions based on specific audit log actions.
Cancel Flow: Filter subscriptions that had X rebuttal shown and was saved or not saved.
Quick action: Filter customers or subscriptions based on whether a specific Quick Action link has been actioned, or viewed but not actioned.
Surprise and Delight: Filter customers who were or were not qualified for a surprise and delight gift.
Step 3: Add a Switch node (optional)
A Switch node lets you route subscribers into different paths based on specific conditions — so you can tailor the offer to why they cancelled instead of sending everyone the same thing.
To add a Switch node, click the + icon on the canvas after your trigger and select Switch. The node appears on the canvas with a default Path A and a Conditions not met (If: Else) fallback path.
Click Edit path(s) to open the Configure switch sidebar.
Configuring paths
Each path has a Path name field and a Conditions section. Click + AND condition to define what subscribers need to match to be routed into that path.
Click Add path to create additional paths for different subscriber segments. Always keep the Conditions not met fallback path — this catches any subscribers whose cancellation reason doesn't match your defined rules.
Click Save when your paths are configured.
Example: Create one path for subscribers who cancelled because the product was too expensive, and route them to a discount offer. Create a second path for subscribers who said they had too much product, and route them to a frequency change instead. Everyone else falls into the fallback path with a default offer.
Step 4: Create a landing page
The Create a landing page node generates the personalized page your subscriber sees when they click the link in their notification. Add this node under each Switch path (or directly after the trigger if you're not using a Switch node).
Click Configure landing page on the node to open the configuration modal.
Basic settings
Name (required): An internal reference name for this landing page.
Description (optional): An internal note about this page.
Custom title for customer page (optional): The headline your subscriber sees on the landing page. Defaults to "Preview and confirm actions" if left blank.
Custom description for customer page (optional): Supporting copy below the headline. Defaults to "Check to make sure the queued actions and impacted subscription are correct, then Confirm to perform the actions."
Banner image (optional)
Upload separate banner images for Desktop and Mobile. Images should use a 3:1 aspect ratio (e.g. 1200×400px). Accepted formats: SVG, PNG, JPG, or GIF (max 2MB).
You can also add a Banner link — a URL the subscriber is taken to if they click the banner image.
Actions
The Actions section is where you configure what happens when the subscriber clicks the reactivation button. Reactivate is the first action and is always required — it's pre-placed and can't be removed.
Click + Add action to stack additional incentives on top of reactivation. Available actions:
Add one-time upsell: Adds a one-time upsell to the subscription at the same price used in the Customer Portal.
Add product variant: Adds a specific product variant to the subscription. The variant must have a selling plan that matches the subscription's interval. Prepaid subscriptions support one-time upsells.
Add multiple product variants: Same as above, but for multiple variants at once.
Apply discount: Applies a Shopify discount code to the subscription.
Change interval: Changes the subscription's billing interval (e.g., from every 4 weeks to every 6 weeks).
Swap product: Swaps the subscribed product for a different variant in identical or adjustable quantities. Does not apply to one-time upsells.
Award credits: Adds Skio credits to the subscriber's account.
Add free gift: Adds a product to the subscription as a free one-time item at $0.
You can stack multiple actions — for example, reactivate + apply a discount + add a free gift. Click + Add action again to keep adding.
Click Preview at any time to see how the landing page will appear to your subscriber. Click Save changes when done.
The landing page link automatically expires when a new landing page node is reached in the journey, or when the journey ends.
Step 5: Send a landing page notification
The Send a landing page notification node is what actually delivers the offer to your subscriber. It must follow a Create a landing page node in your flow.
Click Configure notification to open the configuration sidebar.
Winback Offer Summary (optional)
At the top of the sidebar, fill in the Winback Offer Summary field. This is a plain-language description of the offer (e.g., "Reactivate, 10% off, and free gift"). It's sent as {{event.winbackOfferSummary}} in integration events so you can surface the offer description dynamically in your email template without needing a separate template per path.
Choosing a delivery method
You have two options: Custom email or Integration.
Custom email
Use this option to send directly through Skio's mail server — no external platform required.
Subject line: The email subject your subscriber will see.
Email body: Use the rich text editor to write your email copy. Click + Insert variable to add dynamic content. You must include
{{landing_page_url}}somewhere in the body — this is the unique reactivation link generated for each subscriber.
Click Save changes when done.
Integration (Klaviyo or Postscript)
Use this option to trigger a flow in Klaviyo or Postscript instead of sending through Skio.
Integration event custom name: Give the event a name that will appear in your external platform as the flow trigger.
Variables List: Copy any of the following variables to use in your external platform's email template:
Variable | Description |
|---|---|
| Subscriber's first name |
| Subscriber's last name |
| Subscriber's address |
| Plain-language summary of the offer |
| The parent cancellation reason selected |
| The final sub-reason selected |
| The unique landing page URL for this subscriber |
HTML Builder: Use this tab to copy preformatted HTML with variables already embedded, which you can paste directly into a Klaviyo or Postscript template.
Click Save changes when done.
Step 6: Add a Wait node and follow-up (optional)
After your notification node, you can add a Wait for subscription reactivation node to check whether the subscriber reactivated before sending a follow-up offer.
The node has a configurable Delay (default: 7 days) — click Edit delay to change it. After the delay, the flow branches into two paths:
Subscription reactivated: The subscriber has come back. The flow ends here.
Subscription still cancelled: The subscriber hasn't reactivated. You can add another Create a landing page + Send a landing page notification sequence here with an escalated offer (e.g., a free gift after an initial discount didn't convert).
When a new landing page node is reached, the previous landing page link is automatically invalidated. This prevents subscribers from redeeming an older, less generous offer after a better one has been sent.
Activating your Winback
Once your flow is configured, click Save in the top right corner of the builder. To go live, activate the flow from the Winbacks tab.
Once a Winback is active, the flow becomes read-only. If you need to make changes, Skio will create a duplicate draft with your edits applied. Your live flow keeps running until you publish the updated version.
FAQ
Can I have more than one active Winback at a time? No. You can only run one active Winback flow per store at a time. Use the Switch node within a single flow to serve different offers to different subscriber segments.
What if a subscriber reactivates on their own before the delay ends? They're automatically removed from the flow and will never receive the offer. Skio checks the subscription status at the end of each delay period before proceeding.
Do admin or API cancellations trigger a Winback? No. Winbacks only trigger when a subscriber cancels through the Cancel Flow. Admin-initiated and API-driven cancellations are excluded.
Can a subscriber enter a Winback flow more than once? No. Each subscriber can only enter a Winback flow once.
What happens to subscribers already in a flow when I publish an updated version? When you activate a new version, you'll be prompted to either let existing subscribers finish their current path or abort them and move all new cancellations into the updated flow.