🎉 30 days FREE!Claim Now

· MicroPIM Team · Integrations  · 16 min read

What a Catalog Is in Shopify (and How to Use It for Promotions)

A Shopify catalog is not the same thing as a collection, and confusing the two is why merchants cannot find the pricing controls they are looking for. Here is what a catalog actually is, and how to use one to run a market or wholesale promotion.

A merchant asks their agency for “a 10% discount on this catalog for our German customers,” and the agency opens the Shopify admin looking for a discount code field on a catalog and finds none. That confusion is common, and it happens because “catalog” gets used loosely to mean three different Shopify objects: a collection, a discount, and the thing actually called a catalog. Only one of those controls pricing, and getting that one right is what this post is about.


AEO answer: A Shopify catalog is a named combination of a product set, a context (either a market or a B2B company), and a price list that together determine which products a given audience sees and at what price. It is different from a collection, which is a storefront browsing grouping with no pricing logic attached. Catalogs become a promotion tool when the price list attached to a catalog is adjusted or swapped, for example discounting a market’s catalog for a sale window, or giving one wholesale account a negotiated price list.


What a Catalog Actually Is

Shopify’s own help documentation defines them plainly: “B2B catalogs determine the products and pricing your B2B customers can access.” The same underlying object, not a separate feature, is what Shopify Markets uses to control regional and country-specific pricing. In both cases a catalog is three things bolted together:

  • A product set. Every product in your store, or a specific subset of it.
  • A context. Who the catalog applies to: a market (a country or region) or a B2B company and its locations.
  • A price list. The pricing rules that override the product’s default price for that context.

None of those three things is a discount code, a coupon, or a merchandising page. A catalog does not show up as a URL a shopper visits. It works silently in the background: when a shopper or a logged-in B2B buyer loads a product, Shopify checks which catalog applies to them and serves the price and product visibility that catalog defines.

That is the source of most of the confusion. Merchants are used to “catalog” meaning a public-facing list of products, the way it does on Amazon or in a print sense. In Shopify, the public-facing list is a collection. The catalog is the invisible pricing and access layer sitting underneath it.

CatalogCollectionPrice list
What it controlsWhich products and prices an audience seesHow products are grouped and displayed for browsingThe actual price values (fixed or percentage)
Where it appearsNowhere directly; it is a backend rule, not a pageA storefront page with a URL customers can visitNowhere directly; it is attached to a catalog
Does it affect price?Yes, indirectly, through its attached price listNoYes, directly

Read that table as a chain: a catalog defines who is in scope, a price list defines what they pay, and a collection has no relationship to either. A product can sit in five collections and one catalog at the same time, and changing its collections will never move its price by a cent.

The Three Building Blocks in Detail

It helps to look at each of a catalog’s three components on its own, because each one is configured in a different place in the admin and behaves differently.

Products: Publication, Not Just Membership

The product side of a catalog is which items are included, and whether they are actively published to that catalog’s audience. A catalog can include your entire store or a curated subset, and you can set it to add new products automatically, which matters because forgetting to add a new SKU to a wholesale catalog is a real, recurring failure mode.

Context: Market or Company

The context is the audience switch. For consumer-facing pricing, the context is a market, a country or group of countries configured under Shopify Markets. For B2B, the context is a company or, more granularly, a specific company location, since a single wholesale account might have a head office and three branch locations that should each see different pricing or access.

Price List: The Override Layer

The price list is where the actual numbers live. It does not replace a product’s default price permanently; it overrides it for whoever the attached catalog’s context matches. Take the price list away, and the product reverts to whatever the next-applicable price is, whether that is another catalog’s price list or the plain default price.

Scope note: A catalog without a price list still works, it just uses default pricing for whoever the context matches. The price list is what turns a catalog from an access-control tool into a pricing tool.

Default Catalogs vs Custom Catalogs

Every Shopify store already has a catalog running, whether or not a merchant has ever opened the Catalogs section of the admin. The default catalog covers your primary market at your products’ standard prices. You do not create it and cannot delete it; it is what serves pricing when no custom catalog’s context matches a given shopper.

