Applies to Cmsmart Product Designer (NBDesigner) 2.17+ · Updated October 2026. Steps and screenshots below are taken from the live nbdesigner.cmsmart.net demo store running the current release.

In short

  • A built-in Bulk variation table lets a buyer order several sizes and colors of the same T-shirt in one add-to-cart, with one price per size already worked out.
  • Cmsmart Printing Options builds the table from your product's attributes and applies quantity-break discounts, so the storefront price always matches what production actually charges.
  • You set it up once in Cmsmart > Printing Options and attach it to every apparel product from the Product Manager; wholesale price lists and roster uploads go further as custom development.

Why does pricing a multi-size, multi-color T-shirt order become a manual problem?

Cmsmart's Printing Options replace the back-and-forth quote email with a table that totals every size and color on the product page itself, so a WooCommerce T-shirt store never has to price a team order by hand.

Plain WooCommerce was built for one buyer choosing one variation, not a dozen sizes in a single cart item. A few concrete pains show up once a T-shirt store starts taking bulk and team orders:

  • The spreadsheet quote. A customer emails a size breakdown, a staff member prices it in a spreadsheet, and the quote goes back and forth before anyone sees a real cart.
  • Dropdown overload. Add sizes (S–XXL), a few colors and a couple of print placements as plain WooCommerce variations and you can pass WooCommerce's own variation ceiling: dropdowns stay dynamic only up to 30 variations, and past that point they go static and show every option regardless of prior selections (WooCommerce, Variable Products documentation, accessed 2026-10-17) — exactly where a multi-size, multi-color shirt lands.
  • One line item, no size breakdown. Even when the dropdowns survive, the buyer adds one size/color combination per click, so a 28-shirt team order becomes 28 separate cart rows.
  • Reprints from mis-keyed sizes. When staff retype an emailed size list, a S/M mix-up becomes a reprint, not just a support ticket.
  • Staff time off the invoice. Every manually priced quote is time a print shop or POD brand isn't spending on design, production or the next customer.

What would a smooth bulk T-shirt order look like for your store?

Cmsmart lets a buyer pick a style, choose a color, type a quantity next to each size in one table, and see the full order total before they design anything — no email, no spreadsheet, no manual quote.

Example scenario. A buyer organizing shirts for a weekend event opens your T-shirt product page, picks a color, and sees a row for each size with a quantity box underneath: S, M, L, XL. They type 8, 14, 10 and 6, add their logo in the online designer, and the cart shows one line item with the full size breakdown and the total price. Your team opens the order the next morning with every size, color and print-ready file already attached.

That is the business moment Printing Options is built for: the buyer does the sizing math in public, before they pay, and your store captures a clean order instead of a quote request.

How does Cmsmart price a bulk T-shirt order behind the scenes?

Cmsmart Printing Options is the option-and-pricing engine inside Product Designer (NBDesigner): you define fields such as size and color once, pick a layout, and the plugin renders live pricing on the product page and carries every choice to the cart and the order.

Four pieces work together on every T-shirt product:

WooCommerce T-shirt product page with color swatches, ready for a bulk size and color pricing table
Real capture, Cmsmart demo store: a T-shirt product page with the color picker that feeds the bulk variation table below it.
  • The storefront layout. Printing Options ships several display modes for the same pricing engine: Default fields, a two-axis Price Matrix grid, and Bulk variation — a table of sizes with a quantity box under each, the layout apparel stores use for team and event orders.
  • The price rule per choice. Each size or color can carry a fixed amount, a percentage, a formula or a quantity-break discount, so an XXL upcharge or a discount for larger orders is config, not a manual adjustment.
  • The online designer. Once quantities are set, "Start Design" opens the same Product Designer canvas buyers use for one-off shirts, so a bulk order still gets a real, print-ready design.
  • The order record. Every size, color and quantity chosen is written to the WooCommerce order line item next to the design file, so production reads it straight off the order screen.
Diagram of the Cmsmart pricing architecture: storefront layout to price rule to online designer to order record
How the four pieces connect: the storefront layout feeds the price rule, the price rule hands off to the online designer, and the finished design and price land together on the order record.
Bulk T-shirt pricing table in WooCommerce with a quantity box for each size, S to XL
Real capture, Cmsmart demo store: the Bulk variation table on a men's T-shirt — one quantity box per size, under the color the buyer already picked.

