Organization schema builder
Search engines work out who runs a site from scattered clues, and they don’t always guess right. A short block of JSON-LD tells them outright. Fill in the form and the block gets written as you type.
This form runs entirely in your browser and sends nothing to our server. A draft stays in this browser’s storage until you start over.
JSON-LD block
It follows the form as you type. Copy it unchanged into the home page of your site.
Before you paste
Telling machines who you are
A person who lands on your home page knows who you are within seconds. The logo is in the corner, the address is in the footer, the social icons lead to your accounts. A search engine has to work all of that out from layout and wording, and it gets it wrong sometimes. It may take a partner’s logo for yours, or pin a namesake’s profile to your name.
Structured data saves it the guessing. You add a small script to the page, one visitors never see, that lists the facts as labeled fields. The labels come from schema.org, a shared vocabulary maintained by Google, Microsoft, Yahoo and Yandex. The format is JSON-LD, which is ordinary JSON with two reserved keys. @context names the vocabulary and @type says what kind of thing you’re describing.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://www.example.org/#organization",
"name": "Riverside Community Center",
"url": "https://www.example.org/",
"logo": "https://www.example.org/logo.png",
"sameAs": ["https://www.linkedin.com/company/riverside-cc"]
}
</script>What each part of the form produces
- Kind of organization
- Becomes
@type. The list holds 7 organization types, 14 kinds ofLocalBusinessand 2 places. Pick a business type or a place and you also get the opening-hours section, and the logo is copied intoimage, which local results expect. Museums and places of worship are written as two types, for example["Museum", "Organization"], so fields such aslegalNamestay valid. - Names
nameis the one people use,legalNamethe registered one,alternateNamean abbreviation or a former name.- Home page URL
- Fills
urland also builds@id, a permanent identifier (your address followed by#organization) that other structured data on your site can point to. - Profiles
- Each line goes into
sameAs. That’s how you tell a search engine that this Facebook page, this LinkedIn page or this Wikipedia article is about you. - Address
- A
PostalAddressobject. It’s only written when there’s a street, a city or a postal code. - Phone
- Stored in international form. With US or CA as the country, ten digits become
+1-503-555-0123. A number you type with+and a country code is kept, with hyphens between the groups. - Hours
- Days with identical times are merged into one
OpeningHoursSpecification. Two time ranges on the same day describe a midday closing. - Tax ID or charity number
- Written as
taxID.
Fields you leave empty stay out of the block.
The review list under the code
A missing name is the only thing that counts as an error. Everything else is a warning or a note.
- URL and logo. Both should be complete
https://addresses. A logo address that doesn’t end in an image extension gets a note. A logo hosted on a social network or a file-sharing service gets a warning, because those links expire or turn crawlers away. - Local business fields. For business and place types, a missing street or city and a missing phone number are warnings. Missing hours only get a note. A day that’s checked but has no times is a warning.
- Formats. A US ZIP code has to be five digits or ZIP+4. The founding date has to be a year or
YYYY-MM-DD. Each profile line has to be a full URL. A phone number that can’t be converted is kept exactly as you typed it.
Once the last warning is gone, the label next to the code reads “Good to paste”.
Where the block goes
Paste the block once, on the home page, anywhere in <head> or <body>. Search engines read JSON-LD in either place.
- Hand-written or static sites: paste it into the home page template before
</head>. - WordPress: look in your SEO plugin first. Yoast SEO, Rank Math and SEOPress already output an Organization block from their settings, and two competing blocks confuse more than they help. Use their fields, or switch their output off and add yours with a header-code plugin or a Custom HTML block.
- Shopify, Squarespace, Wix, Webflow: each has a “custom code” or “code injection” setting for the home page head.
Then test the live page with the two validators linked under the code. The Rich Results Test tells you what Google could parse. The schema.org validator checks the vocabulary itself.
Structured data is something you declare, and the search engine is free to do what it likes with it. It makes a logo in results, a knowledge panel or linked profiles possible, but whether and when they show up isn’t your call. The search engine also compares the block with the visible page. An address or phone number that’s in the code and nowhere else on the site will probably be ignored.
The block doesn’t update itself. When your hours or phone number change, come back, edit the draft and paste the new version over the old one.
Questions people ask
Should I use Organization or LocalBusiness?
Go with a LocalBusiness type when customers come to a physical address during set hours, like a shop, a restaurant, a clinic or an office with a reception desk. Organization is for a company, association or agency that people don’t visit, or that works online.
Where do I put JSON-LD on my website?
Inside a <script type="application/ld+json"> tag in the HTML of the home page. The head is the usual spot, but the body works too. It has to be in the HTML the server sends, or added by a script that search engines can run.
Will this give my site a knowledge panel?
It helps, but it can’t force one. Google builds panels from many sources and mostly for entities it already recognizes. What the markup does is make sure that if a panel or a logo is shown, the name, logo and profiles come from you.
What are the logo requirements for Organization markup?
Google asks for an image of at least 112 × 112 pixels, in a common format such as PNG, JPG, WebP or SVG, at a URL crawlers can fetch. It should look right on a white background. Host it on your own domain.
Is JSON-LD better than microdata?
Search engines understand both. Google recommends JSON-LD because it sits in one block, apart from the visible HTML, so a redesign can’t break it by accident. Microdata spreads its attributes across your tags.
Does a Google Business Profile replace this markup?
No, the two work together. The profile feeds Google Maps and local results. The markup confirms, on your own site, that the business in the profile is the same one. Keep the name, address and phone number identical in both.