Custom catalogs are what you add on top, and they exist for exactly one reason: to give a specific market or a specific B2B account something different from the default. A market catalog is how you make a French storefront show EUR pricing with a regional adjustment instead of your USD default. A company catalog is how you give one wholesale account negotiated pricing that nobody else sees.

The volume you can create depends on your plan, and this is one of the areas where Shopify’s own documentation is explicit and worth quoting directly rather than guessing:

  • Basic, Grow, and Advanced plans: up to three active catalogs across all your B2B markets combined.
  • Shopify Plus: an unlimited number of catalogs, assignable directly to individual companies and company locations, with a cap of 25 catalogs per company location and 10,000 catalogs per store.

That three-catalog ceiling on non-Plus plans is a real constraint worth planning around before you promise five different wholesale partners five different price books. If you are running B2B pricing at any meaningful scale, read the plan limits on Shopify’s own catalog documentation before you commit to an account structure, because it changes what “custom pricing per customer” actually means on your plan.

How Price Lists Adjust Pricing

A price list has two mechanisms for changing a price, and picking the right one matters more than it sounds like it should.

Fixed prices set an exact number per variant, in a specific currency. Use these for a negotiated rate that has nothing to do with the standard price, the way a wholesale contract might specify $14.50 per unit regardless of what the retail price does next quarter.

Percentage-based adjustments move relative to the product’s existing price, up or down by a set percent. Use these when the relationship should hold as the base price changes, the way a “10% under retail” market rule should stay 10% under retail even after you reprice the underlying product.

On top of the base price, catalogs also support volume pricing and quantity rules, both scoped per catalog:

  • Volume pricing lets you offer price breaks at quantity thresholds, up to 10 price breaks per product, applied per variant.
  • Quantity rules let you enforce order increments and minimum or maximum quantities, for example forcing purchases in increments of 10 units so an order must be 10, 20, or 30, never 15.
Fixed pricePercentage adjustmentVolume pricing
What it doesSets an exact price per variantMoves price by a percent relative to the defaultAdds quantity-based price breaks on top
When to use itNegotiated wholesale contracts with a locked numberRegional or promotional pricing that should track the base priceRewarding larger orders without a separate SKU or code
GotchaGoes stale if you forget to update it after a cost changeCan compound in confusing ways if two adjustments are layeredApplies per variant, so a mixed-variant order may not hit the same break as a single-variant order

There is one rule that catches merchants running more than one catalog: when several catalogs assigned to the same company location price the same product, Shopify shows the customer the lowest resulting price. Overlapping catalogs are not additive, and they do not average out; the lowest one wins.

Do not generalise that into “the cheapest price always wins,” though. When a company location catalog and a B2B market catalog both apply, Shopify resolves by specificity rather than by price: the location catalog takes precedence, even when the market catalog is cheaper. Plan your catalog structure with both rules in mind, especially if you are experimenting with market and company catalogs that could technically apply to the same shopper.

Using Catalogs for Market-Specific Promotions

Here is the mechanic in practice for a market sale window. Say you want to run a 20%-off promotion for your UK market for one week, without touching pricing anywhere else.

  1. Identify or create the UK market’s catalog under Shopify Markets. If you already have one serving standard UK pricing, edit its price list rather than create a new one.
  2. Edit the price list with a percentage adjustment of -20%, so it discounts relative to your existing UK prices instead of requiring a new fixed price for every SKU.
  3. Activate it for the sale window. Shoppers browsing from the UK context see the adjusted price automatically, with no code required and no change to any other market.
  4. Revert it manually (or on your own automated schedule) when the sale ends. Shopify’s catalog and price list tools do not include a built-in start/end date scheduler the way discount codes do. Reverting the adjustment, or swapping back to the original price list, is a step you or your automation has to trigger deliberately, typically through the Admin API on a schedule you build; there is no native “expires on” field on the catalog itself.

