$20 is about what we spend. I usually either ask the parents what he/she needs or what he REALLY wants that is reasonably priced. If unsure, I avoid anyhting that could be controversial. (I.e. guns/ war, Power Rangers, Ninja Turtles, religious.) I LOVE giving age appropriate games and books. So one of my first stops is the game isle. If the kid is turning 5 I look for games that are "5 and up". A lot of the beginner games are $5-$18. If it is a $5-$10 game, I will also get a book that seems intresting for the age. (I use the invetation as aa clue to what the kid likes. If it is a dinosaur theme, I look for a dino book.) Don't waiste part of your $20 ($25 after wrapping and tax) on a $5 card! NO ONE cares THAT much about the card! They are not oing to frame it and save it for ever, so buy a $0.99 one, or better yet- have your son make the card. (I have even printed an address lable that said "to: (so-and-so) from: (our family)" The kids NEVER CARED! Dollar Tree and 99 cent stores both sell wrapping paper. I would rather spend $1 on paper everytime than store a $3.99 roll that may or may not be reat for the next party. For my own kid- I buy the roll- because I am wrapping 3-5 gifts in the same paper.
Your question about giving everyone the same gift- If it is a basic toy that all kids would like- SURE! When I find something at a great price, I buy a few and save them for whom ever I think of. I have given nieces and nephews $50+ dollar gifts that I got for $12-$25. DH and I look like we spend TONS of money on these kids, but really, we just shop well!
Favor bags- I HATE putting tons candy in the bags! Most parents don't really want their kids to have much candy, so it just creates problems for them when they get home. For DS's last b-day, each kid got a foam airplane (about $0.65 a piece), a bubble ring (8 for $1), a supper ball (6 for $1), stickers, a roll of smarties, and a funsize bag of M&Ms. They don't have to be FILLED, just have a little bit of something to say "thanks for sharing my special day."