One of my favorite things about sewing is the ability to create my own one-of-a-kind pieces. And what’s more one-of-a-kind than designing your own fabric? Thanks to modern technology, it’s easier than you might think.

There are lots of websites out there that let you design your own fabric, but I’ve personally always used Spoonflower. They have over 20 different fabric types available, from silk to cotton to fleece, and you can order a Test Swatch, a Fat Quarter, or by the yard. 

Conveniently, a Fat Quarter is the perfect size for making your own custom canvas shopping bag. 

The first step is choosing the photo(s) you want to appear on the bag. Remember that most shopping bags are “portrait” shaped (taller than they are wide), so it’s helpful to choose a picture that already has that aspect ratio. But if you have a long “landscape” photo that you’re dying to use, that’s fine too; you’ll just have to crop the photo to make it fit.

Next, you’ll want to format your photo to the right dimensions. I find that a Google Drawing document (which is available free through Google Drive) is the easiest method, but use whatever drawing application you like. Resize your document to the exact size of your fabric; a Fat Quarter of canvas is 27” x 18”, so make your document 27” x 18”. In Google Drawing, you do this by going to File → Page Setup → Custom.

You now have a perfectly-sized blank space to play with! You’ll be folding your Fat Quarter in half to make your canvas bag, so the left half of your Drawing document will form one side of your bag and the right half of your document will form the other side. You can use the same photo twice, use two different photos, add text or clip art… the world is your oyster! For best results, though, be sure to choose high-resolution photos.

For this project, I’m making a bag with photos of my parents’ puppy to give as a holiday gift. As you can see, I chose 2 different photos, one for each side of the canvas bag. 

Once you’re finished with your design, download your document as a PNG (.png).

Next, go to and upload your design by clicking the button at the top of the page that says Upload Your Design. Then, once you’ve uploaded your PNG file, select Center as the Repeat style, Eco Canvas as the fabric and Fat Quarter as the size.

You may notice that my design doesn’t fill the whole 27” x 18” preview space. Fixing this problem is the trickiest part of this whole process because it involves a bit of trial and error, but don’t freak out! It’s a fairly straightforward fix.

Open up your PNG file. On my Mac, it defaults to opening the file in Preview, but your computer may open it in a different application. In Preview, go to Tools → Adjust Size. (In your application, you might access Adjust Image Size in a different menu.) 

Here’s where the trial and error comes in. In my Spoonflower screenshot above, you can see that my design fills about half of the Fat Quarter. So I’m going to try doubling the size of my PNG. In the Adjust Size menu in Preview, I see that my image is currently 2500 pixels wide, so I’m going to double that to 5000 pixels. (Be sure to keep the Scale Proportionally box checked so your image doesn’t get distorted.)

And just like that, my PNG is now twice the size! Save your new PNG and upload it to Spoonflower the same way as before. Don’t forget to re-select Center/Eco Canvas/Fat Quarter when you see your preview image, as your previous settings won’t be saved.

In this case, I was lucky that just this one round of resizing got my dog photos to exactly the right size for my Fat Quarter. You may need to resize your PNG again, a little smaller or a little bigger, until it perfectly fits the 27” x 18” preview window.

Make sure that the preview of your fabric image looks exactly right. Don’t rush yourself here! What you see in that preview window is what you’ll get. But as soon as it all looks good, click Add To Cart and order away! Your fabric will arrive in 1-3 weeks, depending on what shipping option you choose. There will be a separate tutorial for how to turn your fabric, once it arrives, into a custom canvas shopping bag.