FLOW Emails are being skipped due to "unable to create coupon"
Hi,
I have an abandoned checkout flow setup. I’ve noticed that the 2nd email in the flow has a 0% send rate and after further investigation i’ve found that the majority of emails are showing “skipped: Unable to create coupon”.
I have a dynamic coupon code set up in klayvio and its showing on my email as ‘CHECKOUT10-PREVIEW’
I’ve recently changed this from the previous code that was there but i’m still getting the same issue?
what have i done wrong? or what else can i do to test/check what the problem with the code is?
thanks
Page 1 / 1
Hello @KirstyISLAKOKO,
The "Skipped: Unable to create coupon" error in Klaviyo usually happens due to issues with your dynamic coupon setup.
Here’s how to fix it:
1. Check Your Coupon in Klaviyo
Go to Klaviyo → Coupons and verify the coupon exists and is correctly named.
Ensure the coupon prefix is set up properly.
2. Verify Shopify/Klaviyo Integration
Go to Klaviyo → Integrations → Shopify and ensure it’s connected and synced.
3. Ensure the Coupon is Active in Shopify
Go to Shopify → Discounts and confirm:
The discount exists and is active.
No restrictive settings (e.g., "one-time use only") are blocking new codes.
4. Test the Coupon Manually
Replace CHECKOUT10-PREVIEW with a real generated code and test it in Shopify.
5. Recreate the Coupon in Klaviyo
Delete the existing dynamic coupon and create a new one.
Update your email template with the new coupon name.
6. Check Flow Settings
In Flows → Abandoned Checkout Flow → 2nd Email, make sure the Coupon Block is set to "Generate new code at send time".
Final Test
Abandon a checkout, wait for the email, and check if the coupon appears.
If the issue persists, let me know which eCommerce platform you’re using.
Best Regards,
Hi,
thanks i’ve been through your trouble shooting.
i tried a code in the checkout and it worked fine.
Its set up in the email as a button to link back to the checkout using the following format:
{{ event.extra.checkout_url }}&discount={% coupon_code 'CHECKOUT10' %} - is this correct?
We are using shopify.
I have manually gone through the flow with a test email. it has still skipped the 2nd email when manually sent, however it says that the code is active ...
It looks like you're on the right track, but there may be a couple of things to check and adjust for the coupon to work correctly in the second email of your abandoned checkout flow.
1. Review the Button URL Format
Your URL format seems mostly correct, but the syntax might need a small tweak. When you're using dynamic coupon codes in Klaviyo, the correct format should look like this:
Use a ? instead of an & between the checkout_url and the coupon code, unless you already have query parameters in the URL (in which case, keep the &).
Make sure the coupon code name (CHECKOUT10) matches exactly what you have set in Klaviyo.
2. If the 2nd email is still being skipped despite the coupon being marked as active, check these areas:
Flow Trigger Conditions: Ensure the flow trigger for the 2nd email is correctly set. For example, make sure it’s set to wait for a specified period (e.g., 1 hour, 24 hours) after the checkout was abandoned.
Coupon Code Availability: Even if the coupon code is active in Klaviyo, it might not be properly associated with the specific checkout event. Double-check that the checkout_url is being properly populated with the correct parameters at send time.
Test in Preview Mode: You can also preview the email in Klaviyo by sending a test email to yourself to see if the coupon code is getting correctly inserted into the checkout link. This ensures the code is dynamic and functional.
3. Double Check Shopify Discount Settings
Go to Shopify Admin > Discounts and verify that the discount is active and valid for the right conditions (e.g., usage limits, customer eligibility). The coupon may still show as active in Klaviyo, but if it’s not configured properly in Shopify, it won’t work at checkout.
4. Manual Testing
In your manual test, double-check that the checkout URL generated via {{ event.extra.checkout_url }} actually includes the coupon code.
Try clicking the link in your test email and see if it applies the discount correctly when the checkout loads.
5. Check for Other Issues
Flow Execution Logs: If it’s skipping, check the flow logs to identify exactly why it’s not sending. There may be an issue with how the flow logic is structured or a condition preventing the email from being triggered.
If everything looks fine on your end but the issue persists, it might be worth reaching out to Klaviyo support to investigate deeper, as sometimes specific integrations or flow behaviors can have unique issues.
Let me know if this clears up the issue.
Coupon Code Availability: Even if the coupon code is active in Klaviyo, it might not be properly associated with the specific checkout event. Double-check that the checkout_url is being properly populated with the correct parameters at send time.
How do I check this??
Thanks
Now im getting this when i attempt to preview the email from the email edit feature
Okay.
Follow these steps;
1. Preview the Email → In Klaviyo, go to the campaign/flow, click Preview & Test, and check if the checkout button/link includes the coupon code.
2. Check the Customer Profile → Go to Profiles, find a test user, and confirm they have an assigned coupon under Coupons.
3. Send a Live Test → Add your email to a test list, send the email, and click the checkout link to verify the code appears in the URL.
4. Inspect the URL Format → A dynamic coupon should look like:
5. Check Event Data → Go to Analytics → Metrics → Checkout Started, open an event, and see if the coupon field is there.
Let me know what you find.
This error means Klaviyo can’t pull in real data because there’s an issue with the template tags or variables in your email.
How to Fix It:
1. Check Your Template Tags
Go to the email editor and review any variables like {{ event.checkout_url }} or {{ person|lookup:'Coupon Code' }}.
Ensure they match the correct event or profile properties.
2. Test with a Real Profile
In Preview & Test, choose a profile that has actual event data.
If previewing a flow email, make sure the test profile has triggered the event (e.g., started checkout).
3. Use the Data Preview Tool
Click Fix invalid template tags or variables (from your error message).
Check if the event data contains the fields you’re trying to use.
4. Send a Test Email
Send a test email to yourself and check if the coupon or checkout link works.
If the issue persists, let me know what dynamic variables you’re using.
Hey @KirstyISLAKOKO,
Did you manage to get this fixed yet? When I see the “Skipped: unable to create coupon” message, it usually means that something’s wrong with the coupon. If possible, could you provide some info about the coupon you’re using, so we can figure this out together? Thanks!
It would be helpful to know:
Name of your Ecommerce integration (Shopify, WooCommerce, ect).
When your coupon is set to expire
Whether these coupons are dynamic coupons that Klaviyo creates, or coupons that you uploaded into Klaviyo.
It seems likely that the issue is either that there aren’t enough coupons left (if they’re uploaded coupons), or that you’re attempting to use coupons with a fixed expiration date in a flow, and that date has passed. If neither of these seem to be the issue, we can take a closer look! Looking forward to your response.
-Byrne
Hi,
Thanks so much for reaching out. It seemed that the more things i tried to fix the more things were going wrong and i was getting link errors with the return to checkout buttons etc! in the end I deleted the email and started again from an abandoned checkout template and it’s up and running with no coupon issues.
Welcome Flow: my welcome flow is not sending emails. every email that is subscribed is added to the "Email List" which is used in the trigger of the welcome flow. but in the recipient activity, i find the email is "skipped". Reason "unable to create coupon”. but in the dynamic coupon is created and i tested it in Shopify and it's working normally. I even sent a test email and it’s working and received the email with the unique code. But I have 2 new email sign ups from Shopify. And the email is not sent, what can i do to fix the issue? Please help