WooCommerce Google Sheets import and export
Export WooCommerce products, orders, customers, reviews, coupons and WordPress content to Google Sheets, then run supported imports on demand or through a saved Automation slot after the workflow has been reviewed.
The download-upload loop
Export a sheet to CSV, upload it to an importer, map the columns again, then run it. Edit a price next week and repeat the process.
Files nobody trusts
After a few weeks, you have products_final.csv and products_final_v2.csv, with no clear answer about which one matches the store.
Getting it back out
A supplier or translator needs the current catalog. Without a shared source, that means another export every time.
Saved sheets, both directions
Save separate import and export slots once, then use Run now or a supported schedule. Each saved import fetches the current data from its configured range, auto-maps recognized headers and runs without reopening the wizard.
Import from saved sheet
Save an import slot once, then fetch the latest data from its configured range whenever you run it.
Product Matrix
Import product rows from a saved Google Sheet.
☁ Sheets ›Posts & Pages
Import posts, pages or a public custom post type — one sheet per type.
☁ Sheets ›Category Matrix
Import taxonomy terms — one sheet per taxonomy.
☁ Sheets ›Matrix Export to Sheets
Write your catalog or content straight to a shared sheet.
Product Matrix
Export products to a saved Google Sheet.
☁ Sheets ›Posts & Pages
Export posts, pages or a public custom post type.
☁ Sheets ›Category Matrix
Export taxonomy terms to a shared sheet.
☁ Sheets ›Import and export use separate saved slots. If you rename a sheet tab, update the saved range before the next import.
What you can move through Sheets
| Data type | Google Sheets support | Boundary |
|---|---|---|
| Products and variations | Import and export | For cross-store work, use a stable SKU; avoid foreign bare Product IDs and test a small sample |
| Categories and hierarchical terms | Import and export, including Matrix workflows | Keep source_id and parent_source_id stable; preview and test a repeat Matrix taxonomy import |
| Tags and non-hierarchical terms | Standard import/export; multilingual Matrix import | Verify the exact Matrix export and re-import contract on a small sample |
| Posts, pages and public CPT | Import and export | Smart Sync applies only outside Matrix Mode with a mapped Record ID; test import-mode behavior on a sample |
| Orders | Export and import as store data | Export filters are available; imported line items do not preserve the subtotal/discount split |
| Customers / users | Export and import as store data | Email is the natural key; verify role and registration-date behavior on a round-trip sample, and do not migrate password hashes |
| Reviews | Export and import as store data | The review date is set only on create; the reviewer is not linked to a customer account |
| Coupons | WooCommerce-native import and export in Shirely 1.3.0 | Coupons remain deliberate store-data jobs rather than scheduled catalog export slots; verify a sample in WooCommerce |
| SEO and custom meta | Through meta_ columns | Simple ACF fields only when stored as ordinary post meta |
Edit the sheet, import when ready
There is no continuous connection between the sheet and the store. Your team edits the list where it already works, then you start an import when the changes are ready.
For product transfers between stores, use a stable SKU. Shirely 1.3.0 carries catalog provenance so a foreign exported ID is not blindly treated as local, but natural keys and destination QA still matter. Test a small sample first and review unmatched rows before the complete import.
catalog · google sheet
sku,name,regular_price,stock_status WM-100,Wireless Mouse,29.99,instock KB-200,Mechanical Keyboard,79.00,instock
Use it for a round trip
Export supported data to a sheet, review or edit it with your team, then run an import when the changes are ready. Check the boundary table and test a small sample first.
Best fit
Product catalogs, multilingual WPML catalogs, WordPress content and on-demand store-data exports.
Not a live feed
If your only goal is to push every new order to a spreadsheet in real time, Shirely is not that category of tool.
Two ways to connect
| Public sheet | Private sheet | |
|---|---|---|
| Setup | Paste a “Publish to web” URL | A Google Service Account you create and own |
| Credentials | None at all | Its JSON key |
| Who can see the sheet | Anyone with the link | People and service accounts you explicitly share it with |
| Direction | Import | Import and export |
| Content | Products, categories, terms, tags, posts, pages, custom post types and selected store data | |
| Languages | Matrix Mode uses the same field|language columns as CSV, for example name|en and name|de. WPML is required for multilingual Matrix imports; standard single-language workflows do not require it | |
No live cell watching. Start a reviewed job deliberately, or run a saved Automation slot through WP-Cron or WP-CLI.
Controlled runs
Use a deliberate manual run while proving the mapping. A reviewed slot can later run with WP-Cron or WP-CLI; confirm its result in Run History.
Smart Sync
Can skip unchanged posts, pages and public custom post types imported outside Matrix Mode with a mapped Record ID. Products, taxonomies and Matrix rows are always processed. Use an identifier to match an import row to an existing record.
Your Google account
The Service Account belongs to your Google Cloud project. Share a private sheet with that account to let Shirely read or write it.
Is Shirely a real-time WooCommerce Google Sheets connector?
No. Shirely runs explicit import and export jobs. You can start a job on demand or schedule a saved Automation slot, but it does not watch every cell or push every order to Sheets in real time.
Can it export orders, customers, reviews and coupons?
Yes. Shirely can export WooCommerce store data to Google Sheets on demand, including orders, customers/users, reviews and coupons.
Does it work only for products?
No. Products are the strongest workflow, but Sheets can also carry categories, terms, tags, posts, pages, custom post types and selected store data.