modern seo
Organization sameAs
MetricSpot counts the `sameAs` URLs in your Organization JSON-LD. Each link merges your brand entity in Google's Knowledge Graph and AI agent indexes.
What this check does
Parses Organization (or LocalBusiness, Corporation) JSON-LD on the page and counts the entries in its sameAs array. sameAs is a list of canonical URLs that refer to the same real-world entity — your LinkedIn company page, your X / Twitter profile, your Wikipedia page, your Crunchbase profile, your YouTube channel. The check expects at least three entries and ideally five-plus.
Why it matters
Google’s Knowledge Graph is an entity database, not a page database. When it sees sameAs: ["https://www.linkedin.com/company/acme", "https://x.com/acme", "https://en.wikipedia.org/wiki/Acme"], it merges all of those profiles + your site into a single entity node — which is what powers Knowledge Panels, brand carousels, and “Acme” autocompletes. Without sameAs, your brand is fragmented: Google sees a website, LinkedIn sees a company page, X sees a handle, and nothing connects them.
AI agents use the same scaffolding for citation provenance. When Perplexity or ChatGPT cite a source, they prefer entities they can resolve — a site whose Organization schema reconciles cleanly with LinkedIn, Wikipedia, and Crunchbase gets cited as a known brand. A site with no sameAs is treated as anonymous.
How to fix it
Add an Organization JSON-LD block to your home page (and ideally every page, via a shared layout) with a populated sameAs array. Each URL must be the canonical profile, not a shortened or tracking-laden link.
Minimal Organization with sameAs:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Acme Corp",
"url": "https://acme.example",
"logo": "https://acme.example/logo.png",
"sameAs": [
"https://www.linkedin.com/company/acme-corp",
"https://x.com/acmecorp",
"https://www.youtube.com/@acmecorp",
"https://github.com/acme",
"https://www.crunchbase.com/organization/acme"
]
}
</script>
Fuller version with founder, contact point, and additional sameAs targets:
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Acme Corp",
"alternateName": "Acme",
"url": "https://acme.example",
"logo": "https://acme.example/logo.png",
"description": "Acme builds developer tools for distributed systems.",
"foundingDate": "2019-04-01",
"founder": {
"@type": "Person",
"name": "Jane Doe",
"url": "https://acme.example/about/jane"
},
"contactPoint": {
"@type": "ContactPoint",
"email": "hello@acme.example",
"contactType": "customer support"
},
"sameAs": [
"https://www.linkedin.com/company/acme-corp",
"https://x.com/acmecorp",
"https://www.facebook.com/acmecorp",
"https://www.youtube.com/@acmecorp",
"https://github.com/acme",
"https://www.crunchbase.com/organization/acme",
"https://en.wikipedia.org/wiki/Acme_Corp"
]
}
Which profiles to include. Prioritize, in rough order: Wikipedia (single biggest entity signal), LinkedIn company page, X / Twitter, YouTube, Crunchbase, GitHub (for dev-tools brands), Bloomberg / Reuters profile, Wikidata entry. Skip dead profiles — an empty Facebook page hurts more than the link helps.
Next.js — inject in the root layout:
import Script from "next/script";
export default function RootLayout({ children }) {
const org = {
"@context": "https://schema.org",
"@type": "Organization",
name: "Acme Corp",
url: "https://acme.example",
logo: "https://acme.example/logo.png",
sameAs: [
"https://www.linkedin.com/company/acme-corp",
"https://x.com/acmecorp",
"https://github.com/acme"
]
};
return (
<html>
<head>
<Script id="ld-org" type="application/ld+json">
{JSON.stringify(org)}
</Script>
</head>
<body>{children}</body>
</html>
);
}
Astro — emit from BaseLayout.astro:
---
const org = { "@context": "https://schema.org", "@type": "Organization", /* … */ };
---
<script type="application/ld+json" set:html={JSON.stringify(org)} />
WordPress — Yoast SEO → Settings → Site representation → “Organization”, then fill the social-profile fields under General → Site info. Yoast emits the full Organization schema with sameAs automatically. Rank Math has the same flow under Titles & Meta → Local SEO.
After shipping, validate with Schema Markup Validator and confirm Google has picked it up in Search Console’s Enhancements → Sitelinks searchbox / Logos report. See also: organization schema, trust pages.
Frequently asked questions
Does the order of sameAs URLs matter?
No. It’s a set, not an ordered list. Google and AI agents treat the array as unordered — what matters is that each URL resolves to a canonical profile that confirms the entity.
Should I include personal social profiles for the founder?
Not in the Organization’s sameAs. Put founder profiles in a separate Person schema (or on the about page) and link Organization → founder → Person. Mixing personal LinkedIn into an Organization sameAs confuses entity resolution.
What if my brand doesn’t have a Wikipedia page yet?
Skip it — including a non-existent or low-quality Wikipedia URL is worse than omitting it. The Wikipedia signal is huge when you qualify (notable, sourced), but you can’t game it; focus on the profiles you do control. Once you cross the notability threshold, a Wikipedia page tends to appear organically and you can add it then.
Sources
Last updated 2026-05-11