When you migrate a WooCommerce store, your coupons do not carry over on their own, because they are store data held in the database, not public content, so they have to be exported from the source and recreated in the new platform’s discount system. That matters more than it sounds, because customers hold coupon codes in emails, newsletters, and loyalty messages, and if those codes do not exist on the new store, entering them fails and you look broken at the checkout. So you export each coupon’s code, discount type and amount, expiry, usage limits, and any product or category restrictions, then recreate the same codes with the same rules on the new site. Keeping the codes identical is what lets a customer’s existing code still work. WPBuildAI exports your coupon codes and their rules and recreates them faithfully in the new store’s discount system, so the codes your customers already have keep working through the move.
Coupons are store data, not content
The key distinction is that a coupon is not something on your pages; it is a rule in your database. WooCommerce stores each coupon as a record with a code and a set of conditions, and the store applies it at checkout when a customer types the code. None of that is public content that a capture of the live site can read, because the coupon logic lives in the back end, not the storefront. So coupons sit on the same side of the line as other store configuration: they must be exported from the source rather than captured, the same way customer and order data has to be exported rather than scraped from public pages. Recognizing that coupons are data, not content, is what tells you they need deliberate handling.
The codes in the wild are the reason it matters
The stakes here are customer-facing and immediate. Coupon codes do not only live in your database; they live in the world, in the confirmation emails, newsletters, ads, and loyalty messages you already sent, and in customers’ saved notes. Each of those codes is just a string a customer will type at your checkout, expecting it to work. If the migration does not recreate that code on the new store, the customer types it, gets an error, and concludes your store is broken at the worst possible moment, when they were ready to buy. So the coupons are not an internal tidiness matter; they are a promise already made to customers, and honoring it means the codes have to exist on the new platform exactly as issued.
Preserve the full rule set, not just the code
Recreating a coupon means reproducing its behavior, not just its name. Each coupon carries rules: the discount type and amount, whether it is a fixed sum or a percentage, its expiry date, usage limits per coupon and per customer, and restrictions such as eligible products, categories, or a minimum spend. Those rules are what make the discount apply correctly and safely, so recreating the code without them would change how it behaves, perhaps applying too broadly or without its cap. So export the complete rule set for each active coupon and reproduce it faithfully on the new platform. A code that gives the wrong discount, or one with its usage limit dropped, is its own kind of failure, which is why the rules matter as much as the code.
Bring across the live coupons, leave the dead ones
A migration is a natural moment to prune. You do not need to recreate every coupon your store ever had; you need the ones that are still active or scheduled, and especially the codes that are live in the market right now, in current campaigns, emails, and loyalty programs. Expired and abandoned coupons can be left behind, since recreating them only clutters the new store’s discount list with dead entries. So triage the coupon list the way you would triage product categories in a replatform: keep what is current and customer-facing, drop what is obsolete. The goal is that every code a customer might reasonably still use works, without dragging years of dead codes into the new system.
Coupons are continuity, not SEO
It is worth placing this correctly: coupons are about store continuity and customer experience, not search rankings. They do not carry SEO value the way your product pages and their product structured data do, and the platform change itself is not a ranking factor, as the Backlinko analysis shows. So handle coupons on the commerce track of your migration, alongside orders and customers, while the SEO track, preserving URLs and setting 301s for your product pages as in any careful site move, runs in parallel. Keeping the two tracks distinct helps: the coupon work protects conversions and trust at checkout, and the URL work protects the traffic that brings customers to the checkout in the first place.
Steps to handle coupons in a store migration
- Export your coupons from the source: codes plus their full rule sets.
- Identify the active and scheduled ones, especially codes live in current campaigns.
- Recreate each keeper on the new platform with the identical code.
- Reproduce the rules: discount, expiry, usage limits, and restrictions.
- Leave expired coupons behind rather than cluttering the new store.
- Test real codes at checkout on the new store before launch.
Worked example: keeping a promo code alive
Consider a store running a seasonal WELCOME10 code across its email list and ads when it migrated. The team treated coupons as data: they exported every active coupon with its rules, saw that WELCOME10 gave ten percent off with a minimum spend and a per-customer limit, and recreated it on the new platform with the identical code and identical rules. Expired codes from past seasons were left behind. Before launch they tested WELCOME10 and a couple of other live codes at the new checkout and watched the right discount apply. When customers who had the code from an email arrived after launch, it worked exactly as promised, and no one hit the broken-code error that would have cost a sale and eroded trust.
Limitation: complex discount logic may need reworking
It is honest to bound this. Standard coupons recreate cleanly, but complex promotional logic, tiered discounts, stacked coupons, automatic cart-level rules, or discounts driven by a dedicated pricing plugin, may not map one to one onto the new platform’s discount system and can need rethinking rather than copying. The new platform may express promotions differently, so some rules are reproduced through its own mechanisms instead of an identical coupon. So scope your promotions honestly: simple codes are quick, but a sophisticated discount engine is its own piece of work, and it is better to redesign those deliberately than to assume they transfer unchanged and discover a broken promotion after launch.
Key points
When you migrate a WooCommerce store, coupons do not carry over on their own, because they are store data in the database, not public content, so a capture cannot read them and they must be exported from the source and recreated on the new platform. This matters because customers already hold codes in emails and campaigns, so recreate each active code identically, with its full rule set, discount, expiry, usage limits, and restrictions, or those codes fail at checkout and cost you sales. Bring across the live and scheduled coupons and leave expired ones behind, and remember coupons are about store continuity, not SEO, so run them on the commerce track while URL preservation protects your traffic separately. Complex promotional logic may need deliberate reworking rather than a straight copy. WPBuildAI exports your coupon codes and their rules and recreates them faithfully in the new store’s discount system, so the codes your customers already have keep working through the move. Send your web address for a free analysis.
Not affiliated with WordPress, Lovable, Webflow, Shopify, Wix, or Squarespace.