Ground sirloin does it for me. It's a little pricey but it has what I think is the best flavor in a burger. Ground Chuck would be a close second.
Whichever meat you choose, if you want moist, then make sure it has enough fat in it (at least 20%), and this is important: get some salt into the meat! This does two things: It gets flavor into the meat, and helps to retain moisture.
Try this - Per 1 lb ground beef, mix:
1/4 tsp salt
1 liq. oz (1/8 cup) water
Dissolve the salt in the water, then mix that thoroughly into the meat. Don't worry about the water, it will be absorbed by the meat.
If you season the outside of the patties, just remember to back off on the salt since there's salt in the burger now!
Options (per lb of beef):
- 1/4 tsp granulated/powdered onion (A good option since you like onion in your burger).
- 1/8 tsp Granulated Garlic (no more than that or it can quickly become overpowering).