Local business schema generator

Enter your shop, café or office details and copy the LocalBusiness markup for your website. Opening hours are typed in one short line and turned into the OpeningHoursSpecification objects search engines read.

With the country code, for example +1-555-0100.
Two-letter code: US, GB, DE…
Days and times, groups separated by ; Days: Mo Tu We Th Fr Sa Su. Example: Mo-Fr 09:00-18:00; Sa 10:00-14:00
Optional, for example $$ or $10–30.

Paste the script into your home or contact page. The details must match the page and your business listings.

Runs in your browser: nothing you enter is sent anywhere.

How to use it

  1. Choose the business type and enter the name, website, phone and a photo URL.
  2. Fill in the address and, if you know them, the map coordinates.
  3. Type the opening hours in one line, for example Mo-Fr 07:00-19:00; Sa-Su 08:00-14:00.
  4. Copy the script and paste it into your site.

How it works

The output is an object of the chosen type with name, url, image, telephone and priceRange. The address becomes a PostalAddress (streetAddress, addressLocality, addressRegion, postalCode, addressCountry), the coordinates a GeoCoordinates. Each hours group becomes an OpeningHoursSpecification with the full English day names that schema.org uses (Monday … Sunday), opens and closes as HH:MM. A range can wrap round the week: Fr-Mo is Friday to Monday. Commas in coordinates are read as decimal points.

Example

The default hours Mo-Fr 07:00-19:00; Sa-Su 08:00-14:00 become two entries:

"openingHoursSpecification": [
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
    "opens": "07:00",
    "closes": "19:00"
  },
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": ["Saturday", "Sunday"],
    "opens": "08:00",
    "closes": "14:00"
  }
]

(In the generated code each day is on its own line.) The coordinates 39.7817 and -89.6501 become "latitude": 39.7817, "longitude": -89.6501.

Tips

  • Use the same spelling of name, address and phone as on your page and map listings.
  • Update the hours before holidays or seasonal changes, together with the page text.
  • One location per page: for a chain, put each branch’s markup on that branch’s page.

Frequently asked questions

Which business type should I choose?

The most specific one that fits: schema.org has hundreds of LocalBusiness subtypes. The list offers common ones; for anything else choose the general LocalBusiness or replace the @type in the code with a subtype name from schema.org.

How do I write opening hours?

Each group is days, a space and opening-closing times: Mo-Fr 09:00-18:00. Separate groups with a semicolon. Days can be a range (Mo-Fr), a list (Mo,We,Fr) or one day (Sa). Leave out the days the business is closed.

Where do I find the coordinates?

In most map apps a long press or right-click on the place shows its latitude and longitude. Use decimal degrees with at least four or five decimals; a minus sign means south or west.

Does this replace a business profile on maps?

No. The markup helps search engines read your website, while a map listing such as a Google Business Profile is managed separately. Keep the name, address and phone the same in both.

Why is the country a code?

schema.org accepts a country name or an ISO 3166-1 alpha-2 code in addressCountry. The two-letter code is unambiguous, so the generator asks for it.

More in Developer

All tools in this category: Developer ·Updated November 4, 2026

Privacy choices

Google Analytics shows us which tools are used and whether they work. It may set cookies. Your choice is kept in this browser.