That reversion step is where market promotions using catalogs quietly go wrong. A merchant sets the -20% adjustment for a weekend sale, gets busy Monday morning, and the discount is still live two weeks later because nothing was set to revert it. Treat the revert step as its own checklist item, not an afterthought. For the broader mechanics of running pricing per country, see Shopify Markets for multiple countries.

Using Catalogs for B2B and Wholesale Promotions

The B2B case is structurally the same mechanic, aimed at a company instead of a market, and it is where catalogs earn their keep as a genuine pricing tool rather than a sale-window trick.

A wholesale account negotiates a rate with your sales team: 15% under standard retail, with volume breaks at 50 and 200 units, and a minimum order quantity of 10. You express all of that as a single catalog:

  • Context: the specific company (or company location, if the account has multiple ship-to sites with different terms).
  • Price list: a percentage adjustment for the base -15%, plus volume price breaks at the 50- and 200-unit thresholds.
  • Quantity rules: a minimum order quantity of 10, and an increment if the account only buys in case packs.

Every company gets its own catalog and its own price list, so two dealers can have completely different rates without either one seeing the other’s numbers. This is the same pattern covered in the medical device distributor case study, where dealer, distributor, and retail tiers stayed contractually separate across thousands of SKUs, and in the supplement brand’s tiered pricing across three countries, where country and tier both had to be respected at once.

Unlike a market sale, most B2B catalog pricing is not meant to expire; a negotiated dealer rate is durable until the contract changes, which makes catalogs a more natural fit for wholesale than for a flash sale. If you are still figuring out how many catalogs you will realistically need, revisit the plan limits above before building out five, ten, or fifty company-specific catalogs. For the fuller structural picture, see B2B catalog management: the four structural differences from D2C and creating custom pricing for wholesale customers.

What Catalogs Can’t Do

Most catalog frustration traces back to one of these boundaries: someone built a price list to run a weekend sale that a discount code would have handled in two minutes, or built a discount to hold a wholesale account’s negotiated rate that should have lived in a catalog and quietly expired instead.

Catalogs are not discounts. There is no BOGO mechanic inside a catalog, no free-shipping trigger, no cart-conditional logic like “spend $200, get 10% off.” Those live in Shopify’s discount engine, as automatic discounts or discount codes, configured entirely separately from catalogs and price lists.

Discounts stack on top of catalog pricing, not instead of it. Shopify is explicit that automatic discounts and discount codes apply as additional discounts on top of any price adjustments made using catalogs. If a shopper’s catalog already shows a market-adjusted price and a code applies on top, the code reduces the already-adjusted number, not the original default price. That compounding is easy to get wrong, and worth testing in a sandbox before you run both at once.

Catalogs are not merchandising. Deciding which products appear together on a landing page, how they are sorted, and what theme they belong to is a collection’s job, not a catalog’s. Run a “Black Friday” collection for browsing at the same time as a catalog-driven price adjustment for a market; changing one will never touch the other.

The third option below, a Shopify Function, is custom code you or a developer deploy into Shopify to change how the cart, checkout, or discount logic behaves. It is the escape hatch for rules neither a catalog nor a native discount can express, and it costs development time that the other two do not.

A short decision guide for which tool to reach for:

Use a catalogUse a discountUse a Shopify Function
Best forDurable, audience-specific pricing (a market or a wholesale account)Time-boxed, promotional offers (a sale, a coupon, BOGO)Conditional logic beyond simple price or percent rules
Typical lifespanOngoing, until the account or market pricing changesDays to weeks, tied to a campaignOngoing, tied to business rules that need custom code
Not forCart-conditional or code-triggered offersDurable per-account or per-market pricing that should persistSimple percentage or fixed-price overrides a catalog already handles

Multiple order, product, and shipping discounts can also apply to the same order at once, subject to Shopify’s own combination limits, which adds another layer worth checking before you assume a promotion will behave the way it looked in your head. Reading the actual discount combination rules before launch is cheaper than untangling a pricing complaint after it.

Where a PIM Fits

