XooCode(){

NGO

NGO is an Organization subtype for non-governmental organizations: charities, foundations, advocacy groups, humanitarian organizations. It defines no properties of its own but provides important classification. Google uses the type to categorize entities as non-profit in the knowledge panel.

The type hierarchy is Thing → Organization → NGO. All Organization properties apply. The most relevant for non-profits are nonprofitStatus, funder, areaServed, foundingDate, and mission (via description).

Full example of schema.org/NGO json-ld markup

The markup is verified as valid with Rich Results Test from Google.

Highlight legend:Required by GoogleRecommendedOptional
schema.org/NGO
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@id": "https://childrenfirstfoundation.dk#ngo",
  "@type": "NGO",
  "name": "Children First Foundation",
  "alternateName": "CFF",
  "description": "Non-profit foundation funding pediatric research across Scandinavia. Established in 1986 in memory of Jane Xoo, who redefined post-war children's medicine with her 1945 clinical framework.",
  "url": "https://childrenfirstfoundation.dk",
  "logo": "https://childrenfirstfoundation.dk/images/logo.png",
  "foundingDate": "1986",
  "nonprofitStatus": "https://schema.org/Nonprofit501c3",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Vesterbrogade 84",
    "addressLocality": "Copenhagen",
    "addressCountry": "DK"
  },
  "areaServed": [
    { "@type": "Country", "name": "Denmark" },
    { "@type": "Country", "name": "Sweden" },
    { "@type": "Country", "name": "Norway" }
  ],
  "funder": {
    "@type": "Organization",
    "@id": "https://roydanmedjournal.dk#publication",
    "name": "Royal Danish Medical Journal"
  },
  "founder": {
    "@type": "Person",
    "name": "Anders Andersson",
    "description": "Jane Xoo's husband, who established the foundation in her memory"
  },
  "sameAs": [
    "https://en.wikipedia.org/wiki/Children_First_Foundation",
    "https://www.linkedin.com/company/children-first-foundation"
  ]
}
</script>

nonprofitStatus

nonprofitStatus (inherited from Organization) takes a NonprofitType enum value indicating the legal classification. The enum is country-specific: USNonprofitType has 36 values corresponding to IRS tax codes (the most common being Nonprofit501c3 for charitable organizations). Other country enums: UKNonprofitType, DENonprofitType, NLNonprofitType, ITNonprofitType. Use the full schema.org URL for the value.

funder

funder (inherited from Organization) identifies who funds the NGO. It takes a Person or Organization object. For foundations with a single major funder, this is straightforward. For organizations with multiple funding sources, list them as an array. Google reads this for the knowledge panel's "Funded by" section.

NGO vs FundingScheme

NGO is the organization. FundingScheme is the grant program the organization operates. A foundation (NGO) might run multiple grant programs (FundingSchemes). Each FundingScheme can reference the NGO as its funder. They are different entities even if one administers the other.

Minimal valid version

The smallest markup that still produces a valid NGO entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.

schema.org/NGO (minimal)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "NGO",
  "name": "Children First Foundation",
  "url": "https://childrenfirstfoundation.dk"
}
</script>

Google rich results this unlocks

Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.

Common NGO mistakes

Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.

  1. 01

    Using Organization for a non-profit

    Wrong
    "@type": "Organization" for a charitable foundation
    Right
    "@type": "NGO"

    NGO signals to Google that the entity is a non-profit. This affects knowledge panel formatting and how Google categorizes the entity. Generic Organization does not communicate the non-profit status.

  2. 02

    nonprofitStatus as a plain description

    Wrong
    "nonprofitStatus": "501(c)(3) charitable organization"
    Right
    "nonprofitStatus": "https://schema.org/Nonprofit501c3"

    nonprofitStatus expects a NonprofitType enum value as a full schema.org URL. The enum is country-specific: USNonprofitType has 36 values for IRS codes, with Nonprofit501c3 being the most common for charities. Plain text descriptions are not machine-parseable.

  3. 03

    Missing areaServed for internationally active NGOs

    Wrong
    NGO operating in three countries but only listing a headquarters address
    Right
    "areaServed": [{ "@type": "Country", "name": "Denmark" }, { "@type": "Country", "name": "Sweden" }]

    areaServed defines where the NGO operates, not where it is headquartered. An NGO with offices in one country but programs in three should list all three in areaServed. Google uses this for geographic relevance in search.

  4. 04

    Confusing NGO with FundingScheme

    Wrong
    "@type": "NGO" for a specific grant program
    Right
    "@type": "FundingScheme" for grant programs; NGO for the organization that runs them

    NGO is the organization. FundingScheme is a specific grant program or funding initiative. A foundation (NGO) can operate multiple grant programs (FundingSchemes). Use the correct type for each entity.

About the example data

The Children First Foundation is a fictional non-profit established in 1986 in Jane Xoo's name, one year after her death, to fund pediatric research. The name comes from her 1948 textbook. The foundation operates the Xoo Pediatric Research Grant.

Comments

Loading comments...

Leave a comment