squirrelscan
GitHub

Your organization is not connected to anything that corroborates it

sameAs is how a search engine learns the company on your site is the company on LinkedIn and Wikidata. Without it the entity stands alone.

What sameAs buys

sameAs is a set of claims of the form “this is also me”. It links the organization declared on your site to its LinkedIn page, its Crunchbase entry, its Wikipedia article, its X account and its Companies House record.

Those links are how a search engine corroborates that you are a real organization and what kind. The evidence a knowledge panel is assembled from largely comes from outside your site, and sameAs is what tells a search engine where to look.

It costs one array. It is the highest-value line in most organization blocks and the one most often missing.

What squirrel checks

The rule runs once per crawl, reads the entity map rather than the pages, and emits a single check named entity-sameas-missing.

  • Skipped with the message No entity map was built for this audit and the reason entity-map-unavailable when the run produced no map. This is not the same as a site with no structured data, and the rule refuses to conflate them: passing here would assert it had checked something it never looked at.
  • Reports at info with the message This site declares no JSON-LD entities on any crawled page when the map exists and is empty.
  • Skipped with the message This site declares no organization entity and the reason no-organization, which is schema/entity-organization-missing’s finding rather than this one’s.
  • Passes with the message NAME links to N profiles with sameAs.
  • Reports at info with the message NAME has no sameAs profiles, with the number of pages declaring it in the value.

The primary organization is the most-declared Organization, Corporation or LocalBusiness on the site, with ties broken on identity so the same one is chosen on every run. A site with two competing organizations is schema/entity-split-identity’s finding.

Findings are capped at 10 items, and the count in the message is always the true total rather than the capped length. Run squirrel entities -f json and read the entities key for the full list.

How to fix it

Add every profile you control, using the canonical URL of each rather than a redirect or a shortened link:

{
  "@type": "Organization",
  "@id": "https://example.com/#organization",
  "name": "Example Ltd",
  "sameAs": [
    "https://www.linkedin.com/company/example",
    "https://x.com/example",
    "https://www.crunchbase.com/organization/example",
    "https://www.wikidata.org/wiki/Q000000",
    "https://github.com/example"
  ]
}

List profiles that are genuinely about this organization. sameAs asserts identity rather than ownership, so a Wikipedia article or a Wikidata entity you do not control is exactly the kind of corroboration it is for. What it must not name is a different organization. See fixing structured data identity.

Rule IDschema/entity-sameas-missing
CategoryStructured Data
ScopeSite-wide
Severityinfo
Weight2/10

Enable / disable

Disable this rule

[rules]
disable = ["schema/entity-sameas-missing"]

Disable all Structured Data rules

[rules]
disable = ["schema/*"]

Enable only this rule

[rules]
enable = ["schema/entity-sameas-missing"]

enable replaces the default ["*"], so this is the only rule selected. Leave disable out: a rule that matches any disable pattern is skipped even when enable names it. Only an enabled setting under a rule’s own [rule_options] table overrides both lists.

Entity findings are site-wide and ship in every audit, next to the per-page structured data rules. See Fix SEO issues with AI for how an agent works through a report.

References

Check your site

Run squirrel audit https://example.com, then squirrel entities to see the graph the finding came from. Signed-out local audits need no account and cost nothing. Signed-in audits spend credits.

Type to search…

↑↓ navigate↵ openesc close