Organization is the Schema.org type for the entity that owns the storefront1. On Shopify, Dawn and Horizon print a short Organization block from the header section (name, logo, url, plus sameAs in Dawn)7; filling it out is the merchant's job. Google recommends putting it on the home page2, so it goes in theme.liquid <head> behind a home-page condition, replacing the theme's shorter block. Key properties: name, url, logo, sameAs (an array of URLs to verified profiles — Wikipedia, LinkedIn, Instagram, X, Crunchbase), contactPoint, address, foundingDate, founder.
Organization is the highest-leverage schema for AI engine entity attribution. ChatGPT, Perplexity, Gemini, and Claude all use the sameAs array to confirm that the domain they're citing is the same entity as the LinkedIn / Wikipedia / Crunchbase profile they already know about. Without Organization JSON-LD, AI engines have to infer the entity from prose — which they do, but worse, and with lower confidence in attribution.
§01Definition
What Organization schema is
Per Schema.org v30.0, Organization is 'an organization such as a school, NGO, corporation, club, etc.' Inheritance: Thing > Organization. The type is broad — businesses, charities, government agencies, sports teams, religious organizations are all Organization or one of its subtypes (Corporation, LocalBusiness, OnlineBusiness, NewsMediaOrganization). Google recommends the most specific subtype that fits, and names OnlineStore for an ecommerce site, so that's the right type for a typical Shopify storefront. Use a LocalBusiness subtype instead for a physical retail location.
Mental model: Organization declares "this domain is owned by this entity, here's how to verify it." The verification path is the sameAs array — URLs to profiles whose existence AI engines and search engines can independently confirm. The more authoritative the verification path, the more weight the entity carries in citation decisions.
§02Placement
Placement in theme.liquid
Organization JSON-LD describes the entity, not the page, and Google recommends placing it on the home page or on a single page that describes the organization, such as an about page. On Shopify the simplest place is theme.liquid <head>, wrapped in {% if request.page_type == 'index' %} so it prints on the home page only. Dawn and Horizon already print a short Organization block in sections/header.liquid; delete that block when you add yours, so the home page carries one Organization, not two.
§03Fields
Organization fields
Google's Organization documentation has no required properties; it recommends adding as many relevant properties as you can. The fields most-used on Shopify Organization JSON-LD are: name (Text — usually shop.name), url (URL — shop.url with trailing slash), logo (URL or ImageObject — at least 112x112 px), sameAs (URL array — the brand's profiles on other sites), contactPoint (ContactPoint object), address (PostalAddress), telephone, email, foundingDate (Date), founder (Person), areaServed, knowsAbout (Text/Thing/URL array).
name — recommended (Google lists no required Organization properties). Usually {{ shop.name | json }}, with no quotes around it.
url — recommended. Google says it "helps Google uniquely identify your organization." {{ shop.url }}/ with trailing slash.
logo — recommended. A plain URL is enough. Google's logo rules: at least 112x112 px, a crawlable and indexable URL, a format Google Images supports, and an image that looks right on a pure white background2. Source: {{ shop.brand.logo | image_url: width: 600 | prepend: 'https:' | json }} when populated. image_url returns a protocol-relative // URL, so add https:6. Don't hard-code a width and height: width: 600 fixes the width only, so a wide wordmark comes out 600 px wide and much less tall.
sameAs — recommended (high leverage). Array of URLs. See the dedicated section below.
address — recommended for LocalBusiness sub-types. PostalAddress with streetAddress, addressLocality, addressRegion, postalCode, addressCountry.
foundingDate — optional but high-leverage for AI engine attribution. The date the business was founded (YYYY-MM-DD or YYYY).
founder — optional. Person object with name and url to a /founder/ E-E-A-T page on the site.
§04sameAs
sameAs and entity attribution
The sameAs property is an array of URLs to profiles of the same entity on other sites. Google's Organization documentation describes it as the URL of a page on another website with additional information about your organization, such as a social media or review site profile, and allows several. For Shopify stores in 2026, the highest-leverage sameAs targets are: Wikipedia and Wikidata (if listed), LinkedIn company page, Instagram, X, Facebook, YouTube, Crunchbase, Trustpilot business profile, BBB (US), Companies House (UK), Handelsregister (DE). Order does not matter; presence does.
Why sameAs matters specifically for AI shopping: ChatGPT, Perplexity, Claude, and Gemini all maintain entity graphs that include the entity's known profile URLs. When the AI engine fetches a Shopify storefront and finds Organization JSON-LD with sameAs pointing to the LinkedIn page it already knows, the engine confirms "this domain is that brand." Without sameAs, the engine has to guess — and guesses less often resolve to confident citation.
§05Example
JSON-LD example — Organization in theme.liquid
The block below is the full Organization JSON-LD for theme.liquid <head>, typed as OnlineStore and printed on the home page only. Hard-code the sameAs URLs to the brand's real profiles; use Liquid for fields Shopify exposes (shop.name, shop.url, shop.brand.logo, shop.address). The logo is printed only when Settings > Brand has one.
JSON-LDOrganization (OnlineStore) in theme.liquid, printed on the home page
| json prints the value with its quotes and escapes any quotes inside it5, so a store name like 12" Records can't break the block.
§06Validation
Validation
Google says to validate Organization markup with the Rich Results Test and fix any critical errors. Run it against the home page: expect the Organization item to be detected with zero errors. Recommended properties you haven't added are not errors. Knowledge panels are a separate matter: Google generates them automatically from sources across the web, and the Rich Results Test doesn't decide them. An entity that already has a panel can get verified with Google and suggest changes.
A subtle Shopify gotcha: shop.brand.logo returns null on stores that haven't populated Settings > Brand, and the | image_url filter has nothing to work with. The example wraps the logo in {% if shop.brand.logo %}; the alternative is a hard-coded URL to a stable logo asset uploaded to the store's Files section. Either way, check the image is at least 112x112 px2.
§07Gotchas
Shopify gotchas on Organization
Four gotchas. First: putting Organization in main-product.liquid instead of theme.liquid — it then prints on every product page and never on the home page, which is where Google recommends it. Second: leaving empty strings or placeholder URLs in sameAs. Dawn's header block prints an empty string for every social link the merchant hasn't set; list only real profile URLs, or drop sameAs. Third: printing shop.name and shop.address fields inside quote marks instead of through | json, which breaks the JSON when a value contains a double quote or line break (| escape is an HTML filter and doesn't prevent it). Fourth: emitting Organization on a Shopify development store with a myshopify.com URL instead of the production domain — fix the shop.url filter or move the schema to a conditional that only fires on the production host.
A fifth gotcha: if your store is a physical retail business with foot traffic, use "@type": "LocalBusiness" (or a more specific subtype such as Store) instead of "OnlineStore". LocalBusiness inherits all Organization fields and adds openingHoursSpecification, geo (latitude/longitude), priceRange — the right type for a brick-and-mortar Shopify-powered retailer.