# How to make a custom t-shirt website with WooCommerce

How to make a website where customers design their own t-shirts and you sell and print them, step by step in WooCommerce: products, colours and sizes, a product designer, pricing per printed side, and print files with every order.

**A custom t-shirt website is an online shop where each customer puts their own image or text on a shirt, sees it on the product and orders it, and you print it.** Selling custom t-shirts means selling a blank shirt plus the customer's print. A WooCommerce shop can do all of it without a hosted service: the shirt is an ordinary variable product, a product designer plugin lets the customer place their image or text, and each order arrives with a file you can print. This guide builds that website from an empty WooCommerce shop.

## What you need

- **WordPress with WooCommerce.** Any host that runs WooCommerce well; a block theme makes the designer match your shop with no extra styling.
- **A way to print.** Your own DTG or DTF printer, a heat press with transfers, or a local print shop that prints from files you send. [What you need to start a t-shirt printing business](/guides/start-t-shirt-printing-business/) sets out the equipment for each.
- **Photos of your blank shirt,** front and back, ideally a white one (see [photographing t-shirts for a product designer](/guides/t-shirt-photos-for-a-product-designer/)).
- **A product designer plugin.** This guide uses [PrintBlob](/), which is free; the steps are similar in other plugins.

## 1. Create the colour and size attributes

Under **Products › Attributes**, add a **Colour** attribute and a **Size** attribute, then their terms: the shirt colours you stock (White, Black, Navy…) and sizes (XS to XXL). Global attributes, rather than per-product ones, let a designer show the colours as swatches and recolour the shirt photo. [WooCommerce colour swatches for t-shirts](/guides/woocommerce-colour-swatches-t-shirts/) compares a swatches plugin, a photo per colour and one recoloured photo.

In PrintBlob, give each colour term a **colour value** (the hex colour of the fabric) and, if you like, a product photo for the Colours block. See [Colours and recolouring](/docs/colours/).

## 2. Create the t-shirt as a variable product

Add a product, choose **Variable product**, and add both attributes as **Used for variations**. Generate the variations, then set each one's price and stock. A common pattern is one price for most sizes and a little more for XXL and above. Customers choose a size from your size chart, so add one to the description: [How to add a size chart in WooCommerce](/guides/woocommerce-size-chart-t-shirts/) covers what it should measure.

The price you set here is the **blank shirt**. The print is priced separately, per side, in the next step, so a shirt printed on both sides costs more than one printed on the front only.

## 3. Install the designer and set up the mockup

Install PrintBlob from **Plugins › Add Plugin**: search for PrintBlob, then **Install Now** and **Activate** ([installation](/docs/installation/)). It creates a **T-shirt mockup**: a front and a back photo of a shirt, each with its print area drawn on it and its real size in centimetres (28 × 36 cm on the front, 28 × 39 cm on the back).

To use your own shirt photos, and to print on the back, add [PrintBlob Pro](/docs/pro/) and edit the mockup under **PrintBlob › Mockups**: choose a photo for each side, drag the print area over the printable part of the shirt, and enter its print width and height. The print size is what makes the print files come out at the right size; measure it on a real shirt with your printer's limits in mind. See [Mockups](/docs/mockups/).

## 4. Turn the designer on for the product

Edit the t-shirt and open **Product data › PrintBlob designer**:

1. Tick **Designer**.
2. Choose the **T-shirt** mockup.
3. Enter **Print price: Front**, the amount added when the front has a print. With PrintBlob Pro, **Print price: Back** sets the back's.

The product page now shows the designer: customers upload an image or add text, move and resize it on the front (and with PrintBlob Pro, the back), pick a colour and size, and see the price update with each printed side. To give the designer a page of its own, add the **PrintBlob designer** block to a page and set it as the **Designer page** under **WooCommerce › Settings › PrintBlob**. The **Colours** block shows every colour, each opening the designer in that colour.

## 5. Price the print

Work out what one printed side costs you: ink or transfer film, the time at the press, and a share of the machine and rejects. Then add your margin. With example numbers:

| | Cost to you | Price |
|---|---|---|
| Blank shirt | $4.50 | $18.00 (the variation price) |
| One printed side | $2.50 | $6.00 (the print price per side) |
| Shirt printed front and back (back printing is PrintBlob Pro) | $9.50 | $30.00 |

