Search engine optimization for a business is not the same job as SEO for a national brand. You aren't trying to outrank the whole internet. You're trying to be the clear answer for a handful of services in a handful of cities. That is a much smaller job than most owners think.
1 of 3 · 9 stepsLocal SEO is about being the clear answer for your services in your area. Build one page per service with your city and service area on it, keep your name, address, and phone identical everywhere, and keep your Google Business Profile complete and current. The businesses that do all of this win the map.
When a customer searches for your service in your city, Google shows a map pack first, then the regular results underneath.
The map pack comes from your Google Business Profile, and the results below come from your website. You win both by matching your facts everywhere and keeping them current.
One page that lists twelve services ranks for none of them. Build a page per service with what it is, who it's for, what it costs or how you quote it, how long it takes, and photos of your own work. Each page should answer the questions a customer would ask before calling. Add a city page only if you have something real to say about working there. Do not create a page for every city in your state with only the city name swapped. Google penalizes that.
Instead of one 'Services' page listing drains, water heaters, and repipes, build three pages: 'Drain cleaning in Bakersfield', 'Water heater replacement in Bakersfield', and 'Repipe services in Bakersfield'. Each answers what it is, what it costs, and how to book.
The title tag is the blue link in search results. It is the first thing a customer reads about your page. Use the pattern below, keep it under about 60 characters so it does not get cut off, and give each page its own title. Do not use the same title on every page. Check your title tags by hovering over the browser tab or using a free SEO checker.
Drain Cleaning in Bakersfield, CA | Valley Plumbing
{Main service} in {City}, {State} | {Business name}The footer is the usual spot. It must match your Google profile character for character, including suite numbers and abbreviations. If your profile says 'Suite 4' and your footer says 'Ste. 4', Google sees two different addresses. Make the phone number a tap to call link on mobile. Add a contact page with your hours, your service area, and a simple form. Google reads all of this and compares it to your profile.
Footer: Valley Plumbing · 905 Oak Street, Bakersfield, CA 93301 · (661) 555-0123 · Open 7 to 5, Mon to Fri
Run your homepage through PageSpeed Insights at pagespeed.web.dev. It gives you a score for mobile and desktop. Most local searches happen on a phone, often from a driveway or a parking lot. The usual fixes are oversized images, autoplay video, and too many plugins. Compress images before you upload them, remove autoplay video, and remove plugins you do not use. If your mobile score is low, visitors leave before the page finishes loading.
Compress a 5 megabyte photo at tinypng.com before uploading. It drops to under 500 kilobytes and loads in under a second instead of eight.
Beyond Google, claim Bing Places, Apple Business Connect, Yelp, Facebook, the BBB, and the main directory for your trade. Use identical business details on all of them. Mismatched listings make search engines less sure which details are right, so they trust you less. This is called a citation audit. You can do it by hand or pay a service to do it for you. Either way, it matters. Google cross checks your details across these sites.
Schema is a block of code that states your business facts in a format machines read directly. Google requires only name and address for LocalBusiness markup and recommends hours, phone, website, and map coordinates. The markup has to match what is visible on the page. If you use WordPress, a plugin like Yoast or Rank Math adds it for you. If your site is custom, ask whoever built it to add it. Test it at validator.schema.org. This is not optional for local SEO.
A LocalBusiness schema block includes your name, address, phone, hours, and geo coordinates, all matching the text on your contact page exactly.
It is free at search.google.com/search-console. Verify your site, submit your sitemap, and check the Performance report monthly. It shows the exact searches people used to find you and where you ranked. Those are the pages worth improving first. If you see a search you rank on page two for, rewrite that page to answer it better. Most owners never look at this. That is why most owners do not know what searches bring them traffic.
Search Console shows 'water heater repair bakersfield' brought clicks last month and you ranked near the bottom of page one. Rewrite that page to answer it better and watch the clicks climb.
Google counts links from other websites toward prominence. Ask your suppliers, your chamber of commerce, the teams you sponsor, and trade associations to link to you. Five links from real local organizations beat five hundred from a link package. Do not buy links. Google catches it and downgrades you. A good goal is one new local link per month. If you sponsor a local team, ask for a link on their site. If you are in the chamber, ask for a profile page.
Write down the ten questions customers ask most. Answer each one on your site in a few plain sentences, on the service page it belongs to. Do not bury them on a FAQ page no one visits. Put the answer right where someone would look for it. These answers are also what AI tools like ChatGPT quote, which is the subject of the next guide. If your site answers the questions better than the site above you, you win the click.
On your water heater page, answer 'How much does a water heater replacement cost?' right under the heading, in two plain sentences, before any other text.
Local SEO does not work overnight. Your Google Business Profile changes usually show first, and website changes take longer because Google has to recrawl each page. The more competitive your service and city, the longer it takes to move up. Check Search Console monthly to see what is moving.
Not a traditional blog. What helps more is a dedicated page for each service you offer, with the questions customers ask answered right on that page. A blog only helps if each post answers a real question your customers search for.
Yes. Local SEO focuses on showing up in the map pack for searches near you, keeping your Google Business Profile complete, and matching your business details across every listing. Regular SEO is about ranking for searches that do not depend on location.
No. The map pack and the regular results below the ads are free to earn with your profile and your website. Ads sit at the top and are labeled as sponsored. Many businesses do both, but you do not need ads to show up in the free results.
Check Google Search Console once a month. It shows the exact searches that brought people to your site and where you ranked. If the searches and clicks are climbing, it is working. If they are flat, look at which pages are not ranking and improve them.