Need to export or import your WooCommerce subscription orders?
Running a subscription business means you'll often need to move subscription data between systems for reasons such as migrating subscribers, syncing with external platforms, tracking monthly recurring revenue and churn, or managing subscription lifecycles across multiple systems. WooCommerce doesn’t offer a built-in way to move complete order data.
In this guide, we'll walk you through the subscription order export and import process and also cover some advanced cases.
📑 Table of Contents
What You Can Do with WooCommerce Subscription Export and Import
WooCommerce subscription orders contain a lot of data that is useful for everything from recurring revenue tracking to customer lifecycle management.
You can export the subscription order data and use it to:
- Share subscription data with your accountant or bookkeeper
- Sync subscriptions to external platforms
- Track subscription metrics like MRR, churn, and LTV
- Send subscription data to analytics tools
- Migrate active subscribers to a new WooCommerce store
- Run scheduled subscription reports for stakeholders
Similarly, you can use the subscription order import data to:
- Migrate active subscriptions from another WooCommerce store
- Bulk update subscription statuses, billing dates, or trial periods
- Import subscriptions from another platform
Now that you have a sense of what's possible, let's look at the basic order export and import processes using WP All Export and WP All Import. Both are straightforward and take just a few minutes to complete. After that, we'll cover some advanced cases to give you a better sense of what's possible.
Part 1: Exporting WooCommerce Subscription Orders
Exporting subscription data follows a similar process to exporting standard orders, but with a few additional considerations. Here's how it works.
1. Start a New WooCommerce Subscription Order Export
Navigate to All Export > New Export and choose the Specific Post Type as WooCommerce Orders from the dropdown. You'll see a summary of how many total orders are available to export.

2. Add filters to export subscription orders (optional)
Need to narrow down your export to just WooCommerce subscription orders? Expand the Add Filtering Options panel. For subscriptions, you can filter by choosing the Element to Product Type and setting the value to subscription.

3. Build your WooCommerce subscription order export file
Click Customize Export File to open the Drag & Drop screen. You'll see your column selection area on the left and the Available Data panel on the right, with all order fields organized by category. To include subscription fields, expand the Custom Fields panel under Items and drag what you need into your column selection area. You can include subscription-specific data, renewal order data, or both, depending on what you need.

4. Choose your export post type
Expand the Export Type panel near the bottom of the screen. You have two options:
- Spreadsheet: For CSV or Excel. CSV is the default, and you can also pick Excel File (XLS) or Excel File (XLSX) for true Excel output.
- Feed: For XML. Pick Simple XML Feed for standard XML, or Custom XML Feed for full structural control.

Choose Spreadsheet or Feed, then pick your specific format from the dropdown.
5. Configure and run the WooCommerce subscription order export
Once you've selected your fields, click Continue to head to the Export Settings screen. From here you can:
- Set up Automatic Scheduling or manual cron jobs for recurring exports
- Adjust Advanced Options like batch size, real-time exports, or file splitting for large datasets
- Give your export a custom name

For this walkthrough, click the green Confirm & Run Export button.
6. Download your subscription order file
When the export finishes, the Confirm & Run screen will show that your file is ready. Click CSV (or Excel or XML, depending on what you chose) to download it.

