Should I make my domain name something like energydrinks[dot]com and then optimize my pages like energydrinks[dot]com/energy-drinks-new-york. Or would I have an easier time just buying multiple domains instead? I'm especially interested about this since I want to target cities.

I would recommend to buy your main domain "energydrinks.com" work on your SEO, keyword weight, optimize you pages they way you show on the post, and buy the other domains and forward them to their specific content that you will give it an extra on the search engines.

Also some cheap PPC targeting cities would be great since that's what you want to do.

Regards,
Me!
E-Project Business Manager
<snip fake signature>

I have a domain with my city name, since it's only a small city i got number one position at SERP for my city name. But if you are targetting a big city i would go for the energydrinks.com . and then optimize the page for the city name maybe build some blogs and get some traffic first then you could refer them to your main keyword

me! has got all said. Good job.

I will suggest:

domain name something like energydrinks[dot]com and then optimize my pages like energydrinks[dot]com/energy-drinks-new-york

Also do local Business Listings and try to get backlinks from Geo Specifc Sites, try to optimize your site for mobile users if you're optimizing your site for geographies, this will enhance the localized search.

You can also use your brand name in your domain. It will give you a huge response in long-term goals.