AEO Audit for flutter.dev
Target: https://flutter.dev/
Score: 39 / 100
Generated: 2026-05-13T08:44:23.278Z
Pages crawled: 9
Findings: 21 pass · 35 warn · 3 fail · 0 unknown
1. Crawl Summary
- ✅ Fetched 9 of 9 pages successfully Target: https://flutter.dev
2. Data Found
| Data Point | Found? | Source | Notes |
|---|---|---|---|
| Pricing | No | — | — |
| Customer logos | Yes | Homepage | trusted by |
| Social proof | Yes | Homepage | trusted by |
| Recent launches | No | Navigation links | — |
| Blog post activity | No | Navigation links | — |
| New hires | No | — | Often only on a /blog/team or LinkedIn page |
| Headline copy | Yes | Homepage | Build for any screen |
| Positioning | No | — | — |
| Executive team | No | — | — |
| Product/service descriptions | Yes | Homepage | From meta description |
| Case studies or testimonials | No | — | — |
| Contact/demo/signup paths | Yes | Navigation links | — |
3. Homepage Audit
- ⚠️ Missing canonical link Add
<link rel="canonical" href="https://your-domain">to prevent dup-content confusion. - ⚠️ Twitter Card: missing title, description, image Add twitter:card, twitter:title, twitter:description, twitter:image for richer previews in social and AI agent surfaces.
- ✅ Homepage fetched successfully HTTP 200 · 69946 bytes · 136ms
- ✅ Page load time: 0.14s Fast — well within AI crawler budgets.
- ✅ declared
- ✅ Single H1 Build for any screen
- ✅
<title>present (35 chars) - ✅ Meta description present (152 chars)
- ✅ Open Graph tags complete
- ✅ Critical content is server-rendered Raw and rendered text are within 69% of each other.
- ✅ Alt text coverage: 100% 43/43 images have alt text.
- ✅ Content volume: 526 words Substantive content — AI models have enough to summarize and recommend.
- ✅ Heading structure: 17 (h1:1, h2:5, h3:11) Multiple headings help AI chunk and outline your page.
- ✅ Internal links: 35 35 internal + 63 external links help crawlers navigate.
4. Schema / Structured Data Audit
- ❌ No JSON-LD structured data found Add JSON-LD blocks (Organization, SoftwareApplication, FAQPage, BreadcrumbList) so AI answer engines can ingest your data without guessing.
5. robots.txt and sitemap.xml Audit
- ❌ sitemap.xml not found Add /sitemap.xml — required for reliable AI/SERP discovery.
- ⚠️ robots.txt not found No /robots.txt was reachable. Add one explicitly — silence is read differently by different crawlers, and you lose the chance to control AI bots.
6. LLM / AI Crawler Accessibility
- ⚠️ llms.txt missing Add /llms.txt — a concise, link-rich summary that helps LLMs orient on your site.
- ⚠️ skill.md missing Add /skill.md describing what your site lets agents do — speeds up agent task routing.
- ⚠️ /.well-known/security.txt missing Publish a /.well-known/security.txt with at least a Contact: line. Crawlers and security researchers expect it; AI systems use it as a trust signal.
7. Positioning Clarity
- ⚠️ No clear About/Team link Add an About or Team link in the nav or footer so LLMs can identify the company.
- ⚠️ No pricing/plans link found AI summaries commonly include pricing. Add a /pricing page even if pricing is custom.
- ✅ H1 communicates value Build for any screen
- ✅ Value-prop language detected
- ✅ Contact / signup path discoverable
8. Missing or Hard-to-Find Information
- ❌ 7 data point(s) could not be found from public pages · Pricing · Recent launches · Blog post activity · New hires · Positioning · Executive team · Case studies or testimonials
9. Recommended Fixes
⚠️ Publish a sitemap.xml Generate /sitemap.xml automatically (Next.js: app/sitemap.ts). Include every canonical URL.
⚠️ Add JSON-LD structured data Start with Organization on the root layout and SoftwareApplication or Product on /pricing. Add FAQPage on any FAQ section.
⚠️ Add /llms.txt A short Markdown-flavored summary at the root. Include your H1, value prop, top 5–10 links, and pricing summary.
⚠️ Make your About/Team page reachable Add a top-nav or footer link to /about or /team so LLMs can identify the entity behind the site.
⚠️ Add a /pricing page Even contact-us pricing benefits from a /pricing page that LLMs can link to in answers.
⚠️ Create a robots.txt Even a minimal robots.txt is better than none. Always reference your Sitemap and explicitly address AI bots.
⚠️ Add a canonical link Prevents dup-content drift and tells AI crawlers which URL is authoritative.
<link rel="canonical" href="https://yoursite.com/" />⚠️ Add Twitter Card meta tags Used by social platforms and AI agents for richer previews.
<meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Your Page Title" /> <meta name="twitter:description" content="50–160 char description." /> <meta name="twitter:image" content="https://yoursite.com/og-image.jpg" />⚠️ Add /skill.md Describe what an agent can do with your site (e.g., 'Search docs', 'Look up pricing'). Useful for agentic flows.
⚠️ Publish /.well-known/security.txt A security contact builds trust with crawlers and researchers. Minimal example:
Contact: mailto:security@yourdomain.com Expires: 2027-01-01T00:00:00.000Z Preferred-Languages: en
10. Priority To-Do List
P1 — Publish a sitemap.xml Generate /sitemap.xml automatically (Next.js: app/sitemap.ts). Include every canonical URL.
P1 — Add JSON-LD structured data Start with Organization on the root layout and SoftwareApplication or Product on /pricing. Add FAQPage on any FAQ section.
P2 — Add /llms.txt A short Markdown-flavored summary at the root. Include your H1, value prop, top 5–10 links, and pricing summary.
P2 — Make your About/Team page reachable Add a top-nav or footer link to /about or /team so LLMs can identify the entity behind the site.
P2 — Add a /pricing page Even contact-us pricing benefits from a /pricing page that LLMs can link to in answers.
P2 — Create a robots.txt Even a minimal robots.txt is better than none. Always reference your Sitemap and explicitly address AI bots.
P3 — Add a canonical link Prevents dup-content drift and tells AI crawlers which URL is authoritative.
```html <link rel="canonical" href="https://yoursite.com/" /> ```P3 — Add Twitter Card meta tags Used by social platforms and AI agents for richer previews.
```html <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Your Page Title" /> <meta name="twitter:description" content="50–160 char description." /> <meta name="twitter:image" content="https://yoursite.com/og-image.jpg" /> ```P3 — Add /skill.md Describe what an agent can do with your site (e.g., 'Search docs', 'Look up pricing'). Useful for agentic flows.
P3 — Publish /.well-known/security.txt A security contact builds trust with crawlers and researchers. Minimal example:
``` Contact: mailto:security@yourdomain.com Expires: 2027-01-01T00:00:00.000Z Preferred-Languages: en ```
Report by CrawlProof. Reusable after every major website change.