Definitely optimize your site for local search terms if you are targeting a geographic area. In most cases, the generic term will be so competitive that you will never show up on a search result. Plus, most people would type in the city into their search if they're looking for a local provider.
You can do some research to find out which keyword phrases people are using to find those types of products/services. Then incorporate the variations of those words, along with your city/town, into your website content, headers, links and meta-tags.
Also, make sure to add your company's address into Google Maps so you'll show up in proximity to the customer's search.