Open a pillar to inspect every recorded check, affected page, and suggested next step.
SEOCan search engines read the essentials?55 recorded checks · 32 passed · 4 partial · 0 failed · 0 unknown96/100
Evidence coverage: 100%. 4 not applicable · 15 informational.
Search description
Room to improveseo.description · https://zer.foo/framework/
Evidence: Reused on 4 distinct observed sample URLs (case/whitespace normalized): Describe your idea. Design, train and run AI on your own hardware with Zerfoo, the open-source Go framework for model creation.
Next step: Write an accurate page-specific meta description; do not promise that search engines will display it.
Search description
Room to improveseo.description · https://zer.foo/performance/
Evidence: Reused on 4 distinct observed sample URLs (case/whitespace normalized): Describe your idea. Design, train and run AI on your own hardware with Zerfoo, the open-source Go framework for model creation.
Next step: Write an accurate page-specific meta description; do not promise that search engines will display it.
Search description
Room to improveseo.description · https://zer.foo/how-it-works/
Evidence: Reused on 4 distinct observed sample URLs (case/whitespace normalized): Describe your idea. Design, train and run AI on your own hardware with Zerfoo, the open-source Go framework for model creation.
Next step: Write an accurate page-specific meta description; do not promise that search engines will display it.
Search description
Room to improveseo.description · https://zer.foo/about/
Evidence: Reused on 4 distinct observed sample URLs (case/whitespace normalized): Describe your idea. Design, train and run AI on your own hardware with Zerfoo, the open-source Go framework for model creation.
Next step: Write an accurate page-specific meta description; do not promise that search engines will display it.
Public HTML response
Observed pass · Foundationalseo.access · https://zer.foo/
Evidence: HTTP 200 HTML response
Next step: Ensure intended public pages return useful HTML with a successful HTTP status.
Index directives
Observed passseo.index · https://zer.foo/
Evidence: Meta: ; HTTP:
Next step: Review robots directives against your intended indexing policy; remove unintended noindex directives.
Page title
Observed passseo.title · https://zer.foo/
Evidence: No duplicate among 5 distinct observed sample URLs; not a full-site uniqueness check. Zerfoo ML framework — Build AI you own, in Go
Next step: Give this page a concise, descriptive title that distinguishes its purpose.
Search description
Observed passseo.description · https://zer.foo/
Evidence: No duplicate among 5 distinct observed sample URLs; not a full-site uniqueness check. An open-source machine-learning framework built in Go. Explore the work, design a model, and train and run it on hardware you control.
Next step: Write an accurate page-specific meta description; do not promise that search engines will display it.
Canonical reference
Observed passseo.canonical · https://zer.foo/
Evidence: https://zer.foo/
Next step: Provide one valid canonical URL that reflects the intended public version of this page.
Heading structure
Observed passseo.headings · https://zer.foo/
Evidence: 1 H1 elements; 0 empty H1s; 0 upward level skips in document order
Next step: Provide a meaningful H1 and use heading levels in a logical sequence.
Mobile viewport declaration
Observed passseo.viewport · https://zer.foo/
Evidence: Viewport width=device-width observed; responsive rendering not tested
Next step: Declare a viewport with width=device-width; verify actual mobile layout separately.
Image text alternatives
Observed passseo.images · https://zer.foo/
Evidence: 1 of 1 images have an alt attribute; semantic accuracy not verified
Next step: Provide useful alternatives for informative images and empty alt attributes for decorative images.
Public HTML response
Observed pass · Foundationalseo.access · https://zer.foo/framework/
Evidence: HTTP 200 HTML response
Next step: Ensure intended public pages return useful HTML with a successful HTTP status.
Index directives
Observed passseo.index · https://zer.foo/framework/
Evidence: Meta: ; HTTP:
Next step: Review robots directives against your intended indexing policy; remove unintended noindex directives.
Page title
Observed passseo.title · https://zer.foo/framework/
Evidence: No duplicate among 5 distinct observed sample URLs; not a full-site uniqueness check. Framework — Zerfoo
Next step: Give this page a concise, descriptive title that distinguishes its purpose.
Canonical reference
Observed passseo.canonical · https://zer.foo/framework/
Evidence: https://zer.foo/framework/
Next step: Provide one valid canonical URL that reflects the intended public version of this page.
Heading structure
Observed passseo.headings · https://zer.foo/framework/
Evidence: 1 H1 elements; 0 empty H1s; 0 upward level skips in document order
Next step: Provide a meaningful H1 and use heading levels in a logical sequence.
Mobile viewport declaration
Observed passseo.viewport · https://zer.foo/framework/
Evidence: Viewport width=device-width observed; responsive rendering not tested
Next step: Declare a viewport with width=device-width; verify actual mobile layout separately.
Public HTML response
Observed pass · Foundationalseo.access · https://zer.foo/performance/
Evidence: HTTP 200 HTML response
Next step: Ensure intended public pages return useful HTML with a successful HTTP status.
Index directives
Observed passseo.index · https://zer.foo/performance/
Evidence: Meta: ; HTTP:
Next step: Review robots directives against your intended indexing policy; remove unintended noindex directives.
Page title
Observed passseo.title · https://zer.foo/performance/
Evidence: No duplicate among 5 distinct observed sample URLs; not a full-site uniqueness check. Performance — Zerfoo
Next step: Give this page a concise, descriptive title that distinguishes its purpose.
Canonical reference
Observed passseo.canonical · https://zer.foo/performance/
Evidence: https://zer.foo/performance/
Next step: Provide one valid canonical URL that reflects the intended public version of this page.
Heading structure
Observed passseo.headings · https://zer.foo/performance/
Evidence: 1 H1 elements; 0 empty H1s; 0 upward level skips in document order
Next step: Provide a meaningful H1 and use heading levels in a logical sequence.
Mobile viewport declaration
Observed passseo.viewport · https://zer.foo/performance/
Evidence: Viewport width=device-width observed; responsive rendering not tested
Next step: Declare a viewport with width=device-width; verify actual mobile layout separately.
Public HTML response
Observed pass · Foundationalseo.access · https://zer.foo/how-it-works/
Evidence: HTTP 200 HTML response
Next step: Ensure intended public pages return useful HTML with a successful HTTP status.
Index directives
Observed passseo.index · https://zer.foo/how-it-works/
Evidence: Meta: ; HTTP:
Next step: Review robots directives against your intended indexing policy; remove unintended noindex directives.
Page title
Observed passseo.title · https://zer.foo/how-it-works/
Evidence: No duplicate among 5 distinct observed sample URLs; not a full-site uniqueness check. How it works — Zerfoo
Next step: Give this page a concise, descriptive title that distinguishes its purpose.
Canonical reference
Observed passseo.canonical · https://zer.foo/how-it-works/
Evidence: https://zer.foo/how-it-works/
Next step: Provide one valid canonical URL that reflects the intended public version of this page.
Heading structure
Observed passseo.headings · https://zer.foo/how-it-works/
Evidence: 1 H1 elements; 0 empty H1s; 0 upward level skips in document order
Next step: Provide a meaningful H1 and use heading levels in a logical sequence.
Mobile viewport declaration
Observed passseo.viewport · https://zer.foo/how-it-works/
Evidence: Viewport width=device-width observed; responsive rendering not tested
Next step: Declare a viewport with width=device-width; verify actual mobile layout separately.
Public HTML response
Observed pass · Foundationalseo.access · https://zer.foo/about/
Evidence: HTTP 200 HTML response
Next step: Ensure intended public pages return useful HTML with a successful HTTP status.
Index directives
Observed passseo.index · https://zer.foo/about/
Evidence: Meta: ; HTTP:
Next step: Review robots directives against your intended indexing policy; remove unintended noindex directives.
Page title
Observed passseo.title · https://zer.foo/about/
Evidence: No duplicate among 5 distinct observed sample URLs; not a full-site uniqueness check. About Zerfoo — Zerfoo
Next step: Give this page a concise, descriptive title that distinguishes its purpose.
Canonical reference
Observed passseo.canonical · https://zer.foo/about/
Evidence: https://zer.foo/about/
Next step: Provide one valid canonical URL that reflects the intended public version of this page.
Heading structure
Observed passseo.headings · https://zer.foo/about/
Evidence: 1 H1 elements; 0 empty H1s; 0 upward level skips in document order
Next step: Provide a meaningful H1 and use heading levels in a logical sequence.
Mobile viewport declaration
Observed passseo.viewport · https://zer.foo/about/
Evidence: Viewport width=device-width observed; responsive rendering not tested
Next step: Declare a viewport with width=device-width; verify actual mobile layout separately.
Image text alternatives
Not applicableseo.images · https://zer.foo/framework/
Evidence: 0 of 0 images have an alt attribute; semantic accuracy not verified
Next step: Provide useful alternatives for informative images and empty alt attributes for decorative images.
Image text alternatives
Not applicableseo.images · https://zer.foo/performance/
Evidence: 0 of 0 images have an alt attribute; semantic accuracy not verified
Next step: Provide useful alternatives for informative images and empty alt attributes for decorative images.
Image text alternatives
Not applicableseo.images · https://zer.foo/how-it-works/
Evidence: 0 of 0 images have an alt attribute; semantic accuracy not verified
Next step: Provide useful alternatives for informative images and empty alt attributes for decorative images.
Image text alternatives
Not applicableseo.images · https://zer.foo/about/
Evidence: 0 of 0 images have an alt attribute; semantic accuracy not verified
Next step: Provide useful alternatives for informative images and empty alt attributes for decorative images.
Initial HTML word count
For contextseo.words · https://zer.foo/
Evidence: 560 whitespace-delimited initial-HTML words; excludes head, script and style. Hidden text and language segmentation not verified; no minimum or score penalty.
Next step:
HTTPS transport policy
For contextseo.hsts · https://zer.foo/
Evidence: HSTS header absent on HTTPS response; security observation, no score penalty
Next step:
Initial HTML word count
For contextseo.words · https://zer.foo/framework/
Evidence: 404 whitespace-delimited initial-HTML words; excludes head, script and style. Hidden text and language segmentation not verified; no minimum or score penalty.
Next step:
HTTPS transport policy
For contextseo.hsts · https://zer.foo/framework/
Evidence: HSTS header absent on HTTPS response; security observation, no score penalty
Next step:
Initial HTML word count
For contextseo.words · https://zer.foo/performance/
Evidence: 331 whitespace-delimited initial-HTML words; excludes head, script and style. Hidden text and language segmentation not verified; no minimum or score penalty.
Next step:
HTTPS transport policy
For contextseo.hsts · https://zer.foo/performance/
Evidence: HSTS header absent on HTTPS response; security observation, no score penalty
Next step:
Initial HTML word count
For contextseo.words · https://zer.foo/how-it-works/
Evidence: 239 whitespace-delimited initial-HTML words; excludes head, script and style. Hidden text and language segmentation not verified; no minimum or score penalty.
Next step:
HTTPS transport policy
For contextseo.hsts · https://zer.foo/how-it-works/
Evidence: HSTS header absent on HTTPS response; security observation, no score penalty
Next step:
Initial HTML word count
For contextseo.words · https://zer.foo/about/
Evidence: 239 whitespace-delimited initial-HTML words; excludes head, script and style. Hidden text and language segmentation not verified; no minimum or score penalty.
Next step:
HTTPS transport policy
For contextseo.hsts · https://zer.foo/about/
Evidence: HSTS header absent on HTTPS response; security observation, no score penalty
Next step:
Sampled page outcome
For contextseo.page_status · https://zer.foo/
Evidence: HTTP 200; final URL https://zer.foo/; HTML evaluated
Next step:
Sampled page outcome
For contextseo.page_status · https://zer.foo/framework/
Evidence: HTTP 200; final URL https://zer.foo/framework/; HTML evaluated
Next step:
Sampled page outcome
For contextseo.page_status · https://zer.foo/performance/
Evidence: HTTP 200; final URL https://zer.foo/performance/; HTML evaluated
Next step:
Sampled page outcome
For contextseo.page_status · https://zer.foo/how-it-works/
Evidence: HTTP 200; final URL https://zer.foo/how-it-works/; HTML evaluated
Next step:
Sampled page outcome
For contextseo.page_status · https://zer.foo/about/
Evidence: HTTP 200; final URL https://zer.foo/about/; HTML evaluated
Next step:
GEOIs your information clear and attributable?20 recorded checks · 6 passed · 12 partial · 0 failed · 0 unknown72/100
Evidence coverage: 100%. 2 not applicable · 0 informational.
Structured information
Room to improvegeo.structure · https://zer.foo/
Evidence: Meaningful headings: true; semantic information structures: false
Next step: Use meaningful headings and semantic lists, tables, or definition lists where they clarify the content.
Article attribution
Room to improvegeo.author · https://zer.foo/
Evidence: Article detected: true; author metadata: false; machine-readable date: false
Next step: For article content, identify the author and publish or update date accurately.
Structured entity data
Room to improvegeo.entity · https://zer.foo/framework/
Evidence: No recognized structured entity found
Next step: Add accurate, applicable Schema.org JSON-LD based on verified business or content facts.
Structured information
Room to improvegeo.structure · https://zer.foo/framework/
Evidence: Meaningful headings: true; semantic information structures: false
Next step: Use meaningful headings and semantic lists, tables, or definition lists where they clarify the content.
Article attribution
Room to improvegeo.author · https://zer.foo/framework/
Evidence: Article detected: true; author metadata: false; machine-readable date: false
Next step: For article content, identify the author and publish or update date accurately.
Structured entity data
Room to improvegeo.entity · https://zer.foo/performance/
Evidence: No recognized structured entity found
Next step: Add accurate, applicable Schema.org JSON-LD based on verified business or content facts.
Structured information
Room to improvegeo.structure · https://zer.foo/performance/
Evidence: Meaningful headings: true; semantic information structures: false
Next step: Use meaningful headings and semantic lists, tables, or definition lists where they clarify the content.
Structured entity data
Room to improvegeo.entity · https://zer.foo/how-it-works/
Evidence: No recognized structured entity found
Next step: Add accurate, applicable Schema.org JSON-LD based on verified business or content facts.
Structured information
Room to improvegeo.structure · https://zer.foo/how-it-works/
Evidence: Meaningful headings: true; semantic information structures: false
Next step: Use meaningful headings and semantic lists, tables, or definition lists where they clarify the content.
Article attribution
Room to improvegeo.author · https://zer.foo/how-it-works/
Evidence: Article detected: true; author metadata: false; machine-readable date: false
Next step: For article content, identify the author and publish or update date accurately.
Structured entity data
Room to improvegeo.entity · https://zer.foo/about/
Evidence: No recognized structured entity found
Next step: Add accurate, applicable Schema.org JSON-LD based on verified business or content facts.
Structured information
Room to improvegeo.structure · https://zer.foo/about/
Evidence: Meaningful headings: true; semantic information structures: false
Next step: Use meaningful headings and semantic lists, tables, or definition lists where they clarify the content.
Extractable public response
Observed pass · Foundationalgeo.access · https://zer.foo/
Evidence: HTTP 200 HTML response
Next step: Expose intended public information in server-delivered HTML.
Structured entity data
Observed passgeo.entity · https://zer.foo/
Evidence: Schema.org entity data observed; factual accuracy not verified
Next step: Add accurate, applicable Schema.org JSON-LD based on verified business or content facts.
Extractable public response
Observed pass · Foundationalgeo.access · https://zer.foo/framework/
Evidence: HTTP 200 HTML response
Next step: Expose intended public information in server-delivered HTML.
Extractable public response
Observed pass · Foundationalgeo.access · https://zer.foo/performance/
Evidence: HTTP 200 HTML response
Next step: Expose intended public information in server-delivered HTML.
Extractable public response
Observed pass · Foundationalgeo.access · https://zer.foo/how-it-works/
Evidence: HTTP 200 HTML response
Next step: Expose intended public information in server-delivered HTML.
Extractable public response
Observed pass · Foundationalgeo.access · https://zer.foo/about/
Evidence: HTTP 200 HTML response
Next step: Expose intended public information in server-delivered HTML.
Article attribution
Not applicablegeo.author · https://zer.foo/performance/
Evidence: Article detected: false; author metadata: false; machine-readable date: false
Next step: For article content, identify the author and publish or update date accurately.
Article attribution
Not applicablegeo.author · https://zer.foo/about/
Evidence: Article detected: false; author metadata: false; machine-readable date: false
Next step: For article content, identify the author and publish or update date accurately.
AEOCan software understand the interface?22 recorded checks · 20 passed · 0 partial · 0 failed · 0 unknown100/100
Evidence coverage: 100%. 0 not applicable · 2 informational.
Initial HTML readability
Observed pass · Foundationalagent.access · https://zer.foo/
Evidence: 560 initial-HTML words observed; visual rendering and hidden-text accuracy not verified
Next step: Serve meaningful public text in initial HTML so readers need not execute JavaScript to understand the page.
Navigation landmarks
Observed passagent.landmarks · https://zer.foo/
Evidence: Main landmark: true; navigation landmark: true
Next step: Use main and navigation landmarks to identify page content and navigation.
Named interactive controls
Observed passagent.controls · https://zer.foo/
Evidence: 3 of 3 controls have observed names; interactions not executed
Next step: Give interactive controls accessible names through visible labels or appropriate ARIA attributes.
Named navigation links
Observed passagent.links · https://zer.foo/
Evidence: 44 of 44 links have observed names
Next step: Give navigation links meaningful visible or accessible names.
Initial HTML readability
Observed pass · Foundationalagent.access · https://zer.foo/framework/
Evidence: 404 initial-HTML words observed; visual rendering and hidden-text accuracy not verified
Next step: Serve meaningful public text in initial HTML so readers need not execute JavaScript to understand the page.
Navigation landmarks
Observed passagent.landmarks · https://zer.foo/framework/
Evidence: Main landmark: true; navigation landmark: true
Next step: Use main and navigation landmarks to identify page content and navigation.
Named interactive controls
Observed passagent.controls · https://zer.foo/framework/
Evidence: 6 of 6 controls have observed names; interactions not executed
Next step: Give interactive controls accessible names through visible labels or appropriate ARIA attributes.
Named navigation links
Observed passagent.links · https://zer.foo/framework/
Evidence: 36 of 36 links have observed names
Next step: Give navigation links meaningful visible or accessible names.
Initial HTML readability
Observed pass · Foundationalagent.access · https://zer.foo/performance/
Evidence: 331 initial-HTML words observed; visual rendering and hidden-text accuracy not verified
Next step: Serve meaningful public text in initial HTML so readers need not execute JavaScript to understand the page.
Navigation landmarks
Observed passagent.landmarks · https://zer.foo/performance/
Evidence: Main landmark: true; navigation landmark: true
Next step: Use main and navigation landmarks to identify page content and navigation.
Named interactive controls
Observed passagent.controls · https://zer.foo/performance/
Evidence: 2 of 2 controls have observed names; interactions not executed
Next step: Give interactive controls accessible names through visible labels or appropriate ARIA attributes.
Named navigation links
Observed passagent.links · https://zer.foo/performance/
Evidence: 34 of 34 links have observed names
Next step: Give navigation links meaningful visible or accessible names.
Initial HTML readability
Observed pass · Foundationalagent.access · https://zer.foo/how-it-works/
Evidence: 239 initial-HTML words observed; visual rendering and hidden-text accuracy not verified
Next step: Serve meaningful public text in initial HTML so readers need not execute JavaScript to understand the page.
Navigation landmarks
Observed passagent.landmarks · https://zer.foo/how-it-works/
Evidence: Main landmark: true; navigation landmark: true
Next step: Use main and navigation landmarks to identify page content and navigation.
Named interactive controls
Observed passagent.controls · https://zer.foo/how-it-works/
Evidence: 3 of 3 controls have observed names; interactions not executed
Next step: Give interactive controls accessible names through visible labels or appropriate ARIA attributes.
Named navigation links
Observed passagent.links · https://zer.foo/how-it-works/
Evidence: 27 of 27 links have observed names
Next step: Give navigation links meaningful visible or accessible names.
Initial HTML readability
Observed pass · Foundationalagent.access · https://zer.foo/about/
Evidence: 239 initial-HTML words observed; visual rendering and hidden-text accuracy not verified
Next step: Serve meaningful public text in initial HTML so readers need not execute JavaScript to understand the page.
Navigation landmarks
Observed passagent.landmarks · https://zer.foo/about/
Evidence: Main landmark: true; navigation landmark: true
Next step: Use main and navigation landmarks to identify page content and navigation.
Named interactive controls
Observed passagent.controls · https://zer.foo/about/
Evidence: 2 of 2 controls have observed names; interactions not executed
Next step: Give interactive controls accessible names through visible labels or appropriate ARIA attributes.
Named navigation links
Observed passagent.links · https://zer.foo/about/
Evidence: 36 of 36 links have observed names
Next step: Give navigation links meaningful visible or accessible names.
Emerging machine-readable content
For contextagent.discovery/llms.txt · https://zer.foo/llms.txt
Evidence: HTTP 200; 2622 bytes
Next step: Consider a concise, accurate machine-readable summary if useful to your audience; presence alone does not prove agent compatibility.
Emerging machine-readable content
For contextagent.discovery/llms-full.txt · https://zer.foo/llms-full.txt
Evidence: HTTP 200; 420361 bytes
Next step: Consider a concise, accurate machine-readable summary if useful to your audience; presence alone does not prove agent compatibility.