For Brands

LocalBusiness Schema Markup for Restaurants, Salons, and Studios: A 2026 Implementation Guide

OnlureOnlure Team
·April 21, 2026·7 min read

LocalBusiness schema is the structured data layer that tells Google exactly what your business is, where it operates, when it's open, and what services it offers. Implemented correctly, it improves how your business appears in classic search results, Maps, and AI search features. Implemented incorrectly, it does nothing or triggers warnings. Here's the practical implementation guide for the three business categories that benefit most: restaurants, salons, and fitness studios.

LocalBusiness schema is one of the most under-used pieces of structured data in local SEO. Most Toronto small business websites have either no schema at all, or generic Organization schema that doesn't tell Google anything specific. The fix is a 30 to 90 minute implementation that locks in long-term local visibility.

This guide is the practical version. No theory. Just what to add, where, and how to verify it worked.

1. What is LocalBusiness schema and why does it matter?

LocalBusiness is a schema.org type designed for businesses with a physical location and customer-facing operations. It tells Google:

  • The exact name, address, phone, and website
  • The category and subcategory
  • The hours by day of week, including special hours
  • The price range
  • The geographic coordinates
  • The available payment methods, accessibility features, and services
  • When implemented correctly, this data populates knowledge panels, local pack listings, voice assistant responses, and AI search citations. When missing, Google has to guess from your unstructured page content, which is less accurate and less authoritative.

    The practical lift on local visibility from adding LocalBusiness schema is meaningful — usually 15% to 30% improvement in click-through from local search results.

    2. What's the most specific schema type I should use?

    Schema.org has dozens of LocalBusiness subtypes. The general rule: pick the most specific type that fits your business.

    Common Toronto business mappings:

  • Restaurants → `Restaurant` (or `FastFoodRestaurant`, `BarOrPub`, `CafeOrCoffeeShop`)
  • Hair salons → `HairSalon`
  • Beauty / nail salons → `BeautySalon` or `NailSalon`
  • Fitness studios → `HealthClub` or `SportsActivityLocation`
  • Yoga / Pilates → `YogaStudio`
  • Boutique retail → `Store` (or `ClothingStore`, `JewelryStore`)
  • Professional services → `ProfessionalService` (or `AccountingService`, `LegalService`)
  • If no subtype fits perfectly, use `LocalBusiness` directly. Do not invent a subtype that doesn't exist on schema.org.

    3. What's the minimum required JSON-LD?

    The minimum viable LocalBusiness schema:

    ``` { "@context": "https://schema.org", "@type": "Restaurant", "name": "Jasmine Cafe", "image": "https://example.com/cafe-storefront.jpg", "address": { "@type": "PostalAddress", "streetAddress": "123 Queen Street West", "addressLocality": "Toronto", "addressRegion": "ON", "postalCode": "M5H 2M9", "addressCountry": "CA" }, "geo": { "@type": "GeoCoordinates", "latitude": 43.6502, "longitude": -79.3811 }, "telephone": "+14165551234", "url": "https://jasminecafe.example.com", "openingHoursSpecification": [ { "@type": "OpeningHoursSpecification", "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday"], "opens": "07:00", "closes": "21:00" }, { "@type": "OpeningHoursSpecification", "dayOfWeek": ["Friday", "Saturday"], "opens": "07:00", "closes": "23:00" }, { "@type": "OpeningHoursSpecification", "dayOfWeek": "Sunday", "opens": "08:00", "closes": "20:00" } ], "priceRange": "$$", "servesCuisine": "Italian" } ```

    Embed this as a `<script type="application/ld+json">` block in the `<head>` or just before `</body>` on every page that represents the business.

    4. What recommended properties add the most value?

    Beyond the minimum, the high-leverage additions:

  • `menu` (URL of your menu) for restaurants
  • `acceptsReservations` (true/false) for restaurants
  • `servesCuisine` for restaurants
  • `paymentAccepted` (e.g., "Cash, Credit Card, Interac") for all
  • `hasMap` (URL to Google Maps listing)
  • `sameAs` (array of social media profile URLs)
  • `aggregateRating` (if you have public reviews to surface)
  • `amenityFeature` for fitness studios and salons
  • `isAccessibleForFree` and `accessibilityFeature` for inclusive marketing
  • Each property gives Google more context. Each is optional. Adding the recommended ones takes about 15 minutes once the minimum is in place.

    5. How do I handle a business with multiple locations?

    Two valid approaches:

    Approach A: one schema block per location page. Each location's URL has its own LocalBusiness JSON-LD. This is the most common and most reliable.

    Approach B: department schema. A parent business with `subOrganization` properties pointing to child LocalBusiness entities. Useful for franchises or large businesses but more complex to maintain.

    For most Toronto multi-location SMBs (2 to 10 storefronts), Approach A is correct. Build a per-location landing page, embed the schema specific to that location, and link them all from a "Locations" page.

    6. How do I validate my schema?

    Three tools, all free:

    One: Google's Rich Results Test. Paste the URL or the JSON-LD directly. It tells you if Google can read the schema and which rich result types are eligible.

    Two: Schema Markup Validator (validator.schema.org). More detailed validation against the full schema.org spec. Catches issues Google's tester might miss.

    Three: Google Search Console. Once the page is indexed with schema, Search Console reports any structured data warnings or errors. Check monthly.

    Common errors:

  • Wrong country code (use ISO codes: "CA" not "Canada")
  • Phone number with letters or formatting that looks human-friendly but parses oddly
  • Hours in the wrong format (use ISO 8601 24-hour: "14:30")
  • Duplicate schema blocks on the same page
  • Fix any errors before they accumulate.

    7. Will adding schema improve my ranking?

    Schema does not directly improve ranking. It improves how Google understands your business, which improves what ranks where.

    Specifically:

  • Better local-pack appearance in classic search
  • Better knowledge panels in branded searches
  • Better voice assistant responses
  • Better AI search citations
  • More accurate Maps presence
  • The cumulative effect on traffic and conversion is real. But schema is not a "rank higher" hack. It is a "be understood correctly" hack.

    Implement once, benefit for years

    The schema you write today will keep paying off as long as your business operates. Updating it (when hours, services, or location change) takes 10 minutes per change.

    Share this article
    Onlure

    Written by the Onlure Team

    Led by Prasun Ghosh, former Instagram engineer and founder of Onlure. Insights drawn from real platform data and direct work with Toronto creators and small businesses.

    LinkedIn·X / Twitter·support@onlure.ca

    Keep reading

    All articles →