Prices per side keep a front-only shirt cheaper and make back prints pay for themselves. The free plugin prints the front; printing the back as well is [PrintBlob Pro](/docs/pro/). Check whether your prices must include sales tax or VAT where you sell. [How to price custom t-shirt printing](/guides/price-custom-t-shirt-printing/) builds these numbers from your own costs.

## 6. Delivery and payment

Set up shipping zones under **WooCommerce › Settings › Shipping** (flat rate, free above an amount, or [local pickup](/guides/woocommerce-local-pickup-print-shop/)) and the payment methods you accept under **Payments**. Weights, shipping classes, a rate per item and packing are in Shipping custom t-shirts from WooCommerce. Custom products can't be resold, so state in your terms whether customers can return them, within the law where you sell; see Return policy for custom printed products.

## 7. Orders and printing

When a customer adds a design to the cart, PrintBlob keeps the design and a preview of each printed side with the order. With [PrintBlob Pro](/docs/pro/), it also renders each printed side at the print area's exact size as a transparent PNG at 300 DPI, a vector PDF and an SVG, and the order screen has **Download Front print file** (the PNG), **Download Front PDF** and **Download Front SVG** (or Back) for each printed side; Pro makes the files of earlier orders from their saved designs too. Print files are kept in a protected folder that only shop managers can download from.

From there the workflow is yours: print, press, pack. With more than a few orders a day, [PrintBlob Pro](/pricing/)'s **print queue** lists every unprinted item, oldest first, with ZIP downloads per order and a **Mark printed** button.

## 8. Check it like a customer

Before you open the shop, place a real order: design a shirt with an image and text on both sides, check the price, check out, download the print files, and print one. Check that the print lands where the designer showed it and at the size you expect. The [print files guide](/guides/print-ready-t-shirt-files/) explains what the files should look like, and [the checklist for a print-on-demand shop](/guides/woocommerce-print-on-demand-checklist/) covers the rest before you open. If you are a print shop adding online orders, see [a print shop taking custom orders online](/situations/print-shop-custom-orders/).

## Questions shop owners ask

### Can I make a custom t-shirt website with WooCommerce?

Yes, without a hosted service. The shirt is an ordinary variable product, a product designer plugin lets the customer place their image or text on it, and every order keeps the customer’s design; with PrintBlob Pro it also arrives with print files of each printed side: a 300 DPI PNG, a vector PDF and an SVG.

### What do I need to start a custom t-shirt website?

WordPress with WooCommerce, a way to print (your own DTG or DTF printer, a heat press with transfers, or a local print shop that prints from files you send), photos of your blank shirt front and back, and a product designer plugin.

### How do I price custom t-shirts in WooCommerce?

Set the blank shirt’s price on the product’s variations, and a print price for each printed side in the product’s PrintBlob designer tab, added when that side has a design. A shirt printed on both sides then costs more than one printed on the front only.

### Is PrintBlob free?

Yes. The free plugin puts the designer on the front of its bundled t-shirt and keeps every order’s design. PrintBlob Pro, $69 a year or $99 once, adds your own shirt photos, back printing, print files in PNG, PDF and SVG and a print queue.

### Can customers collect their order instead of having it shipped?

Yes. WooCommerce’s shipping settings include local pickup beside flat rate and free shipping, and a designed order keeps its design however it is delivered.

[Try PrintBlob's designer](/#demo), or [download it free](/docs/installation/) and follow these steps in your shop.

## Get PrintBlob Pro

Pro adds print-ready files, back printing, a 3D view and a production print queue to the free designer. Paid with Stripe in US dollars, no tax added; one domain per licence.

- **$69 a year**: [Buy the yearly licence](https://printblob.com/pricing/#buy). Full refund within 14 days.
- Limited-time offer until 31 December 2026: **$99 once**: [Buy the lifetime licence](https://printblob.com/pricing/#buy). Full refund within 14 days.

## More guides

- [Print-ready t-shirt files: format, transparency and resolution](https://printblob.com/guides/print-ready-t-shirt-files/)
- [What size should a t-shirt design be? Sizes by placement in inches, centimetres and pixels](https://printblob.com/guides/t-shirt-design-size/)
- [Photographing t-shirts for a product designer](https://printblob.com/guides/t-shirt-photos-for-a-product-designer/)
- [WooCommerce product designer plugins compared](https://printblob.com/guides/woocommerce-product-designer-plugins-compared/)
- [Let customers upload a logo or photo to a WooCommerce product](https://printblob.com/guides/customer-image-upload-woocommerce/)
- [Add custom text to WooCommerce products: names, slogans and messages](https://printblob.com/guides/custom-text-woocommerce-products/)
- [How to price custom t-shirt printing](https://printblob.com/guides/price-custom-t-shirt-printing/)
- [Sell custom hoodies, mugs, tote bags and caps in WooCommerce](https://printblob.com/guides/custom-hoodies-mugs-tote-bags-caps-woocommerce/)
- [DTF vs DTG vs screen printing for a small print shop](https://printblob.com/guides/dtf-vs-dtg-vs-screen-printing/)
- [What size should a logo be on a hat? Cap, beanie and bucket hat sizes for embroidery and print](https://printblob.com/guides/hat-logo-size/)
- [What size should a hoodie design be? Hoodie and sweatshirt print sizes in inches, centimetres and pixels](https://printblob.com/guides/hoodie-design-size/)
- [Mug design size: 11 oz and 15 oz sublimation template sizes in inches, centimetres and pixels](https://printblob.com/guides/mug-design-size/)
- [Print areas and print sizes: measure your products and set each side](https://printblob.com/guides/print-area-sizes-by-product/)
- [Tote bag print size: design sizes in inches, centimetres and pixels](https://printblob.com/guides/tote-bag-design-size/)
- [Team and group orders with names and numbers in WooCommerce](https://printblob.com/guides/team-orders-names-numbers-woocommerce/)
- [A checklist for running a WooCommerce print-on-demand shop](https://printblob.com/guides/woocommerce-print-on-demand-checklist/)
- [How PrintBlob Pro makes a 3D product from your photos](https://printblob.com/guides/3d-product-from-photos/)
- [Artwork approval for custom prints: a live mockup or emailed proofs](https://printblob.com/guides/artwork-approval-live-preview-vs-email-proofs/)
- [DTF print file requirements: PNG, 300 DPI and a transparent background](https://printblob.com/guides/dtf-print-file-requirements/)
- [Set up an Instagram shop with WooCommerce for custom prints](https://printblob.com/guides/woocommerce-instagram-shop-custom-prints/)
- [WooCommerce local pickup for print shops: set-up and common problems](https://printblob.com/guides/woocommerce-local-pickup-print-shop/)
- [WooCommerce order statuses for a print shop: custom statuses for artwork, printing and pickup](https://printblob.com/guides/woocommerce-order-status-print-shop/)
- [How to add a size chart in WooCommerce for t-shirts and hoodies](https://printblob.com/guides/woocommerce-size-chart-t-shirts/)
- [WooCommerce personalised product plugins: product add-ons or a product designer](https://printblob.com/guides/woocommerce-personalised-product-plugin/)
- [WooCommerce colour swatches for t-shirts: swatch plugins, variation photos or one recoloured photo](https://printblob.com/guides/woocommerce-colour-swatches-t-shirts/)
- [DTF gang sheet builder for WooCommerce: sell gang sheets and transfers on your own website](https://printblob.com/guides/dtf-gang-sheet-builder-woocommerce/)
- [What you need to start a t-shirt printing business: equipment, supplies and an online shop](https://printblob.com/guides/start-t-shirt-printing-business/)
- [Jersey name and number size: back, front and sleeve numbers by sport in inches, cm and pixels](https://printblob.com/guides/jersey-name-and-number-size/)
- [What size should a sublimation design be for shirts? Paper sizes, design sizes and the file format](https://printblob.com/guides/sublimation-shirt-design-size/)

---

Page: https://printblob.com/guides/sell-custom-t-shirts-woocommerce/

See also: [docs](https://printblob.com/docs/index.md), [features](https://printblob.com/features/index.md), [situations](https://printblob.com/situations/index.md), [compare](https://printblob.com/compare/index.md), [demos](https://printblob.com/demos/index.md), [tools](https://printblob.com/tools/index.md), [themes](https://printblob.com/themes/index.md).
