The five levels
| Level | Name | Meaning |
|---|---|---|
| 0 | Seeded | Imported from an open public source (Wikidata) for a profile nobody has claimed. Treat as unconfirmed. |
| 1 | Self-declared | Entered or imported by the person (including names from a Google or LinkedIn sign-in). Not independently checked. |
| 2 | Account-verified | Proven by the person: signing in to the account, a code sent to a work email, a DNS record, or a link back. |
| 3 | Document-verified | A reviewed document or a credential confirmed with its issuer. |
| 4 | ID-verified | An identity document check. |
Levels 2 and above count as verified. A page shows each fact's label next to it ("Verified by work email", "Self-declared") and never calls a lower level verified.
The methods
Account sign-in (OAuth and OpenID Connect)
The person signs in to the account through the platform's own authorization flow: LinkedIn and Google at sign-in, and connected accounts such as X, GitHub, ORCID and YouTube. The platform confirms which account the person controls; SelfBadge records the account and drops the access token once the check is done, so it cannot act on the person's behalf later. A name taken from a sign-in is shown as coming from that sign-in, not as verified, because platforms do not check names.
Work email code
To verify an employer, a six-digit code is sent to an address at the employer's domain, valid for 15 minutes with limited attempts. Free and personal email providers are refused, and the domain must belong to the employer on the profile. Only the domain is kept, not the address.
DNS record
To verify a website the person owns, they add a TXT record with a token generated for them and that host:
selfbadge-verification=<token shown in the editor>Link back
A page proves it belongs to the person when it links to their SelfBadge address. On the person's own website the link must carry rel="me"; on a platform profile or a page about the person (a team page, a speaker page) a plain link is enough, since only the person or the page's editor can put it there. Platforms that hide profiles behind a login are verified by sign-in instead, and pages anyone can edit (such as Wikidata) cannot verify by link.
<a href="https://selfbadge.com/<handle>" rel="me">My SelfBadge</a>Documents and identity (levels 3 and 4)
Level 3 is for a reviewed document or a credential confirmed with its issuer; level 4 for an identity document check. These are planned with the paid plans; until then, no profile shows levels 3 or 4.
Expiry and re-checks
Website and work-email verifications are checked again every six months. A website is re-checked the same way it was verified; a work email cannot be re-checked without the person, so the fact drops to self-declared and the person is asked to verify again. A check that no longer passes moves the fact back to self-declared.
Where the level is published
The level is shown next to each fact on the page and published in the profile's .json version, with the method, the dates and the source. It is not in the JSON-LD: schema.org has no clean property for the verification status of a single statement, and the JSON-LD stays plain schema.org.
{
"property": "worksFor",
"value": { "name": "Brightfield Analytics", "roleName": "Head of Product" },
"verification": {
"level": 2,
"name": "account-verified",
"label": "Verified by work email",
"method": "email_code",
"verifiedAt": "2026-09-14T08:20:11Z",
"expiresAt": "2027-03-14T08:20:11Z"
},
"source": { "type": "owner", "label": null, "url": null, "retrievedAt": null }
}What verification does not mean
- It does not mean SelfBadge vouches for the person's character or the quality of their work; it means the stated fact was proven by the stated method.
- A self-declared fact is not false; it is unchecked. Consumers should weigh it accordingly.
- Paying never changes a verification level.
Specifications and sources
Related reference
- Reading a SelfBadge profile: for bots and agents: JSON-LD, .json, .md, llms.txt, the API and the MCP server.
- sameAs: how sameAs links one person across sites, best practices and common mistakes.
- Person identifiers compared: Wikidata QID, ORCID iD, ISNI, VIAF, Library of Congress, Crunchbase and others.
- Entity resolution: how knowledge graphs merge records about the same person.
- All reference pages