Soap Vomiting Unicorn




About: Hi, my name is Britt Michelsen, I'm a Chemical Engineer especially interested in Computational Fluid Dynamics. To balance all the theoretical work I like to make stuff in my free time.

If you ever thought that cleaning would be infinitely more fun if it could be done with unicorn vomit, you’ve come to the right place.

In this instructable I am going to show how to 3D print and build your own soap dispenser that looks like an unicorn.

The horn can be unscrewed to add soap. There is a push button hidden in the right nostril that turns the sensor on and can be used to increase the amount of soap dispensed. Another push button is hidden in the left nostril, which can be used to turn the sensor off or reduce the amount of soap dispensed. The battery compartment is hidden in the right foot.

Step 1: The Design

I wanted to make something with a unicorn for quite some time. Originally I was planning on building a wine bottle opener, but quickly decided against it, since I don't drink wine. I always loved seamsters Pooping Reindeer Candy Dispenser and thought about turning it into a unicorn, but decided that since his version is already so great, turning it into a unicorn wouldn't add much to it (and I am allergic to chocolate).

Finally after walking into my kitchen and seeing my Deadpool Knife Block I decided, that a unicorn vomiting Ajax would go perfectly with it.

The next thing I did was trying to find a unicorn I could use. Sadly, I wasn't successful. As you can see in the picture I found one I really liked, but it was way to small. So I decided to design and 3D print my own version.

I wanted the electronics to be hidden as well as possible, so I went through a few design iterations.

The unicorn was designed in Fusion 360. It was my first time trying to use the SCULPT feature and I absolutely loved it. I used it for the head, horn, ears and the mane.

Simply select "Create" and than "Create Form" and you will be able to create forms and edit point as well as edges. This way you can design more complex objects than in the MODEL feature. I highly suggest you give it a shot.

Step 2: The Design #2

Once I was happy with the shape of the unicorn, I cut off the snout (wow, this sounds harsh...) and hollowed it by using the shell feature. I left out the snout, because I didn't wanted to turn it into a shell. I later cut slots into it to fit the motor and the push buttons.

A quick hint, if you are planning on making something hollow, do so before using fillets. I had a few failed attempts with the hollow feature not working properly. Once I figured out it was because of the fillets it worked perfectly though.

Afterwards I designed a divider so that the soap wouldn't get in contact with the electronics and I decided to place the battery compartment into one of the feet. As you might have guessed the thread was designed with the thread feature, which works really well. All that was left to do was to change the inside so that the electronics would fit into it.

I decided to hold the feet and the snout in place with magnets. I was a bit nervous that water might get into the battery compartment, but so far it has worked really well.

Step 3: What You Need


  • Liquid Antibacterial Hand Soap Dispenser (e.g. from
  • 4 x 1.5V AAA Battery Holder (e.g. from
  • 12 6x1.5 mm magnets
  • Wires
  • Shrink tubing
  • Zip tie
  • Silicone Tubing (5 mm outer diameter; 3 mm inner diameter) about 30 cm long
  • Two component glue
  • Hot glue
  • Autobody filler
  • Primer
  • White and gold paint and paint for the mane as well as the tail


  • 3D printer
  • Soldering iron
  • Screw driver

Step 4: 3D Printing

Start by printing all the parts.

For the body I used a "Support Overhang Angle" of 70°. This way there won't be any support structures in the middle of the soap dispenser. The ones in the top thread can easily be removed.

You will have to print every part once and "Nostril.stl" twice.

I used a layer height of 0.15 mm, in order to save time and I knew that I would smooth the parts later anyhow.

I printed everything with a 0.4 mm nozzle. Depending on your printer you might have to print the tube connector with a finer nozzle.

Step 5: Smooth the Parts

I recently wrote an instructable on how to smooth PLA 3D prints. You can find it here.

In order to smooth the unicorn I started by filling the bigger unevenness with autobody filler. Once it was cured I wet sanded the parts I had filled. After cleaning them I applied two thin layers of autobody filler and wet sanded everything.

I taped off the thread of the horn to make sure that it would still fit later on.

After everything is smooth, glue the magnets in place.

Step 6: White Paint

Afterwards I used a white prime on everything except for the horn and airbrushed the parts with Createx Wicked Colors white.

Then I ran into troubles. Since I was too lazy to tape everything, I decided to use a brush to paint the mane. As you can see in the picture it didn't work too well. So I decided to paint it white again and tried using masking putty, but it didn't work too well either. I couldn't apply it thin enough and so there was a gap that annoyed me. So I painted everything white again and tried using liquid masking tape. Once again I failed, because it stuck extremely well to the white paint and when I tried using a tooth pick to get it off I scratched the paint. At first I figured I would be fine with it since I am pretty sure nobody would have ever noticed. So I went on and painted the eyes as shown in the next step, but soon after I decided to paint the mane and tail with a high pigmented pink paint, which I could apply with a paint brush (so that I wouldn't have to mask anything).

Step 7: Horn and Eyes

Before painting the horn I covered the thread with tape to make sure that it would fit later. In my experience metal paint ends up looking a lot better if you prime the parts with black paint.

I used Army Painter Matt Black Base Primer and Createx Pearlized Pearl Satin Gold (which I love). After it was dried I used a glossy varnish to protect it.

It was hard for me to decide how big I wanted the eyes to be and where to position them. So I printed a few in different sizes and held them to the side of the unicorn. I ended up going with 8 mm (0,315 inch). As you can see I went a bit overboard and used my plotter to cut a stencil. Should you be interested, my eyes are 5.5 inches apart.

Step 8: Disassembling the Soap Dispenser

Disassembling the soap dispenser is quite easy. All you need to do is to remove the screws that are hidden in the battery compartment and the screw that is next to the opening through which the soap is dispensed.

Then remove the two screw holding the PCB and the screws holding motor. Once you have done that you can pull the electronics out of the metal tube.

Step 9: Assembly

Start by unsoldering the LED next to the push buttons. Once you have done that, make sure that the two "Nostril.stl" prints fit onto the push buttons and into the nostrils. You will have to turn them to the outside, as shown in the first picture.

Place the prints and the PCB into the snout and glue it in place with hot glue. Be careful and don't use too much hot glue, since heat and 3D print tend to not mix well.

Step 10: Assembly #2

Elongate the power wires, push them through the head and pull them through the foot. Once you have done that solder them to the battery compartment. Now you can glue the battery compartment to "Foot02.stl".

Next use "TubeConnector.stl" to connect the hole in the right foot to the silicone tube, as shown in the last picture. I did it before priming that's why the printing lines are still very visible in the picture. Don't use hot glue, since it will melt the tube connector (believe me, I tried...).

Step 11: Assembly #3

Push the silicone tube through the body and the sensor PCB into the corresponding hole. Admittedly this is a bit fiddly

Than solder the motor wires back in place. Make sure you get the polarity right. Place the silicone tube into the motor, screw it close and push the end of the tube though the mouth. Now put the motor into the snout and pull the silicone tube further through the mouth. I tried gluing the silicone tube to the mouth, but couldn't find a glue that worked, so I ended up simply cutting it off. So far it worked really well anyhow.

Congratulations you are done.

Spotless Contest

Grand Prize in the
Spotless Contest



  • Sensors Contest

    Sensors Contest
  • Beauty Tips Contest

    Beauty Tips Contest
  • Classroom Science Contest

    Classroom Science Contest

41 Discussions


7 months ago

Hi BrittLiv, this is an amazing project and I am eager to make one! I live in Taiwan and am unable to source the soap dispenser from Amazon that you used. I would like to modify the unicorn to fit a soap dispenser that I locally sourced, however, I am not that well versed in the sculpt feature of fusion360. Are you able to provide the original fusion 360 files so that I can make modifications to the unicorns inners and fit it to my soap dispenser? Any help you can provide would be great!


10 months ago

Dude, I love that gif! And the Instructable! And the idea! So cool!


10 months ago

Great 'ible. There is a problem with the snaut.stl (other than the fact it should be spelled Snout). The inside large square void comes too close to the outer perimeter and when sliced it leave a visible hole/scar on the outside. I have tried both Slic3r and Simplify3d and both have this issue with it. Maybe there is a setting in the slicer I am missing...


1 year ago

Congrats on the grand prize! Wanted to give an extra vote!!

1 reply

Question 1 year ago

The STL file doesn't feet to Ultimaker3 because of the size? its height is over 220mm?

1 answer

Answer 1 year ago

It is 228 mm high. You might have to cut at the ears and mane. I have an Ultimaker 2+ extended.


1 year ago

It looks good but the STL size doesn't feet to Ultimaker3 3D Printer?


1 year ago

Wow!! It's amazing!! Congrats :)


Answer 1 year ago

Sadly I don't, but there are a lot of 3D printing services online

If he has shared the files there are many printing shops around the world. Thingaverse has its own too!


1 year ago

Totally cool. My granddaughter would love the Unicorn, My grandson would love the puke!

Eliminates all arguments to "WASH YOUR HANDS!"

Donald Bell

1 year ago

Outstanding! I'm excited to try this one. Great tips on smoothing the print, as well.


1 year ago

I'm disappointed. When I first saw the title of this project in my email, I thought it said "soup", not "soap."

1 reply
Gandolf the greenarex

Reply 1 year ago

well... you could rebuild it, I.E. tinker with the flow valves and the pump a bit, to change the needed viscosity of your solution. Then hide a crock pot with tomato soup in it or under as a stand, and drop in the intrusion pipe. Whala, you have a soup puking unicorn