[The Census](https://readinessindex.io/census) · [2026-Q4](https://readinessindex.io/census/2026-Q4) · [nonprofits](https://readinessindex.io/census/2026-Q4/nonprofits)

**AI crawlers cannot reach this site.** AIR-1.2 failed, so an assistant asking about this organization gets nothing from here whatever the page contains. The score beside it says how well the site is built; this says none of it is currently reachable. Both are true, and neither replaces the other — which is why the score is no longer capped to say it.

[https://www.nptrust.org/](https://www.nptrust.org/) · ranked 4 in its cohort · 32 pages read · 51 tests · 19 September 2026

Scan

# National Philanthropic Trust

Score

47/100

13 of 51 tests pass · 53 points still on the table

You · 47

NOT READY

0–39

WEAK

40–59

ADEQUATE

60–74

STRONG

75–89

EXEMPLARY

90–99

We ran all 51 scored tests across 7 dimensions, against the 32 pages we read.

Weak

AI crawlers are turned away before they reach the content, so nothing else on this page has had a chance to matter.

Do these three first

## The fastest 12 points on this scan

1

+5

AIR-1.2 · medium effort

CDN and WAF do not silently reject AI crawlers

8 of 8 AI user-agents are rejected or challenged at the edge.

**Do this:** Stop rejecting AI crawlers at the CDN or WAF.

2

+4

AIR-3.3 · large effort

Vertical-specific schema types

0 of 4 expected nonprofit types are present: none. Missing: NGO, DonateAction, Grant, FundingScheme.

**Do this:** Model the site's nonprofit content with the right types.

3

+3

AIR-1.4 · small effort

Content Signals declared in robots.txt

No Content-Signal line in robots.txt. Missing: search, ai-input, ai-train.

**Do this:** Declare a Content Signals position in robots.txt.

Nine dimensions, most to least left on the table

[Primary Indicators 20 left     10](https://readinessindex.io/tests#d-1)

[Authorship, Provenance, Freshness 9 left     3](https://readinessindex.io/tests#d-5)

[Structured Data and the Entity Graph 8 left     7](https://readinessindex.io/tests#d-3)

[Alternate Representations 8 left     0](https://readinessindex.io/tests#d-7)

[Rendering and Extraction 6 left     9](https://readinessindex.io/tests#d-2)

[Crawl, Index and Licensing Hygiene 6 left     6](https://readinessindex.io/tests#d-4)

[Agent Interfaces 5 left     3](https://readinessindex.io/tests#d-6)

32 pages crawled

- [www.nptrust.org](https://www.nptrust.org/)
- [www.nptrust.org/advisors-and-institutions/for-advisors](https://www.nptrust.org/advisors-and-institutions/for-advisors)
- [www.nptrust.org/advisors-and-institutions/for-financial-institutions](https://www.nptrust.org/advisors-and-institutions/for-financial-institutions)
- [www.nptrust.org/for-nonprofits](https://www.nptrust.org/for-nonprofits)
- [www.nptrust.org/what-is-a-donor-advised-fund](https://www.nptrust.org/what-is-a-donor-advised-fund)
- [www.nptrust.org/donor-advised-funds](https://www.nptrust.org/donor-advised-funds)
- [www.nptrust.org/what-is-a-donor-advised-fund/benefits](https://www.nptrust.org/what-is-a-donor-advised-fund/benefits)
- [www.nptrust.org/what-is-a-donor-advised-fund/daf-tax-consideration](https://www.nptrust.org/what-is-a-donor-advised-fund/daf-tax-consideration)
- [www.nptrust.org/donor-advised-funds/daf-vs-foundation](https://www.nptrust.org/donor-advised-funds/daf-vs-foundation)
- [www.nptrust.org/donor-advised-funds/open-daf-account](https://www.nptrust.org/donor-advised-funds/open-daf-account)
- [www.nptrust.org/philanthropic-consulting](https://www.nptrust.org/philanthropic-consulting)
- [www.nptrust.org/premier-donor-services](https://www.nptrust.org/premier-donor-services)
- [www.nptrust.org/philanthropic-resources/supporting-disaster-relief](https://www.nptrust.org/philanthropic-resources/supporting-disaster-relief)
- [www.nptrust.org/other-giving-vehicles](https://www.nptrust.org/other-giving-vehicles)
- [www.nptrust.org/impact-investing-with-a-daf](https://www.nptrust.org/impact-investing-with-a-daf)
- [www.nptrust.org/daf-insights](https://www.nptrust.org/daf-insights)
- [www.nptrust.org/annual-reports/daf-spotlight-economic-uncertainty](https://www.nptrust.org/annual-reports/daf-spotlight-economic-uncertainty)
- [www.nptrust.org/annual-reports/daf-spotlight-complex-assets](https://www.nptrust.org/annual-reports/daf-spotlight-complex-assets)
- [www.nptrust.org/reports/daf-spotlight-daf-grant-payout-rates](https://www.nptrust.org/reports/daf-spotlight-daf-grant-payout-rates)
- [www.nptrust.org/reports/daf-report](https://www.nptrust.org/reports/daf-report)
- [www.nptrust.org/annual-reports/npt-annual-report](https://www.nptrust.org/annual-reports/npt-annual-report)
- [www.nptrust.org/philanthropic-resources/philanthropist](https://www.nptrust.org/philanthropic-resources/philanthropist)
- [www.nptrust.org/can-i-use-my-daf-for-that](https://www.nptrust.org/can-i-use-my-daf-for-that)
- [www.nptrust.org/philanthropic-resources/charitable-giving-statistics](https://www.nptrust.org/philanthropic-resources/charitable-giving-statistics)
- [www.nptrust.org/what-is-a-philanthropist](https://www.nptrust.org/what-is-a-philanthropist)
- [www.nptrust.org/grants-in-action](https://www.nptrust.org/grants-in-action)
- [www.nptrust.org/donor-stories](https://www.nptrust.org/donor-stories)
- [www.nptrust.org/donor-advised-funds/international-grantmaking](https://www.nptrust.org/donor-advised-funds/international-grantmaking)
- [www.nptrust.org/about-us](https://www.nptrust.org/about-us)
- [www.nptrust.org/about-us/leadership](https://www.nptrust.org/about-us/leadership)
- [www.nptrust.org/events](https://www.nptrust.org/events)
- [www.nptrust.org/contact-us/work-at-npt](https://www.nptrust.org/contact-us/work-at-npt)

Every test · all 67 tests, in order

67 of 67 showing

Show

AIR-1.1

Can AI crawlers reach your site?

PASS

5 pt

Why we test this

All 10 AI agents may fetch content paths.

Your robots.txt file tells crawlers what they may read. A line left behind by a previous site or a copied template can quietly shut out the assistants people now use to find you.

AIR-1.2

Does your CDN let AI crawlers through?

8 of 8 AI user-agents are rejected or challenged at the edge.

PROBLEM

+5

What's wrong

8 of 8 AI user-agents are rejected or challenged at the edge.

Even when robots.txt says yes, a firewall or bot-protection rule can turn assistants away before they reach your pages. We sent a request as each one and recorded what came back.

[See AIR-1.2 in the full index →](https://readinessindex.io/tests#c-AIR-1.2)

AIR-1.3

Is your page readable without a security challenge?

32 of 32 sampled pages return an interactive challenge (Google reCAPTCHA).

PROBLEM

+1

What's wrong

32 of 32 sampled pages return an interactive challenge (Google reCAPTCHA).

A CAPTCHA or bot check on an ordinary page stops an assistant at the door. These belong on forms and logins, not on pages anyone can read.

[See AIR-1.3 in the full index →](https://readinessindex.io/tests#c-AIR-1.3)

AIR-1.4

Have you stated what AI may do with your content?

No Content-Signal line in robots.txt. Missing: search, ai-input, ai-train.

PROBLEM

+3

What's wrong

No Content-Signal line in robots.txt. Missing: search, ai-input, ai-train.

There is now a machine-readable way to say whether AI may search, quote or train on your material. Having a position — any position — is the point.

[See AIR-1.4 in the full index →](https://readinessindex.io/tests#c-AIR-1.4)

AIR-1.5

Can a person read your AI policy?

robots.txt carries a 89-character comment, too thin to read as a policy statement.

NEEDS WORK

+0

What's half-done

robots.txt carries a 89-character comment, too thin to read as a policy statement.

A few plain sentences in robots.txt saying what you permit. Journalists and lawyers read this file, and right now most sites say nothing.

[See AIR-1.5 in the full index →](https://readinessindex.io/tests#c-AIR-1.5)

AIR-1.6

Are you allowing assistants to quote you?

PASS

1 pt

Why we test this

No noarchive, nosnippet or max-snippet:0 directives found.

Some sites carry old settings that tell search engines not to show excerpts. Those same settings stop an assistant quoting your page in an answer.

AIR-1.7

Does this page declare its real address?

3% of sampled pages emit a valid, self-consistent canonical. 31 have problems.

PROBLEM

+1

What's wrong

3% of sampled pages emit a valid, self-consistent canonical. 31 have problems.

A canonical link tells a machine which URL is the true one. Without it the same content can be treated as several competing pages.

[See AIR-1.7 in the full index →](https://readinessindex.io/tests#c-AIR-1.7)

AIR-1.8

Is your page structured so a machine can follow it?

0% of sampled pages carry one main element, a wrapping article or section, and a nav. 13 exceed 12 divs per semantic element.

PROBLEM

+2

What's wrong

0% of sampled pages carry one main element, a wrapping article or section, and a nav. 13 exceed 12 divs per semantic element.

Meaningful sections rather than an undifferentiated wall of containers. It is the difference between a document and a soup of boxes.

[See AIR-1.8 in the full index →](https://readinessindex.io/tests#c-AIR-1.8)

AIR-1.9

Do your headings tell a clear story?

66% of sampled pages have exactly one non-empty h1 and no skipped heading levels. 7 have several; 5 skip a level.

NEEDS WORK

+1

What's half-done

66% of sampled pages have exactly one non-empty h1 and no skipped heading levels. 7 have several; 5 skip a level.

One main heading, then sub-headings in order. Assistants use headings to work out what a page is about and which part answers a question.

[See AIR-1.9 in the full index →](https://readinessindex.io/tests#c-AIR-1.9)

AIR-1.10

Do you publish a guide for AI assistants?

/llms.txt returns HTTP 404.

PROBLEM

+2

What's wrong

/llms.txt returns HTTP 404.

A file at /llms.txt listing your most important pages. It is early and cheap, and it forces a useful conversation about what actually matters on your site.

[See AIR-1.10 in the full index →](https://readinessindex.io/tests#c-AIR-1.10)

AIR-1.11

Can a machine tell what your organization is?

63 of 100 entity nodes carry an @id (63%). The WebPage to WebSite to Organization chain resolves.

NEEDS WORK

+1

What's half-done

63 of 100 entity nodes carry an @id (63%). The WebPage to WebSite to Organization chain resolves.

Structured data that links together — your organization, your site, this page — rather than a scattering of disconnected labels.

[See AIR-1.11 in the full index →](https://readinessindex.io/tests#c-AIR-1.11)

AIR-1.12

Can a machine be certain it is you?

6 sameAs links: 0 tier-1 authority identifiers, 2 tier-2, 4 social.

NEEDS WORK

+1

What's half-done

6 sameAs links: 0 tier-1 authority identifiers, 2 tier-2, 4 social.

Links from your markup to authoritative records like Wikidata or ROR. Without one, an assistant is guessing which organization of your name it has found.

[See AIR-1.12 in the full index →](https://readinessindex.io/tests#c-AIR-1.12)

AIR-1.13

Can a machine find out who you are?

0 of 7 organizational facts are present in the Organization markup: none.

PROBLEM

+2

What's wrong

0 of 7 organizational facts are present in the Organization markup: none.

Founding date, leadership, address, contact details, legal identifiers. Thin About pages are the most common weakness we see.

[See AIR-1.13 in the full index →](https://readinessindex.io/tests#c-AIR-1.13)

AIR-2.1

Primary content is present without JavaScript

PASS

5 pt

Why we test this

Raw HTML contains 94% of rendered text on average across 32 URLs. The worst template is /grants-in-action: 9% across 1 pages.

AIR-2.2

Progressive disclosure content ships in the initial HTML

PASS

3 pt

Why we test this

11 of 11 pages ship every disclosure panel populated in the raw HTML.

AIR-2.3

Real data tables with header cells

8 tables: 0 complete, 8 without scope on header cells, 0 with no header cells, 0 used for layout.

NEEDS WORK

+1

What's half-done

8 tables: 0 complete, 8 without scope on header cells, 0 with no header cells, 0 used for layout.

[See AIR-2.3 in the full index →](https://readinessindex.io/tests#c-AIR-2.3)

AIR-2.4

Stable, human-readable anchor IDs on section headings

0 of 690 subheadings carry a slug-like id (0%); 0 have generated or unstable ids.

PROBLEM

+2

What's wrong

0 of 690 subheadings carry a slug-like id (0%); 0 have generated or unstable ids.

[See AIR-2.4 in the full index →](https://readinessindex.io/tests#c-AIR-2.4)

AIR-2.5

Alt text on content images, empty alt on decorative

139 of 649 images carry appropriate alt text: 22 have no alt attribute, 9 use the filename.

PROBLEM

+1

What's wrong

139 of 649 images carry appropriate alt text: 22 have no alt attribute, 9 use the filename.

[See AIR-2.5 in the full index →](https://readinessindex.io/tests#c-AIR-2.5)

AIR-2.6

Key facts exist as HTML text, not only in images or PDFs

8 of 32 sampled pages are thin relative to their images or lead with a document download.

NEEDS WORK

+0

What's half-done

8 of 32 sampled pages are thin relative to their images or lead with a document download.

[See AIR-2.6 in the full index →](https://readinessindex.io/tests#c-AIR-2.6)

AIR-3.1

JSON-LD is generated from mapped fields, not hardcoded

4 of 5 templates repeat identical schema literals across pages whose visible content differs.

NEEDS WORK

+1

What's half-done

4 of 5 templates repeat identical schema literals across pages whose visible content differs.

[See AIR-3.1 in the full index →](https://readinessindex.io/tests#c-AIR-3.1)

AIR-3.2

BreadcrumbList on every page below the homepage

PASS

2 pt

Why we test this

100% of pages below the homepage carry a BreadcrumbList with at least two steps.

AIR-3.3

Vertical-specific schema types

0 of 4 expected nonprofit types are present: none. Missing: NGO, DonateAction, Grant, FundingScheme.

PROBLEM

+4

What's wrong

0 of 4 expected nonprofit types are present: none. Missing: NGO, DonateAction, Grant, FundingScheme.

[See AIR-3.3 in the full index →](https://readinessindex.io/tests#c-AIR-3.3)

AIR-3.4

FAQPage and QAPage on genuine question-and-answer content

0 pages carry FAQ or QA markup; 13 pages show visible question-and-answer content.

PROBLEM

+2

What's wrong

0 pages carry FAQ or QA markup; 13 pages show visible question-and-answer content.

[See AIR-3.4 in the full index →](https://readinessindex.io/tests#c-AIR-3.4)

AIR-3.5

isAccessibleForFree, about, and mentions with entity references

0 of 30 substantive pages declare isAccessibleForFree; 1 reference subject entities by identifier.

NEEDS WORK

+0

What's half-done

0 of 30 substantive pages declare isAccessibleForFree; 1 reference subject entities by identifier.

[See AIR-3.5 in the full index →](https://readinessindex.io/tests#c-AIR-3.5)

AIR-3.6

Product, Offer, and Service with real prices

NOT SCORED

—

AIR-3.7

SearchAction on the WebSite node

PASS

1 pt

Why we test this

The SearchAction template returns 242 characters of results for a test term.

AIR-3.8

Schema validation of the structured data on the page

PASS

2 pt

Why we test this

397 nodes across 32 pages parse, carry what their types require, and hold well-formed values.

AIR-4.1

RSL licensing document published and referenced

NOT SCORED

—

AIR-4.2

RSL terms propagated to feeds and schema

NOT SCORED

—

AIR-4.3

Web Bot Auth verification configured

NOT SCORED

—

AIR-4.4

Correct X-Robots-Tag on non-HTML resources

0 of 25 non-HTML resources carry an X-Robots-Tag.

PROBLEM

+1

What's wrong

0 of 25 non-HTML resources carry an X-Robots-Tag.

[See AIR-4.4 in the full index →](https://readinessindex.io/tests#c-AIR-4.4)

AIR-4.5

Missing pages return 404 or 410

0 of 10 deliberately invalid URLs returned HTTP 200; 1 sampled pages are thin enough to be not-found templates.

NEEDS WORK

+0

What's half-done

0 of 10 deliberately invalid URLs returned HTTP 200; 1 sampled pages are thin enough to be not-found templates.

[See AIR-4.5 in the full index →](https://readinessindex.io/tests#c-AIR-4.5)

AIR-4.6

Redirects resolve in a single hop

PASS

1 pt

Why we test this

31 of 32 sampled URLs redirect.

AIR-4.7

Faceted, calendar, and parameterized URLs are controlled

PASS

2 pt

Why we test this

No parameterized URLs appeared in the crawlable sample.

AIR-4.8

Sitemap lastmod reflects real content changes

PASS

2 pt

Why we test this

562 of 610 sitemap URLs carry a lastmod across 160 distinct dates; 10% share 2024-07-10.

AIR-4.9

Sitemap index split by type, with media sitemaps

PASS

1 pt

Why we test this

An index with 6 child sitemaps covering 610 URLs, including media.

AIR-4.10

Paginated series are coherently signaled

NOT SCORED

—

AIR-5.1

Author entity pages with credentials

0 of 1 Person entities carry a canonical @id plus at least two of jobTitle, affiliation, knowsAbout or sameAs.

NEEDS WORK

+1

What's half-done

0 of 1 Person entities carry a canonical @id plus at least two of jobTitle, affiliation, knowsAbout or sameAs.

[See AIR-5.1 in the full index →](https://readinessindex.io/tests#c-AIR-5.1)

AIR-5.2

Bylines linked to author entities

1 of 29 substantive pages reference an author by @id; 0 carry a bare string; 28 are unsigned.

PROBLEM

+1

What's wrong

1 of 29 substantive pages reference an author by @id; 0 carry a bare string; 28 are unsigned.

[See AIR-5.2 in the full index →](https://readinessindex.io/tests#c-AIR-5.2)

AIR-5.3

reviewedBy on YMYL content

NOT SCORED

—

AIR-5.4

datePublished and dateModified are accurate

PASS

2 pt

Why we test this

32 of 32 pages carry a publication or modification date across 22 distinct dateModified values.

AIR-5.5

citation markup on primary-source references

NOT SCORED

—

AIR-5.6

C2PA Content Credentials on original assets

NOT SCORED

—

AIR-6.1

OpenAPI specification for public APIs

NOT SCORED

—

AIR-6.2

/.well-known/ discovery entries for agent capabilities

NOT SCORED

—

AIR-6.3

Form fields carry label, name, and autocomplete

128 of 295 form fields carry an accessible name, a meaningful name attribute and a valid autocomplete token where one applies.

NEEDS WORK

+1

What's half-done

128 of 295 form fields carry an accessible name, a meaningful name attribute and a valid autocomplete token where one applies.

[See AIR-6.3 in the full index →](https://readinessindex.io/tests#c-AIR-6.3)

AIR-6.4

No captchas on browse, search, or filter interactions

PASS

2 pt

Why we test this

No search or filter surface in the sample returned a challenge.

AIR-7.1

Markdown companion for every canonical page

0 of 24 sampled pages have a Markdown companion at {path}.md returning a Markdown content type.

PROBLEM

+2

What's wrong

0 of 24 sampled pages have a Markdown companion at {path}.md returning a Markdown content type.

[See AIR-7.1 in the full index →](https://readinessindex.io/tests#c-AIR-7.1)

AIR-7.2

link rel=alternate advertises the Markdown version

NOT SCORED

—

AIR-7.3

Accept: text/markdown content negotiation

0 of 25 URLs serve Markdown for Accept: text/markdown.

PROBLEM

+2

What's wrong

0 of 25 URLs serve Markdown for Accept: text/markdown.

[See AIR-7.3 in the full index →](https://readinessindex.io/tests#c-AIR-7.3)

AIR-7.4

Alternate representations are edge-cached

NOT SCORED

—

LI-1

HowTo on procedural content

0 of 5 procedural pages carry HowTo with ordered HowToStep.

NOT SCORED

—

What's wrong

0 of 5 procedural pages carry HowTo with ordered HowToStep.

[See LI-1 in the full index →](https://readinessindex.io/tests#c-LI-1)

LI-2

speakable on summaries and ledes

No speakable specification found on any sampled page.

NOT SCORED

—

What's wrong

No speakable specification found on any sampled page.

[See LI-2 in the full index →](https://readinessindex.io/tests#c-LI-2)

LI-3

IndexNow fires on publish and update

No IndexNow key file was discoverable. The file is named after the key, which is not published, so this is 'not discoverable' rather than proof of absence.

NOT SCORED

—

What's wrong

No IndexNow key file was discoverable. The file is named after the key, which is not published, so this is 'not discoverable' rather than proof of absence.

[See LI-3 in the full index →](https://readinessindex.io/tests#c-LI-3)

LI-4

Editorial policy page referenced via publishingPrinciples

0 of 32 Organization nodes reference publishingPrinciples.

NOT SCORED

—

What's wrong

0 of 32 Organization nodes reference publishingPrinciples.

[See LI-4 in the full index →](https://readinessindex.io/tests#c-LI-4)

LI-5

NLWeb endpoint exposed as an MCP server with an ask method

No NLWeb endpoint was discoverable.

NOT SCORED

—

What's wrong

No NLWeb endpoint was discoverable.

[See LI-5 in the full index →](https://readinessindex.io/tests#c-LI-5)

LI-6

Domain MCP server over real content APIs

No domain MCP server or tool descriptor was discoverable.

NOT SCORED

—

What's wrong

No domain MCP server or tool descriptor was discoverable.

[See LI-6 in the full index →](https://readinessindex.io/tests#c-LI-6)

LI-7

/llms-full.txt where full-text inclusion is appropriate

NOT SCORED

—

BP-1

Critical flows complete without JS-only interactions

NOT SCORED

—

BP-2

Stable selectors on critical-flow elements

NOT SCORED

—

BP-3

GA4 channel group for AI assistant referrers

Whether a channel group exists for AI assistant referrers is not visible from outside. Analytics presence is; the grouping is not.

NOT SCORED

—

What we're measuring

Whether a channel group exists for AI assistant referrers is not visible from outside. Analytics presence is; the grouping is not.

[See BP-3 in the full index →](https://readinessindex.io/tests#c-BP-3)

BP-4

Server-side tagging captures stripped referrers

Reconciliation between server-side and client-side numbers has to be attested.

NOT SCORED

—

What we're measuring

Reconciliation between server-side and client-side numbers has to be attested.

[See BP-4 in the full index →](https://readinessindex.io/tests#c-BP-4)

BP-5

Access log retention with a queryable store

Log retention and queryability are not observable from outside the site.

NOT SCORED

—

What we're measuring

Log retention and queryability are not observable from outside the site.

[See BP-5 in the full index →](https://readinessindex.io/tests#c-BP-5)

BP-6

Scheduled AI crawler activity report

NOT SCORED

—

BP-7

Fixed prompt panel run monthly across models

Answer-share tracking happens outside the site and must be attested.

NOT SCORED

—

What we're measuring

Answer-share tracking happens outside the site and must be attested.

[See BP-7 in the full index →](https://readinessindex.io/tests#c-BP-7)

BP-8

Extraction-fidelity baseline captured

No extraction-fidelity baseline is captured by this version of the scanner, which makes no live model calls.

NOT SCORED

—

What we're measuring

No extraction-fidelity baseline is captured by this version of the scanner, which makes no live model calls.

[See BP-8 in the full index →](https://readinessindex.io/tests#c-BP-8)

BP-9

Search Console and Bing Webmaster Tools verified

Neither Search Console nor Bing Webmaster Tools verification was found.

NOT SCORED

—

What's wrong

Neither Search Console nor Bing Webmaster Tools verification was found.

[See BP-9 in the full index →](https://readinessindex.io/tests#c-BP-9)

Not applicable — 21 tests answered with a dash, excluded from the score: AIR-3.6, AIR-4.1, AIR-4.2, AIR-4.3, AIR-4.10, AIR-5.3, AIR-5.5, AIR-5.6, AIR-6.1, AIR-6.2, AIR-7.2, AIR-7.4, LI-7, BP-1, BP-2, BP-3, BP-4, BP-5, BP-6, BP-7, BP-8.

By dimension

Where National Philanthropic Trust's 47 came from. Open a line to see its tests, worst first.

Dimension

Share earned

Earned

Score

1 · Primary Indicators

10

33

Scored zero — 7 problems

AIR-1.2

Does your CDN let AI crawlers through?

8 of 8 AI user-agents are rejected or challenged at the edge.

PROBLEM

What's wrong

8 of 8 AI user-agents are rejected or challenged at the edge.

Even when robots.txt says yes, a firewall or bot-protection rule can turn assistants away before they reach your pages. We sent a request as each one and recorded what came back.

[See AIR-1.2 in the full index →](https://readinessindex.io/tests#c-AIR-1.2)

AIR-1.3

Is your page readable without a security challenge?

32 of 32 sampled pages return an interactive challenge (Google reCAPTCHA).

PROBLEM

What's wrong

32 of 32 sampled pages return an interactive challenge (Google reCAPTCHA).

A CAPTCHA or bot check on an ordinary page stops an assistant at the door. These belong on forms and logins, not on pages anyone can read.

[See AIR-1.3 in the full index →](https://readinessindex.io/tests#c-AIR-1.3)

AIR-1.4

Have you stated what AI may do with your content?

No Content-Signal line in robots.txt. Missing: search, ai-input, ai-train.

PROBLEM

What's wrong

No Content-Signal line in robots.txt. Missing: search, ai-input, ai-train.

There is now a machine-readable way to say whether AI may search, quote or train on your material. Having a position — any position — is the point.

[See AIR-1.4 in the full index →](https://readinessindex.io/tests#c-AIR-1.4)

AIR-1.7

Does this page declare its real address?

3% of sampled pages emit a valid, self-consistent canonical. 31 have problems.

PROBLEM

What's wrong

3% of sampled pages emit a valid, self-consistent canonical. 31 have problems.

A canonical link tells a machine which URL is the true one. Without it the same content can be treated as several competing pages.

[See AIR-1.7 in the full index →](https://readinessindex.io/tests#c-AIR-1.7)

AIR-1.8

Is your page structured so a machine can follow it?

0% of sampled pages carry one main element, a wrapping article or section, and a nav. 13 exceed 12 divs per semantic element.

PROBLEM

What's wrong

0% of sampled pages carry one main element, a wrapping article or section, and a nav. 13 exceed 12 divs per semantic element.

Meaningful sections rather than an undifferentiated wall of containers. It is the difference between a document and a soup of boxes.

[See AIR-1.8 in the full index →](https://readinessindex.io/tests#c-AIR-1.8)

AIR-1.10

Do you publish a guide for AI assistants?

/llms.txt returns HTTP 404.

PROBLEM

What's wrong

/llms.txt returns HTTP 404.

A file at /llms.txt listing your most important pages. It is early and cheap, and it forces a useful conversation about what actually matters on your site.

[See AIR-1.10 in the full index →](https://readinessindex.io/tests#c-AIR-1.10)

AIR-1.13

Can a machine find out who you are?

0 of 7 organizational facts are present in the Organization markup: none.

PROBLEM

What's wrong

0 of 7 organizational facts are present in the Organization markup: none.

Founding date, leadership, address, contact details, legal identifiers. Thin About pages are the most common weakness we see.

[See AIR-1.13 in the full index →](https://readinessindex.io/tests#c-AIR-1.13)

Partly scored — 4 need work

AIR-1.5

Can a person read your AI policy?

robots.txt carries a 89-character comment, too thin to read as a policy statement.

NEEDS WORK

What's half-done

robots.txt carries a 89-character comment, too thin to read as a policy statement.

A few plain sentences in robots.txt saying what you permit. Journalists and lawyers read this file, and right now most sites say nothing.

[See AIR-1.5 in the full index →](https://readinessindex.io/tests#c-AIR-1.5)

AIR-1.9

Do your headings tell a clear story?

66% of sampled pages have exactly one non-empty h1 and no skipped heading levels. 7 have several; 5 skip a level.

NEEDS WORK

What's half-done

66% of sampled pages have exactly one non-empty h1 and no skipped heading levels. 7 have several; 5 skip a level.

One main heading, then sub-headings in order. Assistants use headings to work out what a page is about and which part answers a question.

[See AIR-1.9 in the full index →](https://readinessindex.io/tests#c-AIR-1.9)

AIR-1.11

Can a machine tell what your organization is?

63 of 100 entity nodes carry an @id (63%). The WebPage to WebSite to Organization chain resolves.

NEEDS WORK

What's half-done

63 of 100 entity nodes carry an @id (63%). The WebPage to WebSite to Organization chain resolves.

Structured data that links together — your organization, your site, this page — rather than a scattering of disconnected labels.

[See AIR-1.11 in the full index →](https://readinessindex.io/tests#c-AIR-1.11)

AIR-1.12

Can a machine be certain it is you?

6 sameAs links: 0 tier-1 authority identifiers, 2 tier-2, 4 social.

NEEDS WORK

What's half-done

6 sameAs links: 0 tier-1 authority identifiers, 2 tier-2, 4 social.

Links from your markup to authoritative records like Wikidata or ROR. Without one, an assistant is guessing which organization of your name it has found.

[See AIR-1.12 in the full index →](https://readinessindex.io/tests#c-AIR-1.12)

Full marks — 2 pass

AIR-1.1

Can AI crawlers reach your site?

PASS

Why we test this

All 10 AI agents may fetch content paths.

Your robots.txt file tells crawlers what they may read. A line left behind by a previous site or a copied template can quietly shut out the assistants people now use to find you.

AIR-1.6

Are you allowing assistants to quote you?

PASS

Why we test this

No noarchive, nosnippet or max-snippet:0 directives found.

Some sites carry old settings that tell search engines not to show excerpts. Those same settings stop an assistant quoting your page in an answer.

2 · Rendering and Extraction

9

60

Scored zero — 2 problems

AIR-2.4

Stable, human-readable anchor IDs on section headings

0 of 690 subheadings carry a slug-like id (0%); 0 have generated or unstable ids.

PROBLEM

What's wrong

0 of 690 subheadings carry a slug-like id (0%); 0 have generated or unstable ids.

[See AIR-2.4 in the full index →](https://readinessindex.io/tests#c-AIR-2.4)

AIR-2.5

Alt text on content images, empty alt on decorative

139 of 649 images carry appropriate alt text: 22 have no alt attribute, 9 use the filename.

PROBLEM

What's wrong

139 of 649 images carry appropriate alt text: 22 have no alt attribute, 9 use the filename.

[See AIR-2.5 in the full index →](https://readinessindex.io/tests#c-AIR-2.5)

Partly scored — 2 need work

AIR-2.3

Real data tables with header cells

8 tables: 0 complete, 8 without scope on header cells, 0 with no header cells, 0 used for layout.

NEEDS WORK

What's half-done

8 tables: 0 complete, 8 without scope on header cells, 0 with no header cells, 0 used for layout.

[See AIR-2.3 in the full index →](https://readinessindex.io/tests#c-AIR-2.3)

AIR-2.6

Key facts exist as HTML text, not only in images or PDFs

8 of 32 sampled pages are thin relative to their images or lead with a document download.

NEEDS WORK

What's half-done

8 of 32 sampled pages are thin relative to their images or lead with a document download.

[See AIR-2.6 in the full index →](https://readinessindex.io/tests#c-AIR-2.6)

Full marks — 2 pass

AIR-2.1

Primary content is present without JavaScript

PASS

Why we test this

Raw HTML contains 94% of rendered text on average across 32 URLs. The worst template is /grants-in-action: 9% across 1 pages.

AIR-2.2

Progressive disclosure content ships in the initial HTML

PASS

Why we test this

11 of 11 pages ship every disclosure panel populated in the raw HTML.

3 · Structured Data and the Entity Graph

7

47

Scored zero — 2 problems

AIR-3.3

Vertical-specific schema types

0 of 4 expected nonprofit types are present: none. Missing: NGO, DonateAction, Grant, FundingScheme.

PROBLEM

What's wrong

0 of 4 expected nonprofit types are present: none. Missing: NGO, DonateAction, Grant, FundingScheme.

[See AIR-3.3 in the full index →](https://readinessindex.io/tests#c-AIR-3.3)

AIR-3.4

FAQPage and QAPage on genuine question-and-answer content

0 pages carry FAQ or QA markup; 13 pages show visible question-and-answer content.

PROBLEM

What's wrong

0 pages carry FAQ or QA markup; 13 pages show visible question-and-answer content.

[See AIR-3.4 in the full index →](https://readinessindex.io/tests#c-AIR-3.4)

Partly scored — 2 need work

AIR-3.1

JSON-LD is generated from mapped fields, not hardcoded

4 of 5 templates repeat identical schema literals across pages whose visible content differs.

NEEDS WORK

What's half-done

4 of 5 templates repeat identical schema literals across pages whose visible content differs.

[See AIR-3.1 in the full index →](https://readinessindex.io/tests#c-AIR-3.1)

AIR-3.5

isAccessibleForFree, about, and mentions with entity references

0 of 30 substantive pages declare isAccessibleForFree; 1 reference subject entities by identifier.

NEEDS WORK

What's half-done

0 of 30 substantive pages declare isAccessibleForFree; 1 reference subject entities by identifier.

[See AIR-3.5 in the full index →](https://readinessindex.io/tests#c-AIR-3.5)

Full marks — 3 pass

AIR-3.2

BreadcrumbList on every page below the homepage

PASS

Why we test this

100% of pages below the homepage carry a BreadcrumbList with at least two steps.

AIR-3.7

SearchAction on the WebSite node

PASS

Why we test this

The SearchAction template returns 242 characters of results for a test term.

AIR-3.8

Schema validation of the structured data on the page

PASS

Why we test this

397 nodes across 32 pages parse, carry what their types require, and hold well-formed values.

4 · Crawl, Index and Licensing Hygiene

6

50

Scored zero — 1 problem

AIR-4.4

Correct X-Robots-Tag on non-HTML resources

0 of 25 non-HTML resources carry an X-Robots-Tag.

PROBLEM

What's wrong

0 of 25 non-HTML resources carry an X-Robots-Tag.

[See AIR-4.4 in the full index →](https://readinessindex.io/tests#c-AIR-4.4)

Partly scored — 1 needs work

AIR-4.5

Missing pages return 404 or 410

0 of 10 deliberately invalid URLs returned HTTP 200; 1 sampled pages are thin enough to be not-found templates.

NEEDS WORK

What's half-done

0 of 10 deliberately invalid URLs returned HTTP 200; 1 sampled pages are thin enough to be not-found templates.

[See AIR-4.5 in the full index →](https://readinessindex.io/tests#c-AIR-4.5)

Full marks — 4 pass

AIR-4.6

Redirects resolve in a single hop

PASS

Why we test this

31 of 32 sampled URLs redirect.

AIR-4.7

Faceted, calendar, and parameterized URLs are controlled

PASS

Why we test this

No parameterized URLs appeared in the crawlable sample.

AIR-4.8

Sitemap lastmod reflects real content changes

PASS

Why we test this

562 of 610 sitemap URLs carry a lastmod across 160 distinct dates; 10% share 2024-07-10.

AIR-4.9

Sitemap index split by type, with media sitemaps

PASS

Why we test this

An index with 6 child sitemaps covering 610 URLs, including media.

5 · Authorship, Provenance, Freshness

3

25

Scored zero — 1 problem

AIR-5.2

Bylines linked to author entities

1 of 29 substantive pages reference an author by @id; 0 carry a bare string; 28 are unsigned.

PROBLEM

What's wrong

1 of 29 substantive pages reference an author by @id; 0 carry a bare string; 28 are unsigned.

[See AIR-5.2 in the full index →](https://readinessindex.io/tests#c-AIR-5.2)

Partly scored — 1 needs work

AIR-5.1

Author entity pages with credentials

0 of 1 Person entities carry a canonical @id plus at least two of jobTitle, affiliation, knowsAbout or sameAs.

NEEDS WORK

What's half-done

0 of 1 Person entities carry a canonical @id plus at least two of jobTitle, affiliation, knowsAbout or sameAs.

[See AIR-5.1 in the full index →](https://readinessindex.io/tests#c-AIR-5.1)

Full marks — 1 pass

AIR-5.4

datePublished and dateModified are accurate

PASS

Why we test this

32 of 32 pages carry a publication or modification date across 22 distinct dateModified values.

6 · Agent Interfaces

3

38

Partly scored — 1 needs work

AIR-6.3

Form fields carry label, name, and autocomplete

128 of 295 form fields carry an accessible name, a meaningful name attribute and a valid autocomplete token where one applies.

NEEDS WORK

What's half-done

128 of 295 form fields carry an accessible name, a meaningful name attribute and a valid autocomplete token where one applies.

[See AIR-6.3 in the full index →](https://readinessindex.io/tests#c-AIR-6.3)

Full marks — 1 pass

AIR-6.4

No captchas on browse, search, or filter interactions

PASS

Why we test this

No search or filter surface in the sample returned a challenge.

7 · Alternate Representations

0

0

Scored zero — 2 problems

AIR-7.1

Markdown companion for every canonical page

0 of 24 sampled pages have a Markdown companion at {path}.md returning a Markdown content type.

PROBLEM

What's wrong

0 of 24 sampled pages have a Markdown companion at {path}.md returning a Markdown content type.

[See AIR-7.1 in the full index →](https://readinessindex.io/tests#c-AIR-7.1)

AIR-7.3

Accept: text/markdown content negotiation

0 of 25 URLs serve Markdown for Accept: text/markdown.

PROBLEM

What's wrong

0 of 25 URLs serve Markdown for Accept: text/markdown.

[See AIR-7.3 in the full index →](https://readinessindex.io/tests#c-AIR-7.3)

What was read

32 pages, sampled from this site's own sitemap and internal links. The cap is 32 — a ceiling, not a certainty: a site with fewer reachable pages yields fewer.

32 other pages, all 200, by template

1×

/

https://www.nptrust.org/

4×

/*/*

https://www.nptrust.org/advisors-and-institutions/for-advisors

1×

/for-nonprofits

https://www.nptrust.org/for-nonprofits

3×

/*

https://www.nptrust.org/what-is-a-donor-advised-fund

1×

/donor-advised-funds

https://www.nptrust.org/donor-advised-funds

3×

/donor-advised-funds/*

https://www.nptrust.org/donor-advised-funds/daf-vs-foundation

1×

/philanthropic-consulting

https://www.nptrust.org/philanthropic-consulting

1×

/premier-donor-services

https://www.nptrust.org/premier-donor-services

3×

/philanthropic-resources/*

https://www.nptrust.org/philanthropic-resources/supporting-disaster-relief

1×

/other-giving-vehicles

https://www.nptrust.org/other-giving-vehicles

1×

/daf-insights

https://www.nptrust.org/daf-insights

3×

/annual-reports/*

https://www.nptrust.org/annual-reports/daf-spotlight-economic-uncertainty

2×

/reports/*

https://www.nptrust.org/reports/daf-spotlight-daf-grant-payout-rates

1×

/what-is-a-philanthropist

https://www.nptrust.org/what-is-a-philanthropist

1×

/grants-in-action

https://www.nptrust.org/grants-in-action

1×

/donor-stories

https://www.nptrust.org/donor-stories

1×

/about-us

https://www.nptrust.org/about-us

1×

/about-us/*

https://www.nptrust.org/about-us/leadership

1×

/events

https://www.nptrust.org/events

1×

/contact-us/*

https://www.nptrust.org/contact-us/work-at-npt

The receipt

**Cohort**

nonprofits

**Source**

Exempt Organizations Business Master File Extract (Internal Revenue Service (IRS), 2026-09-07)

**Index**

11.0, in effect 2026-09-24

**Scanner**

0.1.0

**Scanned**

2026-09-20T01:11:08.235322+00:00

**Result hash**

a3066fe375d888f9d550ba35b36f02fc15cb4caeb0e5b9e6a22d36a84e91bc55

**Basis**

public-interest census: a declared bot with a published policy at https://readinessindex.io/bot, honoring robots.txt addressed to AIRBot, reading public pages only. No per-site permission was sought or given.

The hash is the SHA-256 of the full `result.json`, recorded when the scan finished rather than computed now. The raw evidence behind every line above — every response, cached — is retained and is a median 1.5 MB per site, so it is not served from here. [Ask us for it](mailto:hello@readinessindex.io) if you want to check a number against the bytes it came from.

Think this is wrong? It might be. Tell us at [hello@readinessindex.io](mailto:hello@readinessindex.io) and we will look, correct it if it is, and say so publicly either way.

**About these numbers.** Points are whole numbers everywhere on this page. The arithmetic behind them is not — a test scores its weight times its band divided by four, so a row can earn 1.5 points and print as 2. Scores are computed from the exact figures and rounded once, at the end, never from the rounded rows. That means adding the points column up will not give you the score exactly. The rule is published in [the standard](https://readinessindex.io/tests#rounding).