Cmsmart insight: Bulk variation and Price Matrix solve two shapes of the same problem. Price Matrix fits when price itself changes with two attributes at once (paper × weight, size × quantity tier) — see our price matrix table walkthrough. Bulk variation fits when the unit price barely moves but the buyer needs many units across sizes in one cart line, the common case for team and event apparel.

NeedNative WooCommerce + a pricing add-onCmsmart Printing Options
Order 6 sizes of one shirt in one cart lineNot built in; buyers add each size/color as a separate product variation and cart rowOne Bulk variation table, one cart line, full size breakdown attached
Flat, % or quantity-based fee on an optionAvailable via extensions such as WooCommerce Product Add-Ons (flat, % or quantity-based fees)Built in: fixed, %, formula, matrix or quantity-break price rules per field
Quantity tiers with live totals and "you save" messagingAvailable via extensions such as Tiered Pricing Table for WooCommerce, sold separately from the designerQuantity breaks are part of the same option set that feeds the online designer and the print file
Design attached to the priced order automaticallyNeeds a separate product designer plugin wired to the pricing extensionNative: the same order line carries the price, the options and the print-ready file

What's the ROI of a built-in bulk pricing table?

Cmsmart replaces manual quoting with a self-service price, which shows up as fewer quote emails per order, fewer sizing errors reaching production, and staff time freed up for design and fulfillment instead of spreadsheets.

Three mechanisms drive the value, each with a KPI from your own order data:

BenefitHow it shows up in your businessKPI to track
Self-service bulk pricingBuyers see the full order total before they design or pay, instead of waiting on a quote replyQuote-request emails per 100 product-page visits
One cart line per bulk orderStaff open one order with a complete size/color breakdown instead of reconciling several rows or an email threadMinutes of admin time per bulk order
Size data attached to the order, not retypedFewer S/M mix-ups between the quote and the print runReprint rate on multi-size orders

Quick worksheet: if your team handles N bulk/team T-shirt enquiries a month, each taking M minutes to quote by email at a loaded staff cost of $C per hour, manual quoting costs roughly N × M × (C / 60) a month — before counting the enquiries that go quiet while they wait. Put your own numbers in; the table above is where that time comes from.

A 2.17 fix protects this once the order is placed: checkout now shows the quantity once for a line carrying both a design and print options, instead of double-counting it, so the total a team sees at checkout is the total production bills against.

Leaving quote time on the table? Review my store's bulk pricing

How to set up a bulk T-shirt pricing table in WooCommerce

You build one Printing Options set with a Color field and a Bulk variation size field, attach it to your T-shirt products in the Product Manager, and Cmsmart renders the live table and carries every choice through checkout and into the order.

The flow below matches the current demo store (2.17+); field names may vary slightly on an older release.

Cmsmart Printing Options list showing option sets already applied to Men's T-shirt and Women's T-shirt products
Real capture, Cmsmart demo store: Cmsmart > Printing Options, with existing option sets applied to T-shirt products.
  1. In wp-admin, go to Cmsmart > Printing Options and click Add new, or open an existing T-shirt option set to edit it.
  2. Give the option set a name, such as "T-shirt bulk sizing."
  3. Under Online design fields, add a Color/Material field and list the colors you stock, matching the swatches on your product.
  4. Add a Size field with your size run (S, M, L, XL, XXL and so on).
  5. Under Appearance, set Display type to Bulk variation so the sizes render as one table with a quantity box under each size.
  6. Under Printing options > Quantity, turn on Quantity breaks if you want a discount for larger total orders; choose a Discount type (fixed or percentage) and add a break for each threshold.
  7. Give each size any price adjustment it needs (for example, a fixed or percentage upcharge on XXL) under the field's own price-type setting.
  8. Publish the option set.
  9. Go to Apply for on the same screen, choose Products, and search for your T-shirt products to attach the option set to each one.
  10. In the Product Manager (Cmsmart > Products), confirm the designer and your new option set are both Enabled on the product.
  11. Open the live product page, pick a color, enter quantities across a few sizes and confirm the running total updates before you add to cart.
Cmsmart Printing option editor showing quantity break discount settings for a WooCommerce T-shirt pricing table
Real capture, Cmsmart demo store: the Printing Options editor, with the quantity-break discount table used for bulk orders.
Cmsmart Product Manager list with Men's T-shirt, Women's T-shirt and T-shirt with print option rows
Real capture, Cmsmart demo store: the Product Manager, where a Printing Options set is attached to each T-shirt product.

