@type: LocalBusiness · Place
Local business schema generator
Every shop, office and service with a local presence can use LocalBusiness schema. If none of the 49 specific types fits, generic LocalBusiness still gives search engines your name, address, phone, hours and service area in a format they trust.
Free · no account needed · validated against Google's LocalBusiness guidelines
<script type="application/ld+json">{ "@context": "https://schema.org", "@type": "LocalBusiness", "@id": "https://lonestarplumbing.example/#localbusiness", "name": "Lone Star Plumbing Co.", "legalName": "Lone Star Plumbing Company LLC", "description": "Licensed Austin plumbers for leaks, water heaters, drain cleaning and repiping. Upfront flat-rate pricing and 24/7 emergency service.", "slogan": "Fixed right, the first time.", "url": "https://lonestarplumbing.example", "logo": "https://lonestarplumbing.example/logo.png", "image": [ "https://lonestarplumbing.example/img/van-16x9.jpg", "https://lonestarplumbing.example/img/team-1x1.jpg" ], "foundingDate": "2004-06-15", "telephone": "+1 512-555-0144", "email": "service@lonestarplumbing.example", "priceRange": "$$", "currenciesAccepted": "USD", "paymentAccepted": "Cash, Credit Card, Check, Financing", "knowsLanguage": [ "English", "Spanish" ], "address": { "@type": "PostalAddress", "streetAddress": "4810 Burnet Rd, Suite 200", "addressLocality": "Austin", "addressRegion": "TX", "postalCode": "78756", "addressCountry": "US" }, "geo": { "@type": "GeoCoordinates", "latitude": 30.320371, "longitude": -97.739614 }, "areaServed": [ { "@type": "Place", "name": "Austin" }, { "@type": "Place", "name": "Round Rock" }, { "@type": "Place", "name": "Cedar Park" }, { "@type": "Place", "name": "Pflugerville" }, { "@type": "Place", "name": "Georgetown" }, { "@type": "GeoCircle", "geoMidpoint": { "@type": "GeoCoordinates", "latitude": 30.320371, "longitude": -97.739614 }, "geoRadius": 40000 } ], "openingHoursSpecification": [ { "@type": "OpeningHoursSpecification", "dayOfWeek": [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" ], "opens": "07:00", "closes": "19:00" }, { "@type": "OpeningHoursSpecification", "dayOfWeek": "Saturday", "opens": "08:00", "closes": "16:00" } ], "specialOpeningHoursSpecification": [ { "@type": "OpeningHoursSpecification", "name": "Thanksgiving", "validFrom": "2026-11-26", "validThrough": "2026-11-26", "opens": "00:00", "closes": "00:00" }, { "@type": "OpeningHoursSpecification", "name": "Christmas Eve", "validFrom": "2026-12-24", "validThrough": "2026-12-24", "opens": "08:00", "closes": "12:00" } ], "hasOfferCatalog": { "@type": "OfferCatalog", "name": "Plumbing services", "itemListElement": [ { "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Drain cleaning", "description": "Kitchen, bath and main line clearing with camera inspection." }, "priceSpecification": { "@type": "PriceSpecification", "minPrice": "149.00", "priceCurrency": "USD" } }, { "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Water heater installation", "description": "Tank and tankless installs, haul-away included." }, "priceSpecification": { "@type": "PriceSpecification", "minPrice": "1400.00", "priceCurrency": "USD", "maxPrice": "4200.00" } }, { "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Leak detection", "description": "Non-invasive slab and wall leak location." }, "price": "295.00", "priceCurrency": "USD" }, { "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Emergency plumbing", "description": "24/7 burst pipe and overflow response." }, "priceSpecification": { "@type": "PriceSpecification", "minPrice": "189.00", "priceCurrency": "USD" } }, { "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Whole-home repiping", "description": "PEX repipe with drywall patching." }, "priceSpecification": { "@type": "PriceSpecification", "minPrice": "6500.00", "priceCurrency": "USD" } } ] }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.8", "reviewCount": "1046", "bestRating": "5", "worstRating": "1" }, "review": [ { "@type": "Review", "author": { "@type": "Person", "name": "Daniel Ortiz" }, "reviewRating": { "@type": "Rating", "ratingValue": "5", "bestRating": "5" }, "reviewBody": "Showed up within an hour on a Sunday and fixed our burst pipe. Fair price.", "datePublished": "2026-10-05" }, { "@type": "Review", "author": { "@type": "Person", "name": "Megan Lee" }, "reviewRating": { "@type": "Rating", "ratingValue": "4", "bestRating": "5" }, "reviewBody": "Professional crew, clean work on our new water heater.", "datePublished": "2026-07-21" } ], "sameAs": [ "https://maps.app.goo.gl/lonestarplumbing-example", "https://www.yelp.com/biz/lone-star-plumbing-co-austin", "https://www.facebook.com/lonestarplumbingatx", "https://www.bbb.org/us/tx/austin/profile/plumber/lone-star-plumbing-co", "https://nextdoor.com/pages/lone-star-plumbing-co-austin-tx" ]}</script>Generate your local business schema
Fill in your details — the JSON-LD, validator and search preview update as you type. Free, no account.
Step 1 of 7
Business
Type & identity
Business type
Pick the most specific schema.org subtype. It's the strongest relevance signal you can send.
@typeIdentity
Use the name exactly as it appears on your storefront and Google Business Profile.
nameMissing business name
alternateNamelegalNamedescription0/750
sloganfoundingDateWebsite & media
urlMissing website URL
logoSquare, at least 112×112px, on a plain background.
imageNo images
Free schema checker
Validate existing local business markup
Already have local business markup? Paste it to see its score, rich result eligibility and exactly what to fix.
Properties that matter for local businesses
@type: LocalBusiness | The root type. Pick a more specific subtype whenever one fits — it's a stronger signal. |
address + geo | Required for storefronts; service-area businesses list areaServed instead. |
openingHoursSpecification | Structured hours per day, including split hours. |
sameAs | Google Business Profile, Facebook and directory listings tie your entity together. |
name + address | Required by Google for every LocalBusiness — and must match your Business Profile exactly. |
Best practices
- Check the business type list before settling on generic LocalBusiness — there are 49 more specific options.
- Match your name, address and phone exactly to your Google Business Profile.
- One location per page: separate branches get separate markup.
FAQ
What the validator checks
- Required name and full postal address
- Phone format and international prefix
- Overlapping or invalid split hours
- Coordinates with 5+ decimal precision
- Expired holiday exceptions
- Keyword-stuffed business names
- Self-serving review markup
- Most specific schema.org subtype
For agencies
Managing several local businesses?
Host the schema for up to 25 client locations and update hours across every site from one dashboard.
See Pro