None of this changes where the pricing logic should originate. Catalogs and price lists are Shopify-side mechanisms for expressing pricing to a given audience; they are not a good place to author or reason about your pricing strategy, because they live inside one channel and nowhere else.

That is the gap a PIM closes. MicroPIM lets you define margin and pricing rules by category, supplier, or market in one place, so the logic behind “wholesale dealers get 15% under retail” or “the German market gets a currency-adjusted rate” is decided once, against a centralized product catalog that acts as the single source of truth, instead of being re-derived separately inside Shopify’s catalog UI, again in an ERP, and a third time in a spreadsheet someone updates manually before a sale.

From there, MicroPIM’s multi-platform export and custom feed builder push consistent product data, including the pricing logic defined centrally, out to every channel you sell on, with platform sync keeping product data current in Shopify. Shopify’s catalog and price list objects still do the actual work of showing a shopper the right number; MicroPIM keeps the rule behind that number consistent and traceable back to one place, rather than reverse-engineered from whatever a Shopify catalog happens to show today. For the mechanics of that connection, see connecting MicroPIM to Shopify.

Frequently Asked Questions

What is a catalog in Shopify?

A catalog is a named combination of three things: a product set, a context (either a market or a B2B company), and a price list. Together they determine which products a given audience can see and at what price. Shopify’s own documentation describes a B2B catalog as a tool that determines the products and pricing your B2B customers can access, and the same object powers market-specific pricing under Shopify Markets.

What’s the difference between a Shopify catalog and a collection?

A collection is a storefront browsing grouping, a page of products organized by category, theme, or intent, with no pricing logic attached. A catalog is the opposite in that respect: it is invisible as a page, but it controls what price a specific audience sees. You can put a product in a “Summer Sale” collection for merchandising and in a discounted market catalog for pricing, and the two have nothing to do with each other.

Can I use a Shopify catalog to run a discount or promotion?

Not in the sense of a coupon code, BOGO, or free shipping offer. What you can do is adjust or swap the price list attached to a catalog, which changes the price a market or company sees for as long as that price list stays attached. That is a legitimate promotion mechanic for a market sale window or a negotiated wholesale rate, but it is a pricing change, not a discount in Shopify’s technical sense, and automatic discounts and discount codes still apply on top of it.

Do I need Shopify Plus to create custom catalogs?

No, but your ceiling is much lower without it. On Basic, Grow, and Advanced plans you can assign up to three active catalogs across all your B2B markets. On Shopify Plus you can create an unlimited number of catalogs and assign them directly to individual companies and company locations, with a per-location cap of 25 catalogs and a store-wide cap of 10,000.

How does a price list work with a Shopify catalog?

A price list overrides a product’s default price using either a fixed price per variant or a percentage-based adjustment, and it is attached to a catalog rather than applied globally. The catalog’s context, a market or a company, controls when that price list is used. When several catalogs assigned to the same company location price the same product, Shopify shows the lowest resulting price; when a company location catalog and a B2B market catalog both apply, the more specific location catalog wins even if it is not the cheaper one.

Can I give one wholesale customer a different catalog than another?

Yes, that is the primary use case for B2B catalogs. You create a catalog scoped to one company or company location, attach a price list with that account’s negotiated rates, volume price breaks, and quantity rules, then repeat with a different catalog and price list for the next account. Each company only sees the catalog assigned to it.


Get the pricing logic right upstream, before it ever reaches a Shopify catalog. Start a free MicroPIM trial and manage your margin, market, and wholesale pricing rules from one source of truth.

MicroPIM Team

Written by

MicroPIM Team

Founder MicroPIM

Entrepreneur and founder of MicroPIM, passionate about helping e-commerce businesses scale through smarter product data management.

"Your most unhappy customers are your greatest source of learning." — Bill Gates

Back to Blog

Related Posts

View All Posts »
Get Started Today

Start Using MicroPIM for Free

No credit card required. Free trial available for all Pro features.

Join other business owners who are using MicroPIM to automate their product management and grow their sales.

  • 14-day free trial for Pro features
  • No credit card required
  • Cancel anytime
SSL Secured
4.9/5 rating