Matrixify added translations support in May 2026. The export covers 8 container entities (products, collections, pages, blogs, blog posts, menus, metaobjects, and shop fields) in a wide layout where each locale gets its own column.
Altera covers 20 translatable resource types, ships 13+ export filters (including a per-locale multi-select), supports market-scoped translations, and uses a long-row layout that round-trips into Shopify’s native translation importer.
This page walks through what each tool’s translations export covers, the filter and market differences, and the format trade-offs between wide and long layouts.
What Matrixify’s Translations Export Covers#
Matrixify models 8 top-level container entities, with nested children encoded through dotted-handle conventions and field-name suffixes:
- Product: title, body, SEO, type, handle, options, option values, and product metafields
- Variant metafields: surfaced as
Variant Metafield: ns.keyrows under the parent product - Collection: title, description, handle, SEO, and collection metafields
- Page, Blog, Blog Post
- Menu (link-level granularity unclear from their schema)
- Metaobject (including metafields on entries)
- Shop: policies and shop-level fields
Translations are exported in a wide format: one row per resource, with Translation Value: fr, Translation Value: de, and so on as separate columns per locale. The layout puts source text and every target language side by side in one row so that they are always grouped together.
What Altera’s Translations Export Covers#
Altera’s translations export covers 20 translatable resource types, all of Matrixify’s entities plus the following:
- Online Store theme translations (
shopify.checkout.*, theme section labels) - Email templates (order confirmations, shipping updates, abandoned-cart emails)
- Collection filter labels (the storefront filters on collection pages)
- Media image alt text
- Delivery method definitions
- Payment gateway names
- Selling plans and selling plan groups
Translations are exported in a long format: one row per (resource, field, locale) tuple, with a Locale column rather than per-locale columns. This shape is a drop-in for Shopify’s native translation importer and stays stable regardless of how many locales the store has enabled.
Filter Expressiveness: One Entity Filter vs Thirteen#
Matrixify ships a single filter on translations exports: Entity, which selects among the 8 container entities. Altera ships 13+:
| Filter | What it does |
|---|---|
locale | Pick one or more target languages (multi-select, with “is any of” / “is not any of”) |
type | Pick translatable resource types (20 options) |
field | Match field keys with EQUALS / STARTS_WITH / NOT_EQUALS (e.g. STARTS_WITH shopify.checkout) |
market | Include base translations, market-scoped translations, or both |
metafield_namespacekey | Export translations for a specific metafield |
metafield_namespace | Export translations for metafields under a namespace |
theme_id | Export translations for a specific theme |
metaobject_type | Filter to a specific metaobject definition |
product_id / product_status / product_tag / product_created_at | Scope product translations |
collection_id / collection_handle / collection_type | Scope collection translations |
Why the per-locale filter matters#
Shopify’s translation API takes locale as a required per-call parameter. You can’t ask for all locales in a single query. Any translation exporter has to make one pass per locale.
Matrixify’s wide format puts each locale in its own column, so every export structurally fetches every enabled locale. A 5-locale store always pays roughly 5× the API time on every export, even if only French changed.
Altera’s locale filter scopes the work:
- Export only French → one filter row, one pass over the API
- Export French and Spanish → one filter row, two passes
- Export everything except English overrides → exclusion mode
Concrete workflows the filters unlock#
Three merchant requests that resolve to one Altera filter row each:
“Export French and German translations for products tagged
summer.” Altera:locale=fr,de+product_tag=summer. Matrixify: export every locale on every product, filter the spreadsheet in Excel.“Export only checkout theme translations to send to our translator.” Altera:
type=ONLINE_STORE_THEME+field STARTS_WITH shopify.checkout. Matrixify: theme translations aren’t part of the export format.“Export translations for the
custom.care_instructionsmetafield on active products.” Altera:metafield_namespacekey=custom.care_instructions+product_status=active. Matrixify: export the entire Product entity (every field, every locale) and filter in Excel.
The pattern is the same each time: Altera’s filters produce the file you asked for. With Matrixify’s single Entity filter, the export is the raw material and the filtering happens downstream in Excel.
Market-Scoped Translations#
Shopify’s translation API has supported market-scoped overrides for around two years. Large merchants use them for region-specific wording: price tier names, legal copy, currency phrasing.
Matrixify’s translations format is locale-only: no market column, no market filter. Altera surfaces markets as a first-class column with full round-trip support: market name, numeric ID, or GID accepted on import, primary language automatically included when a market filter is active, and Base translation / All Markets pseudo-tokens for combining scopes.
Wide vs Long Format: A Real Trade-Off#
The shape of the file is the most visible difference between the two tools, and it isn’t strictly better either way.
Matrixify’s wide format suits a workflow where a human translator opens the file in Excel. Source text on the left, one column per target language, fill in the blanks. Putting every locale next to the source in a single row is what most translator-facing tools (Excel review workflows, CAT tool review modes, glossaries) expect, and it’s a real ergonomic win over Shopify’s Translate & Adapt app, which forces you to switch languages from a dropdown to see one at a time.
Altera’s long format suits everything that isn’t a human in a spreadsheet. Each (resource, field, locale) is its own row, so scripts, scheduled jobs, programmatic pipelines, and translation-memory tools have a stable schema regardless of how many locales are involved. Adding a sixth language doesn’t change the column count. Filtering down to a single locale or market is one filter row. Round-tripping through a CAT/TMS that ingests “one segment per row” works directly. The long format is also a drop-in for Shopify’s native translation importer.
If your workflow is “send the file to a human translator, they fill in the gaps, send it back,” Matrixify’s layout is easier to live with. If your workflow involves scripts, scheduled jobs, market overrides, or more than two locales, the long format pays back the bilingual-review ergonomics in spades.
Summary#
| Capability | Matrixify | Altera |
|---|---|---|
| Resource type coverage | 8 container entities | 20 types incl. theme, media alt, delivery, email, filter, payment gateway, selling plans |
| Filters | 1 (Entity) | 13+ |
| Per-locale export filter | No | Yes (locale multi-select) |
| Market-scoped translations | No | Yes |
Theme translations (shopify.checkout.*) | No | Yes |
| Email template translations | No | Yes |
| Collection filter translations | No | Yes |
| Media image alt text translations | No | Yes |
| Default export layout | Wide (per-locale columns) | Long (per-locale rows) |
| Shopify-native importer compatible | No | Yes |
Frequently Asked Questions#
Does Matrixify export Shopify translations?
Yes. Matrixify’s translations export covers 8 container entities (Product, Collection, Page, Blog, Blog Post, Menu, Metaobject, and Shop) with a single Entity filter and a wide per-locale column layout.
Which translatable resource types does Altera cover that Matrixify doesn’t?
Online Store theme translations (shopify.checkout.* and theme section labels), email templates, collection filter labels, media image alt text, delivery method definitions, payment gateway names, and selling plan / selling plan group translations.
Why does a per-locale filter matter?
Shopify’s translation API requires one call per locale. There’s no “all locales” query. A store with 5 enabled languages and no per-locale filter pays 5× the API time on every export, even if only one language changed. Altera’s locale filter scopes the work to only the languages you actually want.
Can I use Altera’s translations alongside Matrixify for everything else? Yes. Altera uses a Matrixify-compatible spreadsheet format. You can use Matrixify for data types it supports and Altera for translations, metafield definitions, metaobject definitions, inventory transfers, linked product options, sales channel publishing, variant sales channel publishing, and other data types Matrixify doesn’t cover.
See our full Altera vs. Matrixify comparison for a breakdown of all the differences between the two tools, or check the FAQ for more common questions.

