We don't set a budget but only buy what we can afford. I start early and try to buy one thing each week when I see a good deal. The single most expensive thing I've bought is his wooden shop at £35, but that also has a £20 till and about £30 of food and accessories with it. So about £85 on his main 'santa' present.
He also has a wooden castle (£20), giant keyboard mat (£18), a doctor kit (£8), a build-it JCB (£10), two board games (£6 each), some gruffalo puzzles (£4), a duplo train, a book and a gruffalo cutlery set (free with points). So quick calculation, including stocking filler chocolates etc I've spent about £160 - half of that being for his shop.
The only thing I regret buying is the giant keyboard. I know he'll love it but it's huge and I can't see me getting it out much! Everything else I'm pleased with.
Early on I set up an amazon wishlist called 'gift ideas' with books, puzzles, wooden train things, duplo and playmobil on, and my family have bought lots from that and had it delivered up here - they live 5 hours away and usually just send money but I told them I'd rather he had the new toys to open instead. I'm glad I did it because the list had lots of things from £2 up, so people could just buy what they could afford instead of feeling obliged to put a certain amount of money in a card. I hate putting a £10/£20 note in a card when I know I could have bought a present for a lot less! And whenever I get money from people I feel obliged to pay it into his savings account rather than spend it on toys, even though he really needs some new puzzles and stuff that are more age appropriate. So the ideas list was a win-win and will definitely be repeated next year.
My in laws gave me money so I put half in his account and bought him a wooden engine shed, train station and tunnel with the rest. The good Brio stuff that I would never normally buy for him myself. I wrapped them all and stacked them up with ribbon and bows, and took them round to their house ready for them to bring round on xmas day. They were so pleased - they find it difficult to get out and buy things, and never know what to get, but said they hate just giving him money and not getting to see him open anything.
He's getting so old for his toys now, I can't wait to have a big clear out of the babyish stuff on xmas eve ready for the new ones!