If you also sell business cards, posters or other print products, the same screen builds their pricing; our guide to configuring print pricing options on NBDesigner covers fields beyond sizing, such as delivery speed and custom dimensions.

Video thumbnail: configuring the Price Matrix and bulk pricing feature on a T-shirt store
Video: Configuring the Price Matrix feature on a T-shirt store (Cmsmart on YouTube).

Going further: what can Cmsmart build on top of the standard bulk pricing table?

Beyond the built-in Bulk variation table, Cmsmart's development team builds wholesale pricing, roster-based ordering and production integrations tailored to a specific apparel business, delivered as a scoped custom project rather than a generic plugin setting.

Printing Options covers size, color and quantity-break pricing for every buyer. Some apparel and POD businesses need more, and we build it as custom development rather than stretch the core plugin past what it verifiably does:

  • Role-based and wholesale pricing. Price rules apply to every shopper by default; private price lists for a specific school, team or reseller account are custom development.
  • Roster-based team ordering. A page where a coach uploads names and numbers per size, instead of typing quantities into the Bulk variation table, is a custom front-end on top of Printing Options.
  • Supplier-cost-linked pricing. Syncing quantity-break thresholds to a blank-garment supplier's own price breaks, so discounts update when supplier costs change.
  • Production and MIS integration. Pushing a bulk order's size breakdown and print file straight into a screen-printing or embroidery queue instead of a staff member reading it off the order screen.

Our delivery approach follows the same path on every Cmsmart ecommerce project: discovery, a solution design you approve, milestone-based sprints, QA, launch, then ongoing support.

Get a quote for custom bulk-order pricing

See our web-to-print pricing engine development service, or browse the wider web-to-print solutions we build on Cmsmart Product Designer.

Why work with Cmsmart on your T-shirt store's pricing?

Cmsmart has built and supported Product Designer (NBDesigner) for WooCommerce stores since 2012, with the Printing Options engine behind price matrices, bulk variation tables and quantity pricing used across thousands of live stores today.

Cmsmart is a division of Netbase JSC, operating since 2012, with 6,300+ client projects and 1,800+ stores live today across 80+ countries, rated 4.2 out of 5 on Trustpilot (404 reviews). One recent five-star review, from a web developer who has run the plugin for three years, put it this way:

"It is wonderful to see their commitment to continuous development, with new features being added frequently to keep the software current and highly capable. The designer works exceptionally well across all devices and allows us to create the exact customisations required to perfectly fit our products and our business model." — Web Developer, United Kingdom, Trustpilot review

That continuous development keeps features like Bulk variation pricing aligned with how production works: the 2.17 line added the approved-artwork lock (approved designs are refused further edits on the server) and made sure the print-ready PDF that matches the order renders again on reorder instead of reusing an old file — both useful when a team reorders the same design next season.

Frequently asked questions

Is Bulk variation the same as the Price Matrix layout?

No. Both live inside Cmsmart Printing Options, but Price Matrix shows a price for every combination of two attributes in a grid (see our price matrix setup guide), while Bulk variation shows one quantity box per size so a buyer can order several sizes in a single cart line. Apparel and team-order stores typically want Bulk variation; stores pricing by two independent attributes, such as paper and quantity, usually want Price Matrix.

Can I give an automatic discount for larger T-shirt orders?

Yes. Printing Options includes quantity breaks with a fixed or percentage discount type; you set the quantity thresholds once in the option set and every qualifying order gets the discount automatically, with no manual price override.

Does Cmsmart support wholesale or role-based pricing for repeat team customers out of the box?

Not in the core plugin. Private price lists per school, team or reseller account are custom development on top of Printing Options.

What does production see when a bulk order comes in?

The order screen shows the line item with every size, color and quantity, next to the design file and print-ready output, so staff read the full breakdown from one place instead of a separate quote or email.

Can buyers upload their own artwork for a bulk team order instead of using the online designer?

Yes. With Upload Design enabled alongside Printing Options, buyers can upload artwork instead of designing online, and the same size-and-color pricing table still applies.

Which plugin version do I need for the setup in this guide?

Bulk variation and quantity-break pricing are long-standing features; the checkout and reorder fixes referenced above ship in the 2.17+ release line, so update to 2.17 or later before following these steps.