Witch Tutu Dress Halloween Costume Tutorial

The first time I saw a tutu dress, I fell in love. They’re fluffy and bright, and a dream dress for a little girl. They’re all over Etsy for sale, but the one thing I couldn’t find was a comprehensive tutorial on how to make one! A tutorial for a dress that had an elastic crochet top, sure. But not any for the more elegant (in my opinion) full tutu dress.

So after a week of trial, error, and dozens of photos, here it is! I’m going to warn you that this is a long tutorial, but by the end of it you’ll be able to make a tutu dress that converts into a tutu skirt as your child grows, and is completely customizable. So whether you need a Halloween costume, a flower girl dress, a birthday outfit, or a special Christmas dress, this one can make them all. 

Oh, and did I mention that there’s no pattern needed and this basic version costs less than $20 to make? Oh yes, yes I did.


(for a 3T size, more or less may be necessary depending on size)

  • 1 package (3 yards) no-roll elastic
  • 2 rolls of (6 inch by 25 yards) tulle in orange
  • 2 rolls of (6 inch by 25 yards) tulle in black
  • 1 roll of (6 inch by 25 yards) tulle in purple
  • 8 yards of 1.5 inch wide orange satin ribbon
  • A sewing machine 
  • Scrap cardboard 
  • A plastic storage container lid (or other wide item you can stretch elastic over)
Note: Do not get glittered tulle unless you are happy with glitter all over your child, your hands, your house, your car, and your husband. I got some to use, and it left a 4ft section of my kitchen floor covered in glitter just from taking it off the roll. It now lives in a plastic container, until I can find an outdoor project to use it on.

We’re going to start by measuring your child around the chest under her arms. Take that measurement, and subtract an inch. Do the same with her waist measurement, and cut those two pieces of elastic.

On my daughter, these were the same. I measured her at 18 inches, and subtracted an inch to cut two pieces of 17 inch long elastic. Set one of the pieces aside as this will make our removable waistband later.

With the other piece, overlap the ends by an inch and secure with a zigzag stitch. This will be the chest band. Set it aside.

 Now we’re going to make a template to make cutting all that tulle much quicker! Measure your child from her underarms to where you want the dress to fall. I wanted to make sure this dress was long, but I didn’t want to risk tripping while trick or treating in a few weeks, so I made sure it ended just above her ankles.

This was 24 inches for me, which means that I’d need 48 inch long strips of tulle since they’re folded in half.

We’re going to take some scrap cardboard, and piece it together to make a strip of cardboard that is as long as we want our dress. So I cut a 24 inch long piece of cardboard from a diaper box, securing it with clear duct tape where necessary. 

 Pick and mark one end to start your tulle, which is also where we will cut it, and start wrapping one of your tulle rolls around the cardboard. Keep wrapping until your entire roll of tulle is wrapped. At the end you marked (and only at that one end!), cut through the tulle and remove it from the cardboard. 

Now you should have strips of tulle that are double the length that you want the dress to be. You can do this with all of your tulle at once, or just do it one roll at a time until your dress is as fluffy as you want it! 

Of course, you can measure and cut the strips individually, but this method is much faster!

Here’s where things might get a bit confusing, because I tried a few different things. Here I’m using cardboard to stretch my elastic, but further down I’m using a plastic storage container lid. The cardboard ended up bending and snapping after a while, and the plastic lid worked much better to keep things stretched while I was working. Learn from my mistakes and use plastic from the start!

 Take your piece of chest elastic and stretch it around your object. Then, get comfy and put on a movie. This is going to take some time.

Grab one piece of tulle, and thread it underneath your elastic. Fold it over the top of the elastic, making sure the ends meet evenly. Tie a single knot.

 Make sure the elastic is not pinched or twisted by the tulle, and that the knot is at the bottom of the elastic. This is very important for two reasons. To make it comfortable for your little girl to wear, and to give it a neat uniform look. Go ahead and double knot the tulle.

 Attach all of the orange tulle from both rolls, and the do both rolls of the black. Then attach the purple tulle randomly throughout the pattern. Make sure to keep your knots even and close to the elastic.

Now we’re going to wrap the top of the dress with ribbon. Take 4 yards of orange ribbon, and center the ribbon on your elastic. You’ll be tying the ribbon the same way you tied the tulle. Move the knot the the inside. So you’ll have a knot in the middle of the ribbon, with two long tails hanging down from your dress.

 You’re going to start wrapping the ribbon around the elastic in between the tulle knots. Wrap one side of the ribbon until you get halfway, and then wrap the other side. When your dress is fully wrapped with ribbon, heat seal the ends of the ribbon. Tie a knot the secure the ribbon.

