What schema markup is, in plain English
Schema markup is a machine-readable data card for your business that lives invisibly in your website's code: name, address, phone, hours, and coordinates written in a standardized format (Schema.org's LocalBusiness type, wrapped as JSON-LD) that Google, Bing, and AI assistants can read without guessing. Visitors never see it. The engines read it and use it to confirm what your visible pages and your Google Business Profile already say, which is exactly why all three have to agree.
The payoff: eligibility for rich results (hours, ratings, and details shown right in the listing), stronger map pack signals, and answers AI tools can cite with confidence. Our Florida Local Search Index found only 18.6% of audited Brevard County businesses had any schema, while 73.8% of top-ranked Florida businesses measured in Q3 2026 use it. It went from nice-to-have to table stakes, and most local competitors still have not done it.
The fields that matter most
- name: your official business name, exactly matching your Google Business Profile
- address: full PostalAddress with street, city, state, postal code, and country
- geo: latitude and longitude (right-click your location in Google Maps to grab them)
- telephone: your real business line, matching your profile, not a tracking number
- openingHoursSpecification: hours in 24-hour format (AM/PM fails validation)
- sameAs: links to your Google Business Profile and social profiles
- aggregateRating: only if real review data is visible on the page, never fabricated
Pick the most specific business type available (Plumber, Dentist, HVACBusiness) instead of generic LocalBusiness, it sharpens what the engines understand about you. Skip HowTo schema entirely: Google deprecated those rich results, so it is wasted effort on a local site.
Where to paste the code
The generated <script type="application/ld+json"> block belongs in your page's <head> (before the closing </body> also works). On WordPress, use a header/footer code area or your theme's custom scripts field; if an SEO plugin already outputs schema, check its version before adding a second block, because two conflicting blocks on one page is worse than none. Site builders like Wix and Squarespace have a custom-code setting for the same job. Multi-location businesses put one tailored block on each location's page with that location's real address, phone, and hours.
Validate before you trust it
One syntax error and the whole block gets ignored, so validate every time. Run the page through Google's Rich Results Test, fix what it flags (the usual suspects: missing postal code, 12-hour time format, missing country), confirm with the Schema.org validator, then request indexing in Search Console so Google picks up the change. After that, the Enhancements section of Search Console will flag any errors that appear later.
The mistakes that undo the work
- Schema that disagrees with the visible page (different hours, different phone): Google may distrust both
- Copying another site's block and missing a field, which is how wrong details end up in search
- Multiple conflicting LocalBusiness blocks on the same URL
- Ratings in schema with no matching review content on the page, which violates Google's guidelines
- Setting it once and never updating: hours change, businesses move, and stale schema hurts more than none
Treat schema like your Google Business Profile: update it whenever core details change and give it a quarterly check. Generate yours above, paste it, validate it, and then run the full local SEO audit to see what else separates you from the businesses holding your market's map pack.
