Operator context
Longer answer
Shopify metafields are the canonical pattern for migrating source-platform custom fields. They support typed data (text, number, JSON, references), reference relationships (link a product to a related product), and validation rules. The capability covers most source-platform custom-field patterns.
The order of operations matters. Define the metafield schema first — namespaces, keys, types, validation. Then map source-platform fields to Shopify metafield definitions explicitly. Then run the bulk load via Matrixify. Brands that load data before defining the schema typically redo most of the work because the resulting structure does not fit the use case.
The storefront templating is where many migrations stop short. Loading metafield data into Shopify does not automatically surface the data in product detail pages, collection pages, or customer-facing UI. The theme must reference the metafields explicitly via Liquid templating. Plan this work as part of the theme rebuild rather than as a separate step.
For complex source-platform custom-field structures (deeply nested, multi-language, reference-heavy), the schema design phase often surfaces architectural decisions worth deliberating. Should an ingredient list be a single JSON metafield or multiple discrete fields? Should size information be metafields or product options? These decisions belong upstream of bulk loading; brands that defer them produce work that needs unwinding later.