Export & Import
Download entries as CSV, import entries from spreadsheets, and share definitions between Shopify stores.
Quick Overview
| Feature | What It Does | Limits |
|---|---|---|
| CSV export | Downloads your metaobject entries as a spreadsheet | Up to 5,000 entries per definition |
| CSV import | Creates or updates entries from a spreadsheet | 250 rows max, 5MB max |
| Definition export | Saves definition structure as a JSON file | Structure only — no entry data |
| Definition import | Creates a new definition from a JSON file | Structure only — no entry data |
CSV Export
CSV export lets you download your metaobject entries as a spreadsheet file you can open in Excel, Google Sheets, or any other spreadsheet tool. Use it to back up data, analyze entries, or share information with colleagues.
How to export
- Open a definition in the bulk editor.
- Optionally, use search, filters, or sorting to narrow what gets exported.
- Click the Export CSV button in the toolbar.
- Your browser downloads the file automatically.
What gets exported
- All displayed entries — respects your active search, filters, and sorting
- All fields in the definition — even if some columns are hidden in the table
- Display Name and Handle columns for easy identification
- Status column when the definition supports publishing
The file opens correctly in Excel and Google Sheets without extra import steps.
How different field types appear in CSV
| Field Type | CSV Format | Example |
|---|---|---|
| Text fields | Plain text | Summer Collection |
| Numbers | Plain number | 42 |
| Boolean (Yes/No) | Yes or No | Yes |
| Dates | Standard date format | 2026-03-12 |
| References | Handle-first format for portability | summer-tee | gid://shopify/Product/123 |
| Lists | Pipe-separated values | Red | Blue | Green |
| Rich text | Rich text JSON (preserves formatting on re-import) | Use Flatten rich text option for plain text instead |
| JSON | Compact JSON | {"key":"value"} |
CSV Import
Import entries from a CSV file to create new entries or update existing ones in bulk.
File limits
- Maximum file size: 5MB
- Maximum rows: 250
- File type:
.csv
Create vs. update
The Handle column controls what happens with each row:
- Handle has a value — Structa updates the matching entry, or creates a new one if no entry with that handle exists
- Handle is empty or missing — Structa creates a new entry
How columns are matched
Structa automatically maps your CSV column headers to definition fields. It tries exact field keys first, then exact field names, then case-insensitive names. You can also adjust the mapping manually in the preview step.
- Display Name is informational only — it is not sent to Shopify
- For publishable definitions, you can set Status per row or force one value for all rows
- Duplicate handles in your CSV are flagged in the preview
Supported value formats
Structa automatically converts common spreadsheet values:
- Booleans:
Yes/No,true/false,1/0 - Numbers, dates, and colors
- Structured fields like money, rating, weight, volume, and dimension (as JSON)
- List fields: pipe-separated (
Red | Blue | Green) or JSON arrays
Empty cells clear the field value where Shopify allows it.
Reference fields
Structa can automatically match references for the most common types:
- Products — by handle, title, or SKU
- Collections — by handle or title
- Metaobjects — by handle or display name
- Files — by filename
For other reference types (customers, variants, pages, articles, etc.), use Shopify GIDs in your CSV. If a required reference can't be matched, that row will fail. If an optional reference can't be matched, Structa skips the value and continues.
How to import
- Open the import flow in Structa and upload your CSV file.
- Review the column mapping, duplicate handle warnings, and row summary.
- Run the import — you'll see created, updated, and failed counts as it progresses.
If some rows fail, the successful rows are still saved. Review the error details, fix the affected rows in your CSV, and import again.
Definition Export
Export the structure of a metaobject definition as a JSON file. This saves the blueprint — fields, types, validations, and settings — not the actual entry data.
Definition exports are useful for:
- Backups — Save a copy of how your definition is set up
- Sharing — Send the JSON file to a colleague who can import it into another store
- Version control — Track how your definition changes over time
In the bulk editor, click Export Definition — the JSON file downloads automatically.
Definition Import
Import a metaobject definition from a JSON file to create a new definition in your store.
- On the definitions page, click Import Definition.
- Upload a Structa definition export or a compatible JSON file.
- Review the name, type, description, and field list.
- If the type already exists, choose a different name or use the suggested alternative.
- Click Import definition to create it.
Definition import creates structure only — no entry data is included. To move entries between stores, export them as CSV from the source store and import the CSV into the destination store.
Troubleshooting
CSV import was rejected
Check that the file is a .csv, smaller than 5MB, and no more than 250 rows.
Some imported rows failed
This happens when individual rows have validation errors or reference values that can't be matched. Review the row-level errors, fix those rows in your CSV, and import again.
Reference columns didn't import
For product, collection, metaobject, and file references, make sure your values match existing handles, titles, or filenames. For other reference types, use Shopify GIDs.
CSV opened with garbled characters
This shouldn't happen — Structa's CSV files are formatted for Excel and Google Sheets. If you're having issues, try opening the file directly rather than pasting the contents.
Imported a definition but the entries didn't come with it
That's expected — definition import only copies the structure. To move entry data, export entries as CSV from the source store and import the CSV after creating the definition in the destination store.
Can I edit fields after importing a definition?
Yes. After importing, you can edit field names, descriptions, and validations, add or remove fields, or change field types from the definition management page.
Best Practices
- Filter before exporting — If you have many entries, use search and filters to export manageable batches
- Keep handles clean — A consistent Handle column makes updates reliable
- Use GIDs for uncommon reference types — Handles and titles work for products, collections, metaobjects, and files; use GIDs for everything else
- Back up definitions regularly — Export your definitions as JSON before making large schema changes
- Test imports first — Try with a small sample CSV before importing hundreds of rows
A short review on the Shopify App Store goes a long way. We read every one.