AEO Audit for popcorncine.io
Target: https://www.popcorncine.io/
Score: 37 / 100
Generated: 2026-05-21T01:58:12.622Z
Pages crawled: 7
Findings: 26 pass · 83 warn · 7 fail · 0 unknown
1. Crawl Summary
- ✅ Fetched 7 of 7 pages successfully Target: https://www.popcorncine.io
2. Data Found
| Data Point | Found? | Source | Notes |
|---|---|---|---|
| Pricing | No | — | — |
| Customer logos | No | — | — |
| Social proof | No | — | — |
| Recent launches | No | — | — |
| Blog post activity | No | — | — |
| New hires | Yes | Homepage | join us |
| Headline copy | Yes | Homepage | Predict Movie SuccessEarn CINE Tokens |
| Positioning | No | — | — |
| Executive team | No | — | — |
| Product/service descriptions | Yes | Homepage | From meta description |
| Case studies or testimonials | No | — | — |
| Contact/demo/signup paths | No | — | — |
3. Homepage Audit
- ⚠️ Short meta description (43 chars) Aim for 50–160 chars. Restate your value prop in plain language.
- ⚠️ Missing canonical link Add
<link rel="canonical" href="https://your-domain">to prevent dup-content confusion. - ❌ Open Graph: missing title, description, image
- ⚠️ No Twitter Card tags Add twitter:card, twitter:title, twitter:description, twitter:image for richer previews in social and AI agent surfaces.
- ✅ Homepage fetched successfully HTTP 200 · 50899 bytes · 344ms
- ✅ Page load time: 0.34s Fast — well within AI crawler budgets.
- ✅ declared
- ✅ Single H1 Predict Movie SuccessEarn CINE Tokens
- ✅
<title>present (39 chars) - ✅ Critical content is server-rendered Raw and rendered text are within 50% of each other.
- ✅ Alt text coverage: 100% 7/7 images have alt text.
- ✅ Content volume: 407 words Substantive content — AI models have enough to summarize and recommend.
- ✅ Heading structure: 19 (h1:1, h2:2, h3:16) Multiple headings help AI chunk and outline your page.
- ✅ Internal links: 16 16 internal + 7 external links help crawlers navigate.
- ✅ Favicon declared
4. Content Quality
- ⚠️ 1 heading-level skip(s) Heading levels jump (e.g. h2 → h4). AI outline parsers expect monotonic nesting.
- ⚠️ Snippet-ready blocks: 1 (ul:1, ol:0, table:0) Add bullet lists, numbered steps, or a comparison table. Answer engines prefer structured blocks over prose.
- ⚠️ No date signal found Add or article:published_time meta. AI ranking weights freshness.
- ⚠️ Text-to-HTML ratio: 6.7% Low text density — most of the response is markup/script.
- ⚠️ No author byline found Add
<meta name="author" content="Name">or a visible byline withrel="author". Strengthens E-E-A-T signals. - ✅ 1 question-style heading(s) Questions in headings map cleanly to user queries. Pair with FAQPage JSON-LD for max lift.
5. 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.
6. Links & Images
- ❌ 2 broken link(s) in first 13 · timeout — https://x.com/EarnTV_ · 999 — https://www.linkedin.com/in/pascalvallat
- ⚠️ Modern image formats: 0% (0/7 webp/avif) 5 legacy (png/jpg/gif) image(s). Convert hero/above-the-fold images to WebP or AVIF.
- ⚠️ Lazy loading: 29% (2/7) Add
loading="lazy"to below-the-fold images to reduce initial payload. - ❌ Explicit dimensions: 29% (2/7) Add width and height attributes on tags to prevent CLS.
- ⚠️ Responsive srcset: 1/7 Use srcset/sizes to serve appropriately-sized images on mobile. Reduces wasted bytes.
- ✅ External nofollow: 0% (0/7) Healthy mix of follow and nofollow outbound links.
7. Performance
- ⚠️ 1 render-blocking script(s) in Move non-critical scripts to end of or add
defer/async. - ✅ Page size: 50 KB Compact HTML payload — well within AI crawler limits.
- ✅ Resource requests: 23 (scripts:15, css:1, img:7) Reasonable request count.
- ✅ Inline JS+CSS bulk: 6 KB Inline payload is modest.
- ✅ Response time: 344ms Fast first response.
- ✅ Cache-Control set (CDN: Vercel) Cache-Control: public, max-age=0, must-revalidate CDN detected: Vercel
8. Security
- ⚠️ Content-Security-Policy missing Define a CSP to limit script sources — large reduction in XSS surface.
- ⚠️ X-Frame-Options missing Add
X-Frame-Options: SAMEORIGIN(or use CSP frame-ancestors) to prevent clickjacking. - ⚠️ X-Content-Type-Options missing Add
X-Content-Type-Options: nosniffto block MIME-type sniffing. - ⚠️ Referrer-Policy missing Add
Referrer-Policy: strict-origin-when-cross-originfor safer referrers. - ⚠️ Permissions-Policy missing Restrict browser features (camera, mic, geolocation) you don't use.
- ✅ Served over HTTPS
- ✅ No mixed content detected
- ✅ HSTS set max-age=63072000
9. 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.
10. 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.
11. Positioning Clarity
- ❌ No discoverable CTA Add a clearly-labeled Contact, Demo, or Sign up link to the nav or hero.
- ⚠️ 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.
- ⚠️ Value-prop language not detected Pages with phrases like 'we help X', 'platform for Y', 'built for Z' are easier for LLMs to summarize.
- ✅ H1 communicates value Predict Movie SuccessEarn CINE Tokens
12. Missing or Hard-to-Find Information
- ❌ 9 data point(s) could not be found from public pages · Pricing · Customer logos · Social proof · Recent launches · Blog post activity · Positioning · Executive team · Case studies or testimonials · Contact/demo/signup paths
13. Recommended Fixes
⚠️ Fix broken homepage links We HEAD-probed the first 20 unique homepage links and found 4xx/5xx responses. Repair or remove them — broken links erode crawler trust.
⚠️ Add a discoverable CTA Place 'Contact sales' or 'Start free' in the top-right of the nav. LLMs cite the visible label.
⚠️ 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.
⚠️ Fix heading-level skips Don't jump from h2 to h4. AI outline parsers expect monotonic nesting — keep heading depth contiguous.
⚠️ Add lists or comparison tables Answer engines lift bulleted lists, numbered steps, and tables verbatim. Add at least 2 snippet-ready blocks to the homepage.
⚠️ Publish a date signal Add
<time datetime="2026-05-17">or<meta property="article:published_time">. AI ranking heavily weights freshness.⚠️ Raise your text-to-HTML ratio Strip unused inline scripts/styles and move large bundles to external files. AI crawlers struggle when most of the response is markup.
⚠️ Add a meta description 50–160 chars. Repeat your core value prop in plain language; this often becomes the AI snippet.
<meta name="description" content="CrawlProof shows you exactly how AI crawlers see your site, then tells you what to fix." />⚠️ Add a canonical link Prevents dup-content drift and tells AI crawlers which URL is authoritative.
<link rel="canonical" href="https://yoursite.com/" />⚠️ Complete Open Graph tags AI bots use OG for fast disambiguation. Add all four:
<meta property="og:title" content="Your Page Title" /> <meta property="og:description" content="50–160 char description of this page." /> <meta property="og:image" content="https://yoursite.com/og-image.jpg" /> <meta property="og:url" content="https://yoursite.com/" /> <meta property="og:type" content="website" /> <meta property="og:site_name" content="YourSite" />⚠️ 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" />⚠️ Use modern image formats Serve WebP or AVIF for hero/above-the-fold images. Keep legacy PNG/JPG only as fallbacks.
⚠️ Lazy-load below-the-fold images Add
loading="lazy"on<img>tags that aren't in the initial viewport. Reduces first-paint payload.⚠️ Set width/height on images Explicit dimensions prevent Cumulative Layout Shift and help AI extractors reserve space correctly.
⚠️ 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⚠️ Eliminate render-blocking head scripts Add
deferorasyncto any<script src="…">in<head>, or move it to the end of<body>.⚠️ State your audience explicitly Use phrases like 'Built for B2B SaaS marketing teams' on the homepage and About page.
⚠️ Define a Content-Security-Policy Start with
Content-Security-Policy-Report-Onlyto learn safe sources, then enforce. Cuts XSS blast radius.⚠️ Declare an author byline Add
<meta name="author" content="Name">or a visible byline withrel="author". Combine with Person JSON-LD for E-E-A-T.⚠️ Add X-Frame-Options
X-Frame-Options: SAMEORIGIN(or CSPframe-ancestors) blocks clickjacking via iframe embeds.⚠️ Add X-Content-Type-Options
X-Content-Type-Options: nosniffprevents browsers from MIME-sniffing responses.⚠️ Set a Referrer-Policy
Referrer-Policy: strict-origin-when-cross-originis a safe default.⚠️ Set a Permissions-Policy Restrict browser features you don't use, e.g.
Permissions-Policy: camera=(), microphone=(), geolocation=().⚠️ Use srcset/sizes for responsive images Serve appropriately-sized images per viewport — saves bytes on mobile crawls.
14. Priority To-Do List
P1 — Fix broken homepage links We HEAD-probed the first 20 unique homepage links and found 4xx/5xx responses. Repair or remove them — broken links erode crawler trust.
P1 — Add a discoverable CTA Place 'Contact sales' or 'Start free' in the top-right of the nav. LLMs cite the visible label.
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 — Fix heading-level skips Don't jump from h2 to h4. AI outline parsers expect monotonic nesting — keep heading depth contiguous.
P3 — Add lists or comparison tables Answer engines lift bulleted lists, numbered steps, and tables verbatim. Add at least 2 snippet-ready blocks to the homepage.
P3 — Publish a date signal Add
<time datetime="2026-05-17">or<meta property="article:published_time">. AI ranking heavily weights freshness.P3 — Raise your text-to-HTML ratio Strip unused inline scripts/styles and move large bundles to external files. AI crawlers struggle when most of the response is markup.
P3 — Add a meta description 50–160 chars. Repeat your core value prop in plain language; this often becomes the AI snippet.
```html <meta name="description" content="CrawlProof shows you exactly how AI crawlers see your site, then tells you what to fix." /> ```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 — Complete Open Graph tags AI bots use OG for fast disambiguation. Add all four:
```html <meta property="og:title" content="Your Page Title" /> <meta property="og:description" content="50–160 char description of this page." /> <meta property="og:image" content="https://yoursite.com/og-image.jpg" /> <meta property="og:url" content="https://yoursite.com/" /> <meta property="og:type" content="website" /> <meta property="og:site_name" content="YourSite" /> ```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 — Use modern image formats Serve WebP or AVIF for hero/above-the-fold images. Keep legacy PNG/JPG only as fallbacks.
P3 — Lazy-load below-the-fold images Add
loading="lazy"on<img>tags that aren't in the initial viewport. Reduces first-paint payload.P3 — Set width/height on images Explicit dimensions prevent Cumulative Layout Shift and help AI extractors reserve space correctly.
P3 — Add /skill.md Describe what an agent can do with your site (e.g., 'Search docs', 'Look up pricing'). Useful for agentic flows.
Report by CrawlProof. Reusable after every major website change.