You'll also see tabs for Scheduling, External Apps, and Export, Edit, Import. The Export, Edit, Import option is useful for bulk editing subscription data, which we'll cover in the advanced section.
That's the basic process. Most stores have their subscription data exported in under five minutes.
What Order Subscription Data Can You Export
WooCommerce subscription data is organized into categories in the Available Data panel. The fields available include:
- Subscription ID: The unique identifier for each subscription
- Subscription status: The current state of the subscription (active, on-hold, cancelled, expired, pending-cancel)
- Subscription price: The recurring price for the subscription
- Subscription period: The billing frequency (day, week, month, year)
- Billing interval: How often the period repeats
- Subscription length: The total duration of the subscription
- Trial length: How long the trial period lasts
- Trial period: The unit of the trial period (day, week, month, year)
- Sign-up fee: Any one-time fee charged at subscription start
- Payment sync date: When the subscription payment is synchronized
- Subscription limit: The maximum number of renewals allowed
- One-time shipping: Whether shipping is charged only once
- Renewal orders: The related orders generated by each renewal
- Custom subscription fields: Data added by WooCommerce extensions or third-party plugins, including ACF, Meta Box, and JetEngine
To include any of these, expand the Available Data panel and drag the fields you need into your column selection area. You can pick a few, dozens, or every field. The Add All button includes everything at once.
Part 2: Importing WooCommerce Subscription Orders
How to Import WooCommerce Subscription Orders
Importing subscription data works much like importing standard orders, but subscriptions have an ongoing billing relationship that requires a few extra considerations. Here's the basic process.
1. Start a new WooCommerce subscription import
Head to All Import and click New Import to get started. You'll be asked how you want to provide your data. The options include:
- Upload a file: Choose a CSV, Excel, or XML file from your computer
- Use existing file: Reuse a file from a previous import
- Download from URL: Fetch a file from a remote URL on a schedule

For this walkthrough, we'll upload a file from your computer.
2. Select your subscription order import file and target post type
Pick the subscription file from your computer and choose WooCommerce Orders as the post type. The plugin will detect the file type and adjust the interface for you.

3. Add WooCommerce order filters (optional)
Want to import only specific subscriptions? You can add filters before proceeding. Use the Element, Rule, and Value dropdowns to narrow down which records to import. For this walkthrough, we'll skip filtering and bring in all records.
4. Map your order data to subscription fields
Click Set Up Import to open the Drag & Drop screen. Your order fields will appear on the left, organized by category, and your file's columns appear on the right. Drag a column from the right side and drop it onto the matching order field on the left.

For subscription fields, you can use the Custom Fields panel to add new fields.

You can click the Preview button at the bottom to see how the data will look on the order screen once imported.
Once everything looks right, click Continue to Import Settings.
5. Run the WooCommerce subscription order import
From the Drag & Drop screen, click Continue to reach the Import Settings screen. Here you can:
- Let the plugin auto-detect a unique identifier for your subscriptions
- Choose what to do when the import runs again (create new subscriptions, update existing ones, etc.)
- Schedule the import to run automatically
- Adjust Advanced Options

Click Continue to move to the next step. From there, click Confirm & Run Import to start the import.

Once the import finishes, verify your subscriptions in the WooCommerce dashboard under WooCommerce, then Subscriptions.
That's the basic process. Most imports of a few hundred subscriptions are complete in a few minutes.
What Subscription Data Can You Import
Out of the box, the import handles standard order fields. For subscription-specific fields, WP All Import uses the Custom Fields panel to capture that data. The import process is simply the reverse of the export: drag a column from your file and drop it onto the matching subscription field on the left. Click the Preview button to verify the mapping before running the import.
Advanced WooCommerce Subscription Export and Import
The basic export and import process handles the most common subscription cases, but subscriptions often require more advanced handling. Here's how to handle the most common advanced cases:
Handle Subscription Renewals and Billing Cycles
Every active subscription produces a series of renewal orders, each representing a billing period. When you export or import subscription data, both the subscription record and the related renewal orders need to come along together.
WP All Export captures both the subscription record and the full renewal order history in a single export. Each renewal order retains its own order ID, date, and totals, while remaining linked to the parent subscription. On the import side, the subscription and its renewal orders are recreated together, with all relationships intact.

