Shopify Glossary Terms

EAV Data Model

EAV stands for Entity-Attribute-Value. It's a database design that stores each product attribute as its own row in a separate table, rather than as a column on a flat product table. Magento uses EAV. Most modern ecommerce platforms don't.

In a flat model, a product is one row with columns for title, price, vendor, weight. In EAV, the product exists in one table, and every attribute lives in a separate value table joined back to the product. A single product can pull from 30 to 50 attribute tables.

EAV gives you flexibility. Adding a new attribute doesn't require a schema change. You can have wildly different attribute sets for different product types without sparse tables. That's why Magento adopted it.

The trade-off is performance and complexity. Querying products requires joins across multiple tables. Migrations require custom scripting because off-the-shelf importers can't reconstruct the relationships from a flat CSV export.

When migrating Magento to Shopify Plus, EAV attributes become a mix of Shopify variant options (size, colour), product fields (title, description, vendor), tags (status, classification), and metafields (everything else). The mapping decision drives how merchandising and filtering work post-launch.

If you're moving off Magento, your data is in EAV. If you're moving onto Shopify, you're moving to a flat model with metafields. The script that bridges the two is where migration projects spend their time.

A Shopify Plus Agency for Strategic Design & Advanced Engineering

Building something ambitious?

Chosen by Shopify Plus brands worldwide.