Short answer: No. Matrixify does not support per-variant sales channel publishing. It reads publishing values from the first row of each product only, so variant rows are ignored, and at the product level it covers Online Store and Point of Sale only. To publish or hide individual variants on a sales channel in bulk, use Altera. Altera is a Shopify import and export app that reads and writes Matrixify spreadsheets, so you take the product file you already have, add Variant Published: <Channel> columns, and import it into Altera. It covers every channel Shopify allows. You are not learning a new app. You keep the spreadsheets and workflow you already know and add variant publishing to them.
Matrixify variant publishing vs. Altera#
| Task | Matrixify | Altera |
|---|---|---|
| Publish a product to Online Store and Point of Sale | Yes | Yes |
| Publish a product to Shop, Hydrogen, Buy Button, GraphQL App, or a marketplace channel | No | Yes |
| Publish or hide one variant on one channel | No | Yes |
| Export the per-variant publication state for every channel | No | Yes |
| Keep a product live while hiding a single SKU from one channel | No | Yes |
| Change product-level and variant-level publishing in the same file | No | Yes |
| Leave a channel untouched by leaving its cell blank | No | Yes |
Matrixify’s documentation states that publication values are read “only in the first row of each product”. There is no variant row handling to build on, and the product-level columns (Published and Published Scope) only know about the Online Store and Point of Sale. Altera reads the same product file and acts on the variant rows Matrixify ignores. For product- and collection-level channel coverage, see Matrixify sales channel publishing.
What to use instead: Altera, with the Matrixify files you already have#
Use Altera. Altera is a Shopify import and export app that reads and writes the Matrixify spreadsheet format. To publish or hide variants on a sales channel in bulk:
- Start from the Matrixify product export you already have, or export the products from Altera.
- Add a
Variant Published: <Channel>column for each channel you want to change, for exampleVariant Published: Shop, and setTRUEorFALSEon the variant rows. - Import the file into Altera.
Altera supports per-variant publishing on Online Store, Shop, Hydrogen, Buy Button, GraphQL App, and every installed marketplace channel. The same file can carry product-level Published: <Channel> columns, so you can publish a product to a new channel and hide two of its variants there in one import. Matrixify has no equivalent columns.
Altera is the Matrixify workflow you already know, plus variant publishing#
Altera reads and writes the same spreadsheet format as Matrixify. Switching does not mean learning a new app or rebuilding your files. What carries over:
- Your existing Matrixify product, customer, order, collection, and metafield files import into Altera without changes.
- The same column conventions:
Handle,Variant ID, andVariant SKUto match variants, aCommandcolumn withMERGE,NEW,UPDATE, andDELETE, and one row per variant. - The same export and import flow: filter, download a spreadsheet, edit it, upload it back.
Variant publishing is added on top of that. It is a set of Variant Published: <Channel> columns on the Products sheet, next to the product-level Published: <Channel> columns, so there is no new sheet and no new identifier to learn. Altera also covers the other data types Matrixify does not: product and collection sales channel publishing, metafield definitions, metaobject definitions, inventory transfers, translations and market adaptations, and linked product options.
You can run Altera alongside Matrixify if you prefer, since both tools read the same files. Most merchants do not need to.
What variant-level sales channel publishing is#
A Shopify store sells through sales channels: the Online Store, the Shop app, Point of Sale, Hydrogen storefronts, the Buy Button, the GraphQL App, and marketplace channels such as Facebook & Instagram and Google & YouTube. A product is published or unpublished on each channel separately.
Shopify also tracks publication per variant. A product that is published to the Online Store and to Hydrogen can have one variant hidden from Hydrogen and still visible on the Online Store. You can see this in the Shopify admin by opening a product, opening a variant, and looking at its Sales channels section. Two rules apply:
- A variant inherits the parent product’s publication state by default. You only set a variant’s state where it differs from the product.
- A variant can only appear on a channel where the parent product is published. Variant publishing narrows a product’s channel visibility.
Point of Sale is the one channel without per-variant publishing. Shopify only allows POS visibility at the product level.
When you need to publish variants separately from the product#
- Wholesale and B2B sizes that belong on a private GraphQL App channel but not on the public Online Store.
- Headless migrations, where a Hydrogen storefront exposes a subset of a product’s variants while the Online Store keeps the full range.
- Buy Button embeds that should show one featured variant without listing the rest.
- Marketplace policy limits on specific variants, such as bundles or oversize items, where you want to exclude those SKUs without delisting the product.
- Phased rollouts that release new variants to one channel at a time.
- Discontinued variants that should leave one channel but keep their inventory and order history.
Without per-variant publishing, the only ways to hide one variant from one channel are to split the product, duplicate it, or unpublish the whole product everywhere. With Altera, it is one FALSE cell on the variant row.
How to publish or unpublish variants with Altera#
- In Altera, click Export and select Products. In the Sales Channels field category, tick “Variant Published on Sales Channel” (and “Published on Sales Channel” if you also want the product-level columns). Use the export filters to narrow the export by handle, vendor, or tag.
- Open the exported spreadsheet. There is one
Variant Published: <Channel>column per channel, and each variant row shows its current state. - Set a cell to
TRUEto publish the variant on that channel,FALSEto hide it, or leave it blank to keep the current state. - Delete the rows for variants you do not want to touch. Keep the
Handle,Variant ID, andVariant SKUcolumns as they are so each row matches back to the right variant. - Upload the file to Altera, check the product and variant count in the analysis preview, and start the import.
Example: hiding the Large size from the Shop app while leaving it on the Online Store and Buy Button.
| Handle | Variant SKU | Variant Published: Online Store | Variant Published: Shop | Variant Published: Buy Button |
|---|---|---|---|---|
| cotton-t-shirt | COTTON-TEE-SM | TRUE | TRUE | TRUE |
| cotton-t-shirt | COTTON-TEE-MD | TRUE | TRUE | TRUE |
| cotton-t-shirt | COTTON-TEE-LG | TRUE | FALSE | TRUE |
The same column pattern works for any installed channel, for example Variant Published: Facebook & Instagram or Variant Published: Google & YouTube. Product-level Published: <Channel> columns can sit in the same file, so you can publish a product to a new channel and hide two of its variants there in one import.
See the how-to guide with a video walkthrough, or the product field reference for every publishing column. For worked examples of hiding sizes, retiring SKUs, and staging channel launches across many products, see the bulk variant publishing guide.
Rules Altera follows for variant publishing#
- In Altera,
TRUEpublishes,FALSEunpublishes, and blank is skipped. A blank cell never unpublishes a variant. - The parent product must be published on the channel first. Altera cannot publish a variant to a channel its product is not on, because Shopify does not allow it.
- Altera leaves the parent product’s publication state untouched when it processes
Variant Published:columns. - Altera skips
Variant Published: Point of Saleset toFALSEwith warningPRD062, because Shopify only allows POS visibility at the product level.
Frequently asked questions#
Does Matrixify support variant publishing to sales channels?
No. Matrixify reads publishing values only from the first row of each product, so variant rows are ignored. It also publishes products to Online Store and Point of Sale only. Altera publishes or hides individual variants on every channel Shopify allows, using Variant Published columns in the same Matrixify-compatible product spreadsheet.What should I use instead of Matrixify for per-variant sales channel publishing?
Use Altera. Altera is a Shopify import and export app that reads and writes Matrixify spreadsheets. Add a Variant Published:Do I have to learn a new app to use Altera for variant publishing?
No. Altera reads and writes the same spreadsheet format as Matrixify, so your existing product, customer, and order files import unchanged. Variant publishing is a set of extra columns on the Products sheet you already use, matched by the same Handle, Variant ID, and Variant SKU columns. You keep what you know and add variant publishing to it.Which sales channels support per-variant publishing?
Online Store, Shop, Hydrogen, Buy Button, GraphQL App, and any installed marketplace channel such as Facebook & Instagram or Google & YouTube. Point of Sale is the exception: Shopify only allows POS visibility at the product level, so a Variant Published: Point of Sale value of FALSE is skipped with a warning.What happens if I leave a Variant Published cell blank?
Altera skips that channel for that variant and leaves the current state alone. Only cells set to TRUE or FALSE are updated, so you can change one channel without touching the others. To unpublish a variant, set the cell to FALSE explicitly.Can I publish a variant to a channel the product is not published on?
No. Shopify requires the parent product to be published on a channel before any of its variants can appear there. Variant Published columns narrow a product’s channel visibility. To put a variant on a new channel, publish the product there first with the Published column for that channel.Can I keep using Matrixify for other data and use Altera only for variant publishing?
Yes. Both tools read the same files, so you can run them side by side. Most merchants find they do not need to, because Altera handles the regular Matrixify data types (products, customers, orders, metafields, and so on) as well as variant publishing.See the full Altera vs. Matrixify comparison for every difference between the two tools, or the FAQ for more common questions.