Tie a bow. This is how you will finish the ribbon when it’s worn as a tutu skirt. However, for the dress this bow will be undone, and be tied into the bow that secures the shoulder straps. If that’s a bit confusing, it’ll make sense by the time we’re done!

 So, right now we have a very long, very full tutu skirt. Let’s get this thing turned into a dress!

Here’s how we make the waistband. 

Take that second piece of elastic that we set aside, and cut two pieces of orange ribbon 1 1/2 to 2 times longer than your elastic, depending on how ruffly you’d like the waistband.

Place the two pieces of ribbon together, and stitch up each long side, creating a tube. You can pin them together if you’d like, but it isn’t really necessary if you’re careful as you sew.

Take your elastic and attach a safety pin to the end. Using the safety pin to pull it along, thread the elastic through your ribbon tube. When the end of your elastic gets close to slipping inside the ribbon, stitch it down. 

Continue to pull the elastic through the tube until it comes out the end and the ribbon is all ruffled. Stitch up that end as well, making sure your stitch through the elastic, and remove the safety pin.


Now we’re going to meet up the two ends of our ribbon encased elastic, and sew them together to create the waistband. I also heat sealed the ends of the ribbon to prevent fraying. You could also do a french seam if you’re worried about any exposed edges.


And here you have a finished, removable waistband.

For the last step, we need to attach the shoulder straps. There are many, many ways to do this, and the most popular is to do a simple halter that ties behind the neck. However, I prefer traditional shoulder straps on little girls, and I’ll be crossing them over the back to help them stay up. You’ll want at least 3 yards of ribbon for the shoulder straps, so there’s plenty left for a fluffy bow.

Find the center of the front of your dress, and start threading your long piece of ribbon through the looped ribbon at the top of the dress. You’ll want it centered and as wide apart as you want the finished straps to be. Hopefully the pictures explain it better than I can at the moment!

Flip the dress over to the back, and make sure the bow we made at the back of the dress earlier is untied. Cross the ribbons over each other, forming an X, and then thread each through one ribbon loop on the back.

 Take all four ribbon tails, and tie into a bow! You’re all done! This way the shoulders are completely adjustable, and the look can easily be changed.










 I hope you give making this dress a try! I’ll have a tutorial up for the matching hat very soon!


Featured On:

Sugar and Dots


  1. This is adorable! I love the belt and the ribbon detail at the top :) The model is super cute too.

  2. Adorable! I love these tutu dresses! Unfortunately, I don’t have any little girls to make them for. I’m hosting a Halloween Costume contest starting tomorrow and would LOVE for you to enter! (Click here for more details: http://www.createcraftlove.com/2012/09/handmade-halloween-costume-contest.html) Hope to see you there!

  3. This is absolutely adorable (as is your daughter)! Even this non-sewer may be able to create this…well that is up until the sewing part ;) Thank you so much for posting this and leaving your tips and advice (ie using non-glitter tulle). I will have to pin this for future use.

    PS Found you via SITS sharefest.

    • MommyInSuburbia says:

      Thanks Kim! If could even be done totally no-sew if you got some decorative elastic trim from the craft store to use as the waistband.

  4. OMG!!!! This is SO cute. I love it. The price is hard to beat. Think I may try making one for my niece. She wants to be a witch for Halloween this year. :) Thanks for the tutorial.

  5. Cute!!

  6. Oh isn’t that adorable! And your daughter is so beautiful!

  7. Thank you SO much for this tutorial!! I’ve been doing tutu costumes for my 3 girls for years, but had NO idea how to make the dress. This year my youngest wants to be Cinderella and I wanted something special :) You are SO right, this one is much fancier than the crochet top ones, plus I couldn’t FIND a crochet top ;-) This tutorial is PERFECT!!


  1. […] more quick tutorial I wanted to share with you before Halloween. This Mini Witch Hat goes with the Witch Tutu Dress Halloween Costume I shared a few weeks ago. The original hat a made for it was a bit wonky, and my construction […]

  2. […] was browsing links on an online handmade Halloween costume contest and Joanna’s Witch Tutu Dress Halloween Costume Tutorial pretty much jumped off of the screen and screamed my name.  Do you think it would be too much to […]

  3. […]  This little cutie had to stay in the car the whole time though, so I just had to show off her cute little version of her big sister’s witch tutu dress! […]