The export includes the subscription record with its billing details and all associated renewal orders separated by the pipe character. On import, the plugin recreates the subscription and links each renewal order to it, so the billing history is preserved exactly as it was in the source store.
Preserve Trial Periods and Sign-up Fees
Trial periods and sign-up fees shape how a subscription starts and how revenue is recognized from day one. Both need to be captured accurately in your export and preserved on import.
The trial end date, sign-up fee amount, and trial period length are all available in the Available Data panel for export and can be mapped during import. This ensures the trial logic and initial billing are preserved exactly as they were.
The trial fields include the trial period (day, week, month, year), the trial length (how many of those periods), and the calculated trial end date. The sign-up fee is a one-time charge applied when the subscription starts, separate from the recurring subscription price. Both fields are important for accurate revenue recognition and customer billing. On import, the plugin preserves the trial logic and the sign-up fee amount, so the subscription starts correctly on the destination store.
Link Subscriptions to Customers and Products
A subscription is only meaningful when it's tied to a specific customer and a specific product. Both links need to be preserved during export and import, or the subscription loses its context.
WP All Import ensures customer and product links are preserved by matching them during import. The subscription's customer is matched by email or user ID, and the product is matched by SKU.

If the customer or product doesn't exist yet, you'll need to import them first, similar to how order imports work.

The matching happens during the import process: the plugin looks up each subscription's customer and product in the destination store's database and links them. If the customer doesn't exist, the import will create a guest customer. This ensures each subscription is properly tied to the correct customer and product, preserving the relationship that makes the subscription meaningful.
Advanced Export & Import WooCommerce Subscription Orders Workflows
Real-world subscription workflows go beyond the common data handling scenarios. Here's how to handle the most common advanced workflows, such as migrating active subscriptions to tracking the metrics that drive subscription businesses.
Migrate Subscription Orders Between WooCommerce Stores
Migrating active subscriptions is one of the most complex data moves a store can face. Unlike a one-time order, each subscription has an ongoing billing relationship, a renewal history, and a status that all need to survive the move.
WP All Export and WP All Import handle subscription migration through the Bundle export option, just like regular order migration. The Bundle includes the subscription record, all related renewal orders, and the settings file that tells the import plugin how to reconstruct everything correctly on the destination site. Customer and product links are preserved, and the subscription's status, billing schedule, and trial dates all carry over intact.

On the destination site, the settings file configures the import automatically, so you don't need to manually set up field mappings. Before running a full migration, test with a small subset of subscriptions to verify the renewal order links and customer-product relationships are preserved correctly.
Track Subscription Metrics (MRR, Churn, LTV)
Subscription businesses live and die by their metrics: monthly recurring revenue, churn rate, customer lifetime value. All of these depend on having clean, complete subscription data that you can feed into your analytics tools.
WP All Export exports subscription data in a structured format that you can feed directly into analytics and BI tools. You can build a custom export layout with the fields your metrics tool needs: subscription status, billing period, sign-up date, churn date, and so on. Schedule the export to run on a recurring basis, or use the real-time export feature to push new subscription events to your analytics platform as they happen.

Final Thoughts - Exporting and Importing WooCommerce Subscription Orders
A subscription isn't a one-time sale. It's an ongoing relationship that generates transactions over weeks, months, or years. WP All Export captures that entire relationship in one file, so when you move it, you move the full billing history, not just a snapshot.
What's different about subscriptions is the importance of the renewal cycle. Each renewal is a separate transaction tied back to the original subscription, and the status of the subscription (active, on-hold, cancelled) determines whether more renewals are coming. If the status is wrong or the renewal history is broken, the subscription won't work correctly on the destination store.
Frequently Asked Questions - Exporting and Importing WooCommerce Subscription Orders
Frequently Asked Questions - Exporting and Importing WooCommerce Subscription Orders
Can I export subscription orders with failed payment history?
Failed payment attempts are stored as order meta data. WP All Export captures these through the Custom Fields section in the Available Data panel. You can include failed payment dates, retry attempts, and failure reasons in your export, which is useful for tracking subscription health and churn analysis.
How do I handle subscription orders with custom billing intervals?
Custom billing intervals (like every 6 weeks or every 3 months) are captured in the Billing Interval field. WP All Export includes this in the export, and on import, you can map it to the same interval on the destination store. Make sure the destination store supports the interval you're importing, or the subscription won't bill correctly.
How do I handle subscription orders with paused or suspended billing?
Paused or suspended subscriptions have a status of "on-hold" in WooCommerce. WP All Export captures the current status along with the date the subscription was paused. On import, the subscription can be restored to its previous status or kept on-hold depending on your needs.

