How Make Waves Marketing rebuilt its own Louisiana local search foundation with city pages, service plus city pages, location schema, and crawlable HTML.
Updated
Make Waves Marketing rebuilt the local search foundation of its own website, makewavesnow.com, over the summer of 2026. The agency operates from a studio at 203 West Second St. in Thibodaux and serves clients across south Louisiana and into Florida, but the site had been asking one statewide page to carry every city and every service at once. This case study documents the work itself: what was built, in what order, and why. It reports architecture and implementation, not ranking promises. Search results depend on competition, links, reviews, and Google's own judgment, and no agency controls those. What an agency can control is whether a search engine or an AI assistant can find the page, read the page, understand which city and service it covers, and pull a clear answer out of it. That is the part of the problem this project fixed.
Three issues showed up in the same review.
Location pages were created for Baton Rouge, New Orleans, Lafayette, Houma and Thibodaux, and Mandeville. Each names the area it serves, describes the work the agency does there, and links to the services a visitor from that city is most likely to want.
Above the city pages sit pages that combine one service with one city, such as web design in Baton Rouge and web design in Jacksonville. These match how people actually search. Someone typing "baton rouge web design" is not looking for a company overview. They are looking for the service, in their city, with a way to get in touch.
Each location page carries structured data describing the business as a professional service, with the real Thibodaux address and coordinates and the service areas listed separately. An earlier version of the markup combined the Thibodaux street address with a different city's name, which is exactly the kind of mismatch that makes structured data untrustworthy. Markup now states one real address and expresses coverage through service areas, so the machine-readable version of the business matches the visible one.
Every published route is written to disk at build time with its own title, description, canonical, social tags, and structured data, plus a set of real links inside the page body. A crawler that never runs JavaScript now gets a complete page. This is checked automatically on every build, so a route cannot quietly lose its head content.
More than three hundred old links from gravoisgraphics.com and gograv.com were mapped to their closest current page with permanent redirects, so the history behind those links now points at live pages.
Reversing that order is the common mistake. Adding schema to a page a crawler cannot read produces nothing.
Most local businesses in Louisiana have the same three problems this site had. One page trying to serve six cities. A website that looks fine to a person and reads as empty to a crawler. And a Google Business Profile disconnected from the pages it should support. Fixing those is not a content volume exercise. It is a structure exercise, and it is finishable.