If your child has a favourite doll, or clothes wearing bear, etc., it is likely still to be a favourite next year, no matter what you buy them! Why not ask for some yarn on Freegle, and knit or crochet a new outfit for their toy! If you mount it on a nice piece of card, and place it in a bag, your child will love it as much as any £20 shop bought outfit for their toy, and you will have the satisfaction of knowing that your child's gift was actually a gift of love, not money!
If your child is getting a hand knitted jumper from you, Auntie, or Grandma (or even Grandad), why not use any leftover wool, and make an extra, miniature version for their doll, or teddy! If jumpers are beyond you, or time does not permit, how about knitting matching scarves and bobble hats for child, and Barbie, Teddy, or Action Man!!
For smaller children, a knitted ball or toy would be a nice gift too. You can make a simple teddy without a pattern by combining squares and rectangles, and ensuring that the stuffing is not too firm, so a small child can hold on tightly. Any scraps of wool that are the same ply (such as all double knit, or all 3 ply) can be used to knit a multicolour bear, and any traditional ideas of "Bear colours" should go out of the window! Just ask on Freegle for any contributions, as most knitters will have a bag full of odd balls or half balls of wool that they would love to see used up!
Got lots of leftover bits of wool in your knitting bag? Offer them on Freegle, or use them to make your own decorations for Christmas!