I was always curious if the food coloring really can dye yarn... It definitely can! I bought red, blue and yellow food coloring at local grocery store a couple of weeks ago and couldn't wait to try them out.
All you need do dye your yarn are food coloring (liquid or paste), vinegar, water & a large pot. You can use any pot you normally use for cooking because the food colorings are not toxic.
The food coloring + vinegar mixture will dye almost all animal fibers.
Soaking:
You need your yarn to be in a loosely tied skein. Fill a large bowl with a lukewarm water and put the skein inside, making sure it's fully covered by water (you can put a small plate on top of it so it'll press the yarn down). Leave it soaking for 30 minutes.
Prepare dyes:
To prepare your food dye, you need hot water, a large cup an food coloring in a color you want. You can always mix different colors (color theory - yellow + blue = green, yellow + red = orange, red + blue = purple etc......).
Remember to wear gloves and an apron or old t-shirt. The food coloring can dye your fingers as well :-)
Fill the cup with hot water and add the food coloring a (you don't have to add much) - you can test the color by dipping a piece of paper towel in the mix.
The fun begins!
Fill the pot with a lukewarm water and add the dye mixture. Take the yarn out of the bowl and slightly squeeze to remove exceed water. Now, put the skein in the pot and gently stir it with a plastic/metal spoon to be sure it's fully soaked with the dye solution.
Now bring the content of the pot to shimmer for 15 minutes, don't allow it to boil. Try to move the yarn as little as possible - if you rub or move it too much it could felt.
Vinegar
After 15 minutes of shimmering, it's time to add vinegar - it "opens" the yarn and helps it absorb the color making it solid. You will need approx. half of a cup of vinegar - add it to the pot trying not to pour it directly at the yarn. Delicately stir the solution and move the yarn around.
Bring almost to boil and then back to shimmer, let it shimmer for 30 minutes. You will notice that the water gets clearer with every minute.
After 30 minutes, put the pot aside and let its content to cool to room temperature. When it's done, rinse the yarn with lukewarm water, gently squeeze and hang it in to dry, making sure it's not in the direct sun.
And VOILA! You have your yarn dyed the color you wanted!