Shopify is the default for most online stores. For a flower shop with custom bouquet options, time-slot delivery, multiple zones, recipes, a florist app and a courier roster, the default starts to creak around the third app subscription. This is a practical guide to migrating off Shopify to a purpose-built platform without losing SEO, customers, or operational continuity.
When Shopify stops fitting
There is a point in every growing florist's life where the app stack costs more than the platform. The symptoms:
- A separate app for time-slot delivery, another for zone-based shipping, another for product options, another for recipes (or no recipes at all because there's no good app for it).
- A florist team that uses a different tool than the e-commerce admin to actually do production.
- A courier roster managed in a spreadsheet.
- Reports that don't roll up cleanly because data lives in five tools.
If three or more of those are true, the platform is now the bottleneck, not the inventory.
What you keep
A migration done well preserves:
- All historical orders. Customers can still log in and see them.
- All customer accounts. Login flows can be replaced with magic links if password hashes can't be migrated.
- All URLs that get traffic. This is the SEO-critical part. Product URLs, collection URLs, blog post URLs — all redirected to their new locations with 301 status codes so search rankings transfer cleanly.
- Domain. Switch DNS at the end, not at the beginning. The old store stays live until the new one is ready.
What changes
The biggest change is not technical, it's operational. On Shopify, the team works in a stack: admin for orders, a slot app, a zone app, an inventory tool, a printing tool, and a chat with the couriers. After migration, the team works in one app where everything is one workflow. The first week is unusual because it's quieter than expected — nobody is reconciling data between five places.
SEO during the cutover
Migrations fail SEO when:
- URLs change without 301 redirects.
- Page titles and meta descriptions get rewritten in a brand-voice exercise during the migration. (Do this later, not now.)
- The new platform serves slower or blocks JavaScript that crawlers expect.
To preserve rankings:
- Export every URL Google has indexed (
site:yourshop.comin search, plus Search Console's "Performance" report). - Build a redirect map: every old URL points to its new home with a 301.
- Keep titles and metas identical at cutover. Edit them gradually, one at a time, over the following months.
- Submit the new sitemap to Search Console on day one.
A clean migration loses no rankings. The first month often shows a 5-10% rankings dip; by month three, rankings are back to baseline or higher (because the new site usually loads faster and is less app-blocked).
Custom bouquet options
This is where Shopify hurts most. Native Shopify treats variants as a 3-axis grid (size, color, material). Florists need:
- Vase / no vase, with different prices and stock.
- Ribbon color picker.
- Card message.
- Add-ons: chocolates, balloons, teddy bears.
- Some of these change the bouquet image; some don't.
In Floraboard these are native option types with their own price, stock and image rules. In Shopify they require a paid product-options app and a lot of careful configuration. After migration, you can usually delete the product-options app.
Delivery zones and slots
Floraboard models delivery as zones with their own tariffs, slots and minimum-order rules. Most Shopify florists use one zone (a single shipping rate per area) and one cut-off time. After migration, the model gets more granular: inner-city zones with 1-hour slots, medium zones with 2-hour slots, far zones with 4-hour slots and a higher minimum order. The change is liberating once it's in place — it lets you say yes to more orders without burning out couriers. See Delivery zone setup for florists.
Recipes and procurement
Recipes are the feature most florists don't realize they need until they have it. Each bouquet has a recipe of stems: 12 roses, 8 ranunculi, 5 stems of greenery, etc. The platform sums recipes across the week into one purchase order per supplier. The savings are real:
- Less over-ordering of cheap stems "to be safe".
- Less last-minute scrambling for hard-to-find stems.
- A budget you can actually predict.
Recipes are not a Shopify concept. After migration, you migrate the top 30 bouquets first; the long tail can be done over the next month.
Florist app and courier dispatch
These are the two features that change the day-to-day life of the team:
- The florist app is the calendar your florists work from. Each card on the day is an order with the recipe, the card message, the address, and the customer photo capture at the end. No more printouts.
- Courier dispatch routes addresses, attaches recipient phones, and integrates with local courier services (Tiramizoo, Liefery, DoorDash Drive, UberDirect, Nova Poshta, Glovo) or your own drivers.
If you're currently using a separate tool for either, those subscriptions can usually be cancelled after migration.
How long it takes
Typical migration runs three weeks:
- Week 1: storefront and catalog. Branding, domains, first 30 SKUs with photos, options and SEO.
- Week 2: logistics. Zones, slots, courier services, employee accounts.
- Week 3: procurement and training. Recipes for the top 30 bouquets, suppliers, florist and manager onboarding.
Day 22: cutover. DNS switches, 301 redirects go live, Shopify goes read-only for a few weeks until everyone is sure nothing important was missed.
What you save
The math varies by shop, but a typical 1-2 location florist on Shopify replaces:
- Shopify plan + transaction fees on non-Shopify-Payments.
- 4-7 apps (product options, slots, zones, printing, inventory, plus their integrations).
- A standalone florist production tool.
- A standalone delivery dispatch tool.
The combined cost is almost always higher than a purpose-built platform that includes everything. Migration pays back in months, not years.
A note on "purpose-built"
The point of purpose-built is not "specialized features". It's that all the features know about each other. A slot is connected to a zone. A zone is connected to a tariff. A bouquet has a recipe. A recipe rolls into a supplier order. A florist's calendar is the same calendar the storefront is showing customers. That coherence is what you can't reach by stacking apps, no matter how well-built each individual app is.