Duplicate & Copy Shopify Metaobject Entries
How to duplicate entries efficiently — and copy entries from one definition to another — without doing it one at a time.
Shopify's native admin has no bulk duplicate for metaobject entries and no built-in way to copy entries between definitions — you'd recreate each one by hand. Structa covers both: duplicate an entry (full field copy) from the row menu, set a whole column to one value with Assign to all, or move data between definitions with a CSV export → import round-trip.
What "duplicate" actually means here
Merchants ask this two different ways, and the right tool depends on which one you mean:
- "Duplicate this entry efficiently" — you have one well-built entry (a bundle, a spec sheet, a location) and want many near-copies you then tweak.
- "Copy entries from one metaobject into another" — you have data in definition A and want it in definition B (a redesigned schema, a merged type, or another store).
The native admin handles neither at scale. Here's how to do each properly.
Duplicating entries efficiently
The native reality
In Content → Metaobjects, there's no "duplicate" button and no multi-select. To make a near-copy you open the source entry, read each field, open Add entry, and retype everything. For 30 product bundles that share 90% of their fields, that's an afternoon.
The efficient way
- Duplicate entry — from a row's three-dot menu, create a full copy of an entry with all its field values, then edit just what's different. (Available on a paid plan.)
- Assign to all — when many entries should share a value, set one cell and push it down the whole visible column in one action. Combine with filters to target a subset.
- CSV round-trip for big batches — export the one good entry, fill the spreadsheet down to N rows in Excel or Sheets, change the handle on each, and import. Rows without an existing handle are created as new entries.
On import, Structa matches rows by handle. Give each duplicate a unique handle and they're created as new entries; reuse a handle and you'll update the existing one instead. It's the single thing to get right when mass-duplicating via CSV.
Copying entries from one metaobject to another
The native reality
Shopify treats each metaobject definition as its own type. There's no admin feature to pour the entries of definition A into definition B — even when the fields line up. People end up exporting via the API or rebuilding entries manually.
The bulk way with Structa
- Export the source definition's entries to CSV.
- Adjust the spreadsheet so its columns line up with the destination definition's fields — drop columns the target doesn't have, add any it requires. (This happens in Excel or Sheets, not in the app.)
- Open the destination definition in Structa and import the adjusted CSV. Rows are matched by handle — new handles create entries, existing handles update them.
For a store-to-store move where the type doesn't exist in the destination yet, do it in two passes: import the definition JSON first to recreate the structure, then import the entry CSV — the columns already match, so there's no re-mapping step. Within a single store, the spreadsheet-adjustment approach above is what lets you pour entries into a differently-shaped definition.
Copying the definition (its fields and validations) is a different operation from copying the entries (the data). Structa's JSON definition export/import moves structure only; CSV moves entry data. To clone a type and its data into another store, do both: JSON for the schema, then CSV for the entries.
Which tool for which job
| Goal | Use |
|---|---|
| One entry → a few near-copies | Duplicate entry (row menu) |
| One value across many entries | Assign to all |
| One entry → dozens of variants | CSV export → fill down → import |
| Entries from definition A → definition B | CSV export → adjust columns in your spreadsheet → import into B |
| A whole type + its data → another store | JSON definition import, then CSV entries |
See the Export & Import and Definition Management docs for the exact steps.
Frequently asked questions
How can I duplicate metaobject entries efficiently?
Use Structa's Duplicate entry row action to copy one entry with all its fields, Assign to all to set a shared value across many entries at once, or a CSV export → fill-down → import round-trip to spin up dozens of variants from a single template. Shopify's native admin has no bulk-duplicate, so this is the efficient path.
Can I copy entries of one metaobject into another?
Yes. Export the source definition to CSV, adjust the columns in your spreadsheet to match the destination definition's fields, then open that definition in Structa and import. Rows are matched by handle — new handles create entries, existing ones update. For store-to-store moves, import the definition JSON first to recreate the structure, then import the entry CSV.
Does Shopify let me bulk-duplicate metaobjects natively?
No. The native admin creates and edits entries one at a time, with no duplicate button and no multi-select. Bulk duplication needs the GraphQL API or an app such as Structa.
Will copying entries also copy the metaobject definition?
No — those are separate. CSV moves entry data; the definition's structure moves via JSON export/import. To replicate a type and its data into another store, do both.
Structa installs in under a minute and reads your existing definitions automatically. Add Structa on the Shopify App Store — duplicate, CSV import, and cross-store transfer are on the $8/mo Pro plan with a 14-day trial.