Magento → BigCommerce
Move an Adobe Commerce catalog with BigCommerce's data migration app, or with product and customer CSVs. The app covers orders. A product CSV does not. Themes and checkout code stay behind.
Should you make this move?
Both platforms have a case. Compare what you gain with what you give up before scheduling the cutover.
Magento
- Open-source and Adobe Commerce editions give you a deep catalog, multi-store views, and checkout you can change in code
- Core catalog, order, customer, and promotion workflows are integrated
- Hosting, upgrades, and extensions stay with your team, and a CSV export is not a running storefront
- Deep customization usually increases extension, agency, or engineering costs
BigCommerce
- Strong multi-channel and headless commerce capabilities avoid transaction fees
- Core catalog, order, customer, and promotion workflows are integrated
- Theme ecosystem and day-to-day editing can feel less approachable than simpler storefronts
- Deep customization usually increases extension, agency, or engineering costs
BigCommerce: Strong multi-channel and headless commerce capabilities avoid transaction fees. This removes a major source-side concern: Hosting, upgrades, and extensions stay with your team, and a CSV export is not a running storefront.
What you lose: Open-source and Adobe Commerce editions give you a deep catalog, multi-store views, and checkout you can change in code. What you inherit: Theme ecosystem and day-to-day editing can feel less approachable than simpler storefronts.
Jump to a section
Know the shape of the move.
This timeline assumes
- Adobe Commerce or Magento 2.4.5 or newer if you use the free Data Migration app. BigCommerce says the app handles up to 500,000 records across products, customers, and orders.
- A modern product CSV is 20 MB or smaller. Physical products need Item, Type, Name, Price, and Weight. The Item value is Product, Variant, Image, or Video, and the ID is blank for new products.
- The CSV path imports products and customers. BigCommerce's options table marks orders as unsupported for CSV and supported for the app and the API.
- The site already documents Magento → Shopify and Magento → WooCommerce.
- The theme, checkout code, and extensions are a rebuild. You are not copying the Magento storefront.
What survives the move.
“Partial” and “manual” are not footnotes. They are work that must be scheduled and verified.
| Item | Outcome | Impact | What happens | Mitigation |
|---|---|---|---|---|
| Products | partial | critical | The app can move products. A CSV can too, after you reformat it. Variant, image, and video rows sit under the product row. You cannot add variants to a product that already has variants, create modifiers, or assign shared variant options in that CSV. | Import a small file first. Leave Overwrite on only when you mean to replace. Use Excel or Google Sheets. BigCommerce warns that Numbers' delimiters break the file. |
| Categories and brands | manual | high | BigCommerce's migration overview says to create categories and brands before the API load, and to assign them by numeric id, not by name. | Create the tree first. Keep a map of Magento category ids to BigCommerce ids. |
| Customers | partial | critical | The app and a customer CSV can both load customers. Passwords do not come across as usable Magento hashes. | Import customers. Plan a password reset. Do not promise that saved cards move. |
| Orders | partial | critical | The options table says the CSV path does not import orders. The app and the API do, within the 500,000 record cap for the app. | Use the app or the Orders API for history. Do not look for orders in the product CSV. |
| Images | partial | high | The modern CSV cannot import images from a file on your computer. Image rows reference a URL. Magento must still serve those URLs, or you host the files somewhere the importer can fetch. | Keep Magento media online until image rows succeed. Re-upload failures. |
| Digital files | lost | high | BigCommerce says importing digital product files is not supported when you create products by CSV. | Attach download files in the admin or by API after the product exists. |
| Store settings | manual | high | The overview says to set weight units, dimensions, currency, and timezone before the load, and to make the source data match. | Set them on day one. Convert weights if Magento used a different unit. |
| Theme and checkout | lost | critical | Magento themes, layout XML, and checkout plugins do not become a BigCommerce theme. An agency writeup of a Magento to BigCommerce move rebuilt the storefront as headless rather than importing a theme. | Pick a theme or a headless frontend on purpose. Do not block the catalog import on pixel-perfect parity. |
| Promotions and custom options | manual | high | Catalog price rules and Magento custom options are not columns in the basic product file. Modifiers cannot be created by that CSV. | Rebuild promotions in BigCommerce. Recreate options you still sell. |
| Multi-store and multi-source inventory | manual | high | Magento websites and sources do not map one-to-one onto BigCommerce storefronts and locations. | Pick the storefront and the locations before you import stock. |
| SEO URLs | partial | critical | Product URL is a CSV field, and it is case sensitive along with the other headers. Old Magento paths that you do not recreate need redirects. | Keep URLs where you can. Add 301s for the rest before DNS cutover. |
| App record cap | manual | high | The free app is documented for up to 500,000 records across products, customers, and orders, on Adobe Commerce 2.4.5 and above. | Count the three objects. If you are over the cap or on an older Magento, use the API or BigCommerce's migration service instead of hoping the app stretches. |
Where each thing goes.
| Source | Destination | Method | Notes |
|---|---|---|---|
| SKU | SKU | transform | Keep it stable. It is how you find the product again. |
| Product name, price, weight | Name, Price, Weight | transform | Required for a physical product, with Item and Type. |
| Configurable variants | Variant rows under the product | transform | Do not add variants later to a product that already has them via this CSV. |
| Category | Category id | manual | Create categories first. The API assigns by id. |
| Image URL | Image row | transform | A public URL, not a file on your laptop. |
| Customer email | Customer | transform | Passwords are not reusable. |
| Order | Order via the app or API | transform | Not the product CSV. |
| URL key | Product URL | transform | Header names are case sensitive. |
| Theme and checkout code | No destination | unsupported | Rebuild the storefront. |
Make the move recoverable.
Create the source-of-truth backup
Keep a Magento database dump and a catalog export before BigCommerce overwrites a trial import.
- Dump the Magento database and copy pub/media or the remote media bucket.
- Export products and customers from the admin.
- Count products, variants, customers, and orders.
- Save the current BigCommerce catalog if the store is not empty.
- Store checksums.
Proof to capture: Dump checksum and the four counts.
Pilot with the app or a tiny CSV
Learn the failures on 50 products, not 50,000.
- Set weight unit, dimensions, currency, and timezone.
- Create the category tree.
- Import a sample. If you use CSV, include one product, one variant, and one image URL.
- Read the error report before the full load.
Proof to capture: Save the input, output, command or tool settings, warnings, and final item counts.
Load the catalog, then customers, then orders
Put parents in place before history.
- Import products and images while Magento media still responds.
- Import customers.
- Import orders with the app or the API, not the product CSV.
- Build redirects for URL keys that changed.
Proof to capture: Save the input, output, command or tool settings, warnings, and final item counts.
The things most likely to hurt.
These are operating limits. Treat every “Stop if” condition as a blocked migration, not a suggestion.
Orders are expected from the product file
BigCommerce marks orders unsupported on the CSV path.
- Consequence
- You launch with an empty order history.
- Mitigation
- Use the app or the API for orders. Check the count.
Stop if: Order history was in scope and the order count is zero.
Images 404 after Magento shuts down
CSV image rows are URLs.
- Consequence
- The catalog loses photos when Magento media goes away.
- Mitigation
- Finish image import first. Spot-check the BigCommerce image URLs.
Stop if: A bestseller still points at Magento media.
The app is the wrong Magento version
The app is documented for Adobe Commerce 2.4.5 and above, and 500,000 records.
- Consequence
- The import fails late.
- Mitigation
- Check the version and the count on day one. Switch to CSV and API if you are outside that.
Stop if: You are on an older line and the app will not connect.
Checkout customizations are assumed to copy
Theme and checkout code are not catalog rows.
- Consequence
- You cut DNS over to a default theme.
- Mitigation
- Finish the storefront you will actually use before the domain move.
Stop if: A required checkout step exists only in Magento.
Do the work in this order.
- Day 1 · count
Count and choose a path
3 hours active1 day elapsedNone waiting- Record the Magento version and the four counts.
- Dump the database and media.
- Choose the app, or CSV plus API.
Stop / go checkpointDoes the app apply?
Go when: You are on 2.4.5 or newer and under 500,000 records, or you have picked the API path.
Stop when: The version is unknown.
- Day 2 · settings
Store settings and categories
3 hours active1 day elapsedNone waiting- Set units, currency, and timezone.
- Create categories and brands.
- Write the id map.
Depends on: count
Stop / go checkpointIs the tree ready?
Go when: Every Magento category you are keeping has a BigCommerce id.
Stop when: Units still differ from the source file.
- Day 3 · pilot
Pilot import
3 hours active1 day elapsedThe import waiting- Import 50 products, a few customers, and a few orders.
- Check variants, images, and a URL.
- Read the error report.
Depends on: settings
Stop / go checkpointDid the pilot match?
Go when: Sample SKUs, images, and one order look right.
Stop when: Images or orders failed.
- Days 4 to 8 · full
Full catalog, customers, orders
1 to 2 days active4 days elapsedImports waiting- Load products and images.
- Load customers.
- Load orders.
- Add redirects for changed URLs.
Depends on: pilot
Stop / go checkpointDo the big counts match?
Go when: Product, customer, and order counts match or exceptions are listed.
Stop when: Orders were in scope and did not import.
- Day 9 · cutover
Freeze Magento and move the domain
3 hours active1 day elapsedDNS waiting- Put Magento in maintenance for checkout.
- Import the order and customer delta.
- Point the domain at BigCommerce.
- Place a test order.
Depends on: full
Stop / go checkpointIs the new store the one customers should see?
Go when: A test order completes and sample URLs resolve.
Stop when: Checkout depends on a Magento module you have not replaced.
Cut over with a way back.
Cutover
Take checkout on BigCommerce after the catalog, customers, and orders you promised are in.
- Stop Magento checkout. Record the time.
- Import the last customers and orders.
- Confirm image URLs are on BigCommerce.
- Change DNS and keep the old records.
- Place one real test order. Leave Magento readable.
Proof to capture: Freeze time, the three counts, the test order id, and the DNS change.
Rollback
Point the domain back at Magento if checkout or the catalog is wrong.
- Restore the previous DNS.
- Re-enable Magento checkout.
- Copy any BigCommerce-only orders into your books by hand.
- Leave the BigCommerce catalog for the next attempt.
- Do not delete Magento media until images have a new home.
Proof to capture: The domain serves Magento and new BigCommerce orders are listed.
- The test order fails.
- Order history is missing and you said you would bring it.
- Bestseller images 404.
- A checkout step still exists only in Magento.
Prove the migration worked.
Every blocking check must pass. Capture the evidence before cleanup begins.
| Pass | ID | Check | Method | Expected result | Evidence |
|---|---|---|---|---|---|
VER-01Blocking | Version and cap | Read the Magento version and the product, customer, and order counts. | The path you chose matches those numbers. | The version and counts. | |
SKU-01Blocking | SKU sample | Compare 20 Magento products with BigCommerce, including a variant. | Name, price, weight, and variant SKUs match. | The SKU list. | |
IMG-01Blocking | Image host | Open 10 products and read the image URL. | The host is BigCommerce, or another host you will keep. | The URLs. | |
CUS-01Blocking | Customer count | Compare counts and one address. | Counts match or exceptions are listed. A password reset path exists. | The counts. | |
ORD-01Blocking | Order count | Compare Magento and BigCommerce order totals if history is in scope. | They match, or you have a written decision that history stays in Magento. | The totals. | |
URL-01Blocking | Old paths | Request 20 Magento URLs. | Each returns the product or a single redirect. | Status codes. | |
CHK-01Blocking | Test order | Buy one physical product with a test card. | The order is in BigCommerce and the customer email arrives. | The order id. | |
SET-01Blocking | Units | Compare a product's weight and the store currency with Magento. | They match the decision you wrote down. | The product. |
Remove the scaffolding safely.
Safe after: A week of BigCommerce orders, image hosts that are not Magento, and the database dump stored off the old server.
- Keep the Magento dump and media copy.
- Leave Magento admin available until the retention date.
- Remove the migration app's credentials if you are finished.
- Turn off Magento cron that still emails customers.
- Set the next review date.
When the plan met reality.
First-hand accounts are preferred. Vendor case studies are labeled, and every note below is an editorial paraphrase—follow the link for the full context.
Optimum7 says Stronghold Safety left Magento for a headless BigCommerce store built with Catalyst, Next.js, and Vercel. The agency says it migrated customer records, product data, and blogs, put static pages in Contentful, and rebuilt kit products as variants with extra search filters. The results section says product and category pages got faster and that search and SEO improved. It does not publish before-and-after timings or order counts. The storefront was a rebuild, not a theme import.
- Plan the storefront separately from the catalog file if the Magento theme does real work.
- Ask for product, customer, and order counts even when the writeup only says the data moved.
- This Magento to BigCommerce move also changed the frontend and parked pages in another CMS.
- The agency reports a faster catalog experience without giving the numbers behind that claim.
Verify against the primary material.
Platform behavior changes. Check these sources and the review dates above before executing a production migration.
- BigCommerce: Adobe Commerce data migration optionsAccessed 2026-11-06
- BigCommerce: import a catalog from scratchAccessed 2026-11-06
- Adobe Commerce: export dataAccessed 2026-11-06
- BigCommerce: product data migration overviewAccessed 2026-11-06
- Optimum7: Stronghold Safety Magento to BigCommerce case studyAccessed 2026-11-06