Choose your product
Find the apparel that fits your team or project.
Uniquely Crafted, Expertly Printed
We print custom apparel for businesses, teams, schools and events. Design online or work with our Montreal team, serving customers across Canada.

this.bindToMotionValue(o,a)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(Nr.current||en(),this.shouldReduceMotion=Ko.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){this.projection&&this.projection.unmount(),Lt(this.notifyUpdate),Lt(this.render),this.valueSubscriptions.forEach(t=>t()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(let t in this.events)this.events[t].clear();for(let t in this.features){let a=this.features[t];a&&(a.unmount(),a.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,a){if(this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)(),a.accelerate&&Nf.has(t)&&this.current instanceof HTMLElement){let{factory:s,keyframes:i,times:n,ease:u,duration:f}=a.accelerate,d=new rs({element:this.current,name:t,keyframes:i,times:n,ease:u,duration:Ie(f)}),c=s(d);this.valueSubscriptions.set(t,()=>{c(),d.cancel()});return}let o=Xt.has(t);o&&this.onBindTransform&&this.onBindTransform();let r=a.on("change",s=>{this.latestValues[t]=s,this.props.onUpdate&&V.preRender(this.notifyUpdate),o&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()}),l;typeof window<"u"&&window.MotionCheckAppearSync&&(l=window.MotionCheckAppearSync(this,t,a)),this.valueSubscriptions.set(t,()=>{r(),l&&l()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in sc){let a=sc[t];if(!a)continue;let{isEnabled:o,Feature:r}=a;if(!this.features[t]&&r&&o(this.props)&&(this.features[t]=new r(this)),this.features[t]){let l=this.features[t];l.isMounted?l.update():(l.mount(),l.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):me()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,a){this.latestValues[t]=a}update(t,a){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=a;for(let o=0;o
Choose your product, upload your design and submit your order.
Start a designFind the apparel that fits your team or project.
Add your artwork to the product you selected.
Review the details, then submit your order.
A little preview of where your next idea could go.

Quarter-zip sweatshirts ยท Fleece hoodies ยท Tote bags
Explore Teams & clubs
Quarter-zip sweatshirts ยท Cotton twill caps
Explore Businesses
T-shirts ยท Fleece hoodies ยท Crewneck sweatshirts
Explore Creators & brands
Bucket hats ยท T-shirts ยท Tote bags
Explore Fundraisers
Fleece hoodies ยท T-shirts
Explore Gyms & communities
T-shirts ยท Fleece hoodies ยท Tote bags
Explore Bands & eventsBased on the $43.95 CAD DTF starting price and the quantity discounts in this guide. Final pricing depends on size, colour, placement, artwork, inventory, shipping, taxes, and approved changes. Check the Designer before ordering.
Design online, or send a mixed order for help with the details.
Start with the fit, colour and sizes.
Try the available print areas and check the size.
Confirm the configuration, price and delivery details.
Have a different question? Weโre here to help you make the next move.
Explore all FAQsCheck the minimum quantity in the live product configuration. For a mixed or larger request, send your project details first.
The garment, sizes, colours, quantities, artwork and decoration areas can affect the price. Delivery and taxes are confirmed at checkout.
Use your best original artwork and check it at the intended print size. Keep the background transparent if you do not want it printed.
Tell us which products, colours and size quantities you need. We can help organize the details of a mixed-product request.
Share the date you need the order in hand before ordering. Production begins after the required order information and approvals are complete; transit time is separate.
Yes. Send the artwork and project details you have, and ask about product choice, print placement, quantities or ordering.
Start with a product, or talk through your project.
Find Printz Experts in your Google source preferences.
