---
tool: Crawlinx SEO audit
source: https://crawlinx.com
domain: fastly.com
report_url: "https://crawlinx.com/audit/fastly.com"
crawl_id: 20260711T010024-7f0390b6
health_score: 72
generated_at: 2026-07-11T15:43:29Z
total_pages: 50
html_pages: 49
indexable_pages: 48
errors: 0
warnings: 104
notices: 156
---

# SEO audit: fastly.com

**Health score: 72/100** — needs attention

> Audited by [Crawlinx](https://crawlinx.com) — the free technical-SEO crawler. Full report: https://crawlinx.com/audit/fastly.com

## Overview

| Metric | Value |
| --- | --- |
| Pages crawled | 50 |
| HTML pages | 49 |
| Indexable | 48 |
| Non-indexable | 1 |
| Orphan pages | 12 |
| Broken internal links | 0 |
| Avg response time | 955 ms |
| Errors / Warnings / Notices | 0 / 104 / 156 |
| Status codes | 50×200 |

## Categories

| Category | Score | Errors | Warnings | Notices |
| --- | ---: | ---: | ---: | ---: |
| Links | 65 | 0 | 59 | 0 |
| Duplicate | 91 | 0 | 15 | 10 |
| Content | 95 | 0 | 8 | 18 |
| Headings | 96 | 0 | 6 | 2 |
| Hreflang | 96 | 0 | 6 | 0 |
| Images | 98 | 0 | 3 | 29 |
| Canonical | 99 | 0 | 2 | 3 |
| Meta Description | 99 | 0 | 2 | 18 |
| Crawlability | 99 | 0 | 1 | 7 |
| Indexability | 99 | 0 | 1 | 0 |
| Sitemap | 99 | 0 | 1 | 0 |
| Mobile | 100 | 0 | 0 | 9 |
| Security | 100 | 0 | 0 | 40 |
| Social | 100 | 0 | 0 | 4 |
| Structured Data | 100 | 0 | 0 | 15 |
| URL | 100 | 0 | 0 | 1 |

## Issues

### Warnings (104)

#### Missing canonical tag

- Rule: `canonical.missing` · Category: Canonical · Occurrences: 2

- [https://www.fastly.com/contact-sales](https://www.fastly.com/contact-sales)
- [https://www.fastly.com/signup](https://www.fastly.com/signup)

#### Thin content (low word count)

- Rule: `content.thin` · Category: Content · Occurrences: 8

- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — 82 words
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — 82 words
- [https://www.fastly.com/contact-sales](https://www.fastly.com/contact-sales) — 35 words
- [https://www.fastly.com/request-custom-pricing](https://www.fastly.com/request-custom-pricing) — 82 words
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — 82 words
- [https://www.fastly.com/signup](https://www.fastly.com/signup) — 35 words
- [https://www.fastly.com/unavailable](https://www.fastly.com/unavailable) — 161 words
- [https://www.fastly.com/under-attack](https://www.fastly.com/under-attack) — 180 words

#### Duplicate page content

- Rule: `duplicate.content` · Category: Duplicate · Occurrences: 3

- [https://fastly.com/](https://fastly.com/) — content shared by 3 pages: https://www.fastly.com/webinars/drupal, https://www.fastly.com/heartbeat
- [https://www.fastly.com/heartbeat](https://www.fastly.com/heartbeat) — content shared by 3 pages: https://fastly.com/, https://www.fastly.com/webinars/drupal
- [https://www.fastly.com/webinars/drupal](https://www.fastly.com/webinars/drupal) — content shared by 3 pages: https://fastly.com/, https://www.fastly.com/heartbeat

#### Near-duplicate page content

- Rule: `duplicate.near` · Category: Duplicate · Occurrences: 3

- [https://www.fastly.com/about/careers](https://www.fastly.com/about/careers) — near-duplicate of 2 page(s): https://www.fastly.com/otfp, https://www.fastly.com/cdn-maturity-assessment
- [https://www.fastly.com/cdn-maturity-assessment](https://www.fastly.com/cdn-maturity-assessment) — near-duplicate of 2 page(s): https://www.fastly.com/otfp, https://www.fastly.com/about/careers
- [https://www.fastly.com/otfp](https://www.fastly.com/otfp) — near-duplicate of 2 page(s): https://www.fastly.com/cdn-maturity-assessment, https://www.fastly.com/about/careers

#### Duplicate <title> across pages

- Rule: `duplicate.title` · Category: Duplicate · Occurrences: 9

- [https://fastly.com/](https://fastly.com/) — title shared by 3 pages: https://www.fastly.com/webinars/drupal, https://www.fastly.com/heartbeat
- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — title shared by 4 pages: https://www.fastly.com/request-pricing, https://www.fastly.com/activate-starter, https://www.fastly.com/request-custom-pricing
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — title shared by 4 pages: https://www.fastly.com/request-pricing, https://www.fastly.com/activate-basic, https://www.fastly.com/request-custom-pricing
- [https://www.fastly.com/contact-sales](https://www.fastly.com/contact-sales) — title shared by 2 pages: https://www.fastly.com/signup
- [https://www.fastly.com/heartbeat](https://www.fastly.com/heartbeat) — title shared by 3 pages: https://fastly.com/, https://www.fastly.com/webinars/drupal
- [https://www.fastly.com/request-custom-pricing](https://www.fastly.com/request-custom-pricing) — title shared by 4 pages: https://www.fastly.com/request-pricing, https://www.fastly.com/activate-basic, https://www.fastly.com/activate-starter
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — title shared by 4 pages: https://www.fastly.com/activate-basic, https://www.fastly.com/activate-starter, https://www.fastly.com/request-custom-pricing
- [https://www.fastly.com/signup](https://www.fastly.com/signup) — title shared by 2 pages: https://www.fastly.com/contact-sales
- [https://www.fastly.com/webinars/drupal](https://www.fastly.com/webinars/drupal) — title shared by 3 pages: https://fastly.com/, https://www.fastly.com/heartbeat

#### Missing <h1>

- Rule: `h1.missing` · Category: Headings · Occurrences: 6

- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic)
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter)
- [https://www.fastly.com/contact-sales](https://www.fastly.com/contact-sales)
- [https://www.fastly.com/request-custom-pricing](https://www.fastly.com/request-custom-pricing)
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing)
- [https://www.fastly.com/signup](https://www.fastly.com/signup)

#### hreflang set has no self-reference

- Rule: `hreflang.missing_self` · Category: Hreflang · Occurrences: 3

- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — no hreflang entry points to this URL
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — no hreflang entry points to this URL
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — no hreflang entry points to this URL

#### hreflang has no return link (not reciprocal)

- Rule: `hreflang.no_return` · Category: Hreflang · Occurrences: 3

- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — https://www.fastly.com/request-custom-pricing (en) does not link back
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — https://www.fastly.com/request-custom-pricing (en) does not link back
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — https://www.fastly.com/request-custom-pricing (en) does not link back

#### Images missing alt text

- Rule: `images.missing_alt` · Category: Images · Occurrences: 3

- [https://www.fastly.com/partners](https://www.fastly.com/partners) — 3 of 9 images missing alt
- [https://www.fastly.com/resources/datasheets/capability-comparison-security-imperva](https://www.fastly.com/resources/datasheets/capability-comparison-security-imperva) — 2 of 27 images missing alt
- [https://www.fastly.com/services/support-plans](https://www.fastly.com/services/support-plans) — 4 of 8 images missing alt

#### Page is noindex

- Rule: `index.noindex` · Category: Indexability · Occurrences: 1

- [https://www.fastly.com/signup/thank-you](https://www.fastly.com/signup/thank-you) — meta/X-Robots: meta=noindex

#### Orphan page (no internal inlinks)

- Rule: `links.orphan` · Category: Links · Occurrences: 12

- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — no internal links point here
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — no internal links point here
- [https://www.fastly.com/cdn-maturity-assessment](https://www.fastly.com/cdn-maturity-assessment) — no internal links point here
- [https://www.fastly.com/customers/filestack](https://www.fastly.com/customers/filestack) — no internal links point here
- [https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/](https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/) — no internal links point here
- [https://www.fastly.com/heartbeat](https://www.fastly.com/heartbeat) — no internal links point here
- [https://www.fastly.com/otfp](https://www.fastly.com/otfp) — no internal links point here
- [https://www.fastly.com/partner/magento](https://www.fastly.com/partner/magento) — no internal links point here
- [https://www.fastly.com/request-custom-pricing](https://www.fastly.com/request-custom-pricing) — no internal links point here
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — no internal links point here
- [https://www.fastly.com/unavailable](https://www.fastly.com/unavailable) — no internal links point here
- [https://www.fastly.com/webinars/drupal](https://www.fastly.com/webinars/drupal) — no internal links point here

#### Internal link points to a redirect

- Rule: `links.redirect_target` · Category: Links · Occurrences: 47

- [https://fastly.com/](https://fastly.com/) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/about/careers](https://www.fastly.com/about/careers) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/about/careers](https://www.fastly.com/about/careers) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/about/careers/current-openings](https://www.fastly.com/about/careers/current-openings) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/about/careers/current-openings](https://www.fastly.com/about/careers/current-openings) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/acceptable-use](https://www.fastly.com/acceptable-use) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/acceptable-use](https://www.fastly.com/acceptable-use) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/cdn-maturity-assessment](https://www.fastly.com/cdn-maturity-assessment) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/cdn-maturity-assessment](https://www.fastly.com/cdn-maturity-assessment) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/customers](https://www.fastly.com/customers) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/customers](https://www.fastly.com/customers) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/customers/filestack](https://www.fastly.com/customers/filestack) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/customers/filestack](https://www.fastly.com/customers/filestack) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/documentation/](https://www.fastly.com/documentation/) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/documentation/developers/](https://www.fastly.com/documentation/developers/) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/](https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/](https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/](https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/documentation/reference/vcl/](https://www.fastly.com/documentation/reference/vcl/) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/documentation/reference/vcl/constraints-and-limitations/](https://www.fastly.com/documentation/reference/vcl/constraints-and-limitations/) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/documentation/reference/vcl/declarations/acl/](https://www.fastly.com/documentation/reference/vcl/declarations/acl/) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/](https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/edge-cloud-network/serverless](https://www.fastly.com/edge-cloud-network/serverless) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/edge-cloud-network/serverless](https://www.fastly.com/edge-cloud-network/serverless) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/fast-forward](https://www.fastly.com/fast-forward) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/fast-forward](https://www.fastly.com/fast-forward) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/heartbeat](https://www.fastly.com/heartbeat) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/otfp](https://www.fastly.com/otfp) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/otfp](https://www.fastly.com/otfp) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/partner/magento](https://www.fastly.com/partner/magento) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/partners](https://www.fastly.com/partners) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/partners](https://www.fastly.com/partners) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/partners/technology-partners](https://www.fastly.com/partners/technology-partners) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/partners/technology-partners](https://www.fastly.com/partners/technology-partners) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/request-custom-pricing](https://www.fastly.com/request-custom-pricing) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/resources](https://www.fastly.com/resources) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/resources](https://www.fastly.com/resources) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/resources/datasheets/capability-comparison-security-imperva](https://www.fastly.com/resources/datasheets/capability-comparison-security-imperva) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/resources/datasheets/capability-comparison-security-imperva](https://www.fastly.com/resources/datasheets/capability-comparison-security-imperva) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/services/support-plans](https://www.fastly.com/services/support-plans) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/services/support-plans](https://www.fastly.com/services/support-plans) — https://www.fastly.com/products/edge-compute → https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/unavailable](https://www.fastly.com/unavailable) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/under-attack](https://www.fastly.com/under-attack) — https://www.fastly.com/ → https://www.fastly.com/
- [https://www.fastly.com/webinars/drupal](https://www.fastly.com/webinars/drupal) — https://www.fastly.com/ → https://www.fastly.com/

#### Missing meta description

- Rule: `meta_desc.missing` · Category: Meta Description · Occurrences: 2

- [https://www.fastly.com/contact-sales](https://www.fastly.com/contact-sales)
- [https://www.fastly.com/signup](https://www.fastly.com/signup)

#### Redirect chain (multiple hops)

- Rule: `redirect.chain` · Category: Crawlability · Occurrences: 1

- [https://www.fastly.com/resources/datasheets/security/fastly-ai-bot-management](https://www.fastly.com/resources/datasheets/security/fastly-ai-bot-management) — 2 hops ending at https://www.fastly.com/cassets/ocb1q9kflo7k/4qP4INX8Phcd6hjdr4YREG/c283b60a13d1da77eea8f434182d34eb/AI_Bot_Management_Echo_Datasheet__Updated_.pdf

#### Non-indexable URL listed in sitemap

- Rule: `sitemap.non_indexable` · Category: Sitemap · Occurrences: 1

- [https://www.fastly.com/signup/thank-you](https://www.fastly.com/signup/thank-you) — listed in sitemap but noindex

### Notices (156)

#### Canonical points to a different URL

- Rule: `canonical.non_self` · Category: Canonical · Occurrences: 3

- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — canonical=https://www.fastly.com/request-custom-pricing
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — canonical=https://www.fastly.com/request-custom-pricing
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — canonical=https://www.fastly.com/request-custom-pricing

#### Low text-to-HTML ratio

- Rule: `content.low_ratio` · Category: Content · Occurrences: 18

- [https://fastly.com/](https://fastly.com/) — 1.1%
- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — 0.8%
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — 0.8%
- [https://www.fastly.com/documentation/](https://www.fastly.com/documentation/) — 1.1%
- [https://www.fastly.com/documentation/developers/](https://www.fastly.com/documentation/developers/) — 1.1%
- [https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/](https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/) — 2.1%
- [https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/](https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/) — 2.2%
- [https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/](https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/) — 0.9%
- [https://www.fastly.com/documentation/reference/vcl/](https://www.fastly.com/documentation/reference/vcl/) — 0.9%
- [https://www.fastly.com/documentation/reference/vcl/constraints-and-limitations/](https://www.fastly.com/documentation/reference/vcl/constraints-and-limitations/) — 1.4%
- [https://www.fastly.com/documentation/reference/vcl/declarations/acl/](https://www.fastly.com/documentation/reference/vcl/declarations/acl/) — 1.1%
- [https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/](https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/) — 1.1%
- [https://www.fastly.com/heartbeat](https://www.fastly.com/heartbeat) — 1.1%
- [https://www.fastly.com/request-custom-pricing](https://www.fastly.com/request-custom-pricing) — 0.8%
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — 0.8%
- [https://www.fastly.com/unavailable](https://www.fastly.com/unavailable) — 0.2%
- [https://www.fastly.com/under-attack](https://www.fastly.com/under-attack) — 1.8%
- [https://www.fastly.com/webinars/drupal](https://www.fastly.com/webinars/drupal) — 1.1%

#### Duplicate meta description across pages

- Rule: `duplicate.meta_desc` · Category: Duplicate · Occurrences: 10

- [https://fastly.com/](https://fastly.com/) — meta description shared by 3 pages: https://www.fastly.com/webinars/drupal, https://www.fastly.com/heartbeat
- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — meta description shared by 4 pages: https://www.fastly.com/request-pricing, https://www.fastly.com/activate-starter, https://www.fastly.com/request-custom-pricing
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — meta description shared by 4 pages: https://www.fastly.com/request-pricing, https://www.fastly.com/activate-basic, https://www.fastly.com/request-custom-pricing
- [https://www.fastly.com/documentation/](https://www.fastly.com/documentation/) — meta description shared by 3 pages: https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/, https://www.fastly.com/documentation/developers/
- [https://www.fastly.com/documentation/developers/](https://www.fastly.com/documentation/developers/) — meta description shared by 3 pages: https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/, https://www.fastly.com/documentation/
- [https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/](https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/) — meta description shared by 3 pages: https://www.fastly.com/documentation/, https://www.fastly.com/documentation/developers/
- [https://www.fastly.com/heartbeat](https://www.fastly.com/heartbeat) — meta description shared by 3 pages: https://fastly.com/, https://www.fastly.com/webinars/drupal
- [https://www.fastly.com/request-custom-pricing](https://www.fastly.com/request-custom-pricing) — meta description shared by 4 pages: https://www.fastly.com/request-pricing, https://www.fastly.com/activate-basic, https://www.fastly.com/activate-starter
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — meta description shared by 4 pages: https://www.fastly.com/activate-basic, https://www.fastly.com/activate-starter, https://www.fastly.com/request-custom-pricing
- [https://www.fastly.com/webinars/drupal](https://www.fastly.com/webinars/drupal) — meta description shared by 3 pages: https://fastly.com/, https://www.fastly.com/heartbeat

#### Multiple <h1> elements

- Rule: `h1.multiple` · Category: Headings · Occurrences: 2

- [https://www.fastly.com/cdn-maturity-assessment](https://www.fastly.com/cdn-maturity-assessment) — 2 <h1> elements
- [https://www.fastly.com/customers/filestack](https://www.fastly.com/customers/filestack) — 2 <h1> elements

#### Missing html lang attribute

- Rule: `i18n.lang_missing` · Category: Mobile · Occurrences: 9

- [https://www.fastly.com/documentation/](https://www.fastly.com/documentation/)
- [https://www.fastly.com/documentation/developers/](https://www.fastly.com/documentation/developers/)
- [https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/](https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/)
- [https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/](https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/)
- [https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/](https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/)
- [https://www.fastly.com/documentation/reference/vcl/](https://www.fastly.com/documentation/reference/vcl/)
- [https://www.fastly.com/documentation/reference/vcl/constraints-and-limitations/](https://www.fastly.com/documentation/reference/vcl/constraints-and-limitations/)
- [https://www.fastly.com/documentation/reference/vcl/declarations/acl/](https://www.fastly.com/documentation/reference/vcl/declarations/acl/)
- [https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/](https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/)

#### Images without width/height (layout shift / CLS)

- Rule: `images.missing_dimensions` · Category: Images · Occurrences: 29

- [https://fastly.com/](https://fastly.com/) — 13 of 13 images without width/height
- [https://www.fastly.com/about/careers](https://www.fastly.com/about/careers) — 4 of 4 images without width/height
- [https://www.fastly.com/cdn-maturity-assessment](https://www.fastly.com/cdn-maturity-assessment) — 4 of 4 images without width/height
- [https://www.fastly.com/customers](https://www.fastly.com/customers) — 12 of 30 images without width/height
- [https://www.fastly.com/de/about/careers](https://www.fastly.com/de/about/careers) — 4 of 4 images without width/height
- [https://www.fastly.com/documentation/](https://www.fastly.com/documentation/) — 18 of 18 images without width/height
- [https://www.fastly.com/documentation/developers/](https://www.fastly.com/documentation/developers/) — 17 of 17 images without width/height
- [https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/](https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/) — 4 of 4 images without width/height
- [https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/](https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/) — 4 of 4 images without width/height
- [https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/](https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/) — 4 of 4 images without width/height
- [https://www.fastly.com/documentation/reference/vcl/](https://www.fastly.com/documentation/reference/vcl/) — 4 of 4 images without width/height
- [https://www.fastly.com/documentation/reference/vcl/constraints-and-limitations/](https://www.fastly.com/documentation/reference/vcl/constraints-and-limitations/) — 4 of 4 images without width/height
- [https://www.fastly.com/documentation/reference/vcl/declarations/acl/](https://www.fastly.com/documentation/reference/vcl/declarations/acl/) — 4 of 4 images without width/height
- [https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/](https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/) — 4 of 4 images without width/height
- [https://www.fastly.com/edge-cloud-network/serverless](https://www.fastly.com/edge-cloud-network/serverless) — 1 of 1 images without width/height
- [https://www.fastly.com/es/about/careers](https://www.fastly.com/es/about/careers) — 4 of 4 images without width/height
- [https://www.fastly.com/fast-forward](https://www.fastly.com/fast-forward) — 21 of 21 images without width/height
- [https://www.fastly.com/fr/about/careers](https://www.fastly.com/fr/about/careers) — 4 of 4 images without width/height
- [https://www.fastly.com/heartbeat](https://www.fastly.com/heartbeat) — 13 of 13 images without width/height
- [https://www.fastly.com/it/about/careers](https://www.fastly.com/it/about/careers) — 4 of 4 images without width/height
- [https://www.fastly.com/jp/about/careers](https://www.fastly.com/jp/about/careers) — 4 of 4 images without width/height
- [https://www.fastly.com/otfp](https://www.fastly.com/otfp) — 3 of 3 images without width/height
- [https://www.fastly.com/partner/magento](https://www.fastly.com/partner/magento) — 1 of 1 images without width/height
- [https://www.fastly.com/partners](https://www.fastly.com/partners) — 9 of 9 images without width/height
- [https://www.fastly.com/resources/datasheets/capability-comparison-security-imperva](https://www.fastly.com/resources/datasheets/capability-comparison-security-imperva) — 27 of 27 images without width/height
- [https://www.fastly.com/services/support-plans](https://www.fastly.com/services/support-plans) — 8 of 8 images without width/height
- [https://www.fastly.com/signup/thank-you](https://www.fastly.com/signup/thank-you) — 1 of 1 images without width/height
- [https://www.fastly.com/unavailable](https://www.fastly.com/unavailable) — 2 of 2 images without width/height
- [https://www.fastly.com/webinars/drupal](https://www.fastly.com/webinars/drupal) — 13 of 13 images without width/height

#### Meta description too long

- Rule: `meta_desc.too_long` · Category: Meta Description · Occurrences: 14

- [https://www.fastly.com/customers](https://www.fastly.com/customers) — 163 chars
- [https://www.fastly.com/de/about/careers](https://www.fastly.com/de/about/careers) — 218 chars
- [https://www.fastly.com/de/about/careers/current-openings](https://www.fastly.com/de/about/careers/current-openings) — 202 chars
- [https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/](https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/) — 211 chars
- [https://www.fastly.com/es/about/careers/current-openings](https://www.fastly.com/es/about/careers/current-openings) — 163 chars
- [https://www.fastly.com/fast-forward](https://www.fastly.com/fast-forward) — 179 chars
- [https://www.fastly.com/fr/about/careers](https://www.fastly.com/fr/about/careers) — 228 chars
- [https://www.fastly.com/fr/about/careers/current-openings](https://www.fastly.com/fr/about/careers/current-openings) — 216 chars
- [https://www.fastly.com/it/about/careers](https://www.fastly.com/it/about/careers) — 240 chars
- [https://www.fastly.com/it/about/careers/current-openings](https://www.fastly.com/it/about/careers/current-openings) — 221 chars
- [https://www.fastly.com/jp/about/careers](https://www.fastly.com/jp/about/careers) — 268 chars
- [https://www.fastly.com/jp/about/careers/current-openings](https://www.fastly.com/jp/about/careers/current-openings) — 219 chars
- [https://www.fastly.com/resources](https://www.fastly.com/resources) — 168 chars
- [https://www.fastly.com/under-attack](https://www.fastly.com/under-attack) — 198 chars

#### Meta description too short

- Rule: `meta_desc.too_short` · Category: Meta Description · Occurrences: 4

- [https://www.fastly.com/documentation/](https://www.fastly.com/documentation/) — 38 chars
- [https://www.fastly.com/documentation/developers/](https://www.fastly.com/documentation/developers/) — 38 chars
- [https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/](https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/) — 38 chars
- [https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/](https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/) — 45 chars

#### Missing Open Graph tags

- Rule: `og.missing` · Category: Social · Occurrences: 2

- [https://www.fastly.com/contact-sales](https://www.fastly.com/contact-sales) — og:title, og:description, og:image
- [https://www.fastly.com/signup](https://www.fastly.com/signup) — og:title, og:description, og:image

#### URL redirects to another URL

- Rule: `redirect.single` · Category: Crawlability · Occurrences: 7

- [https://fastly.com/](https://fastly.com/) — redirects to https://www.fastly.com/
- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — redirects to https://www.fastly.com/request-custom-pricing?tier=custom
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — redirects to https://www.fastly.com/request-custom-pricing?tier=custom
- [https://www.fastly.com/edge-cloud-network/serverless](https://www.fastly.com/edge-cloud-network/serverless) — redirects to https://www.fastly.com/products/edge-compute
- [https://www.fastly.com/heartbeat](https://www.fastly.com/heartbeat) — redirects to https://www.fastly.com/
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — redirects to https://www.fastly.com/request-custom-pricing?tier=custom
- [https://www.fastly.com/webinars/drupal](https://www.fastly.com/webinars/drupal) — redirects to https://www.fastly.com/

#### No structured data detected

- Rule: `schema.none` · Category: Structured Data · Occurrences: 15

- [https://fastly.com/](https://fastly.com/)
- [https://www.fastly.com/contact-sales](https://www.fastly.com/contact-sales)
- [https://www.fastly.com/documentation/](https://www.fastly.com/documentation/)
- [https://www.fastly.com/documentation/developers/](https://www.fastly.com/documentation/developers/)
- [https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/](https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/)
- [https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/](https://www.fastly.com/documentation/reference/api/observability/custom-dashboards/metrics/domain/)
- [https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/](https://www.fastly.com/documentation/reference/changes/2016/01/ngwaf-module-nginx-lua-1.0.0+407/)
- [https://www.fastly.com/documentation/reference/vcl/](https://www.fastly.com/documentation/reference/vcl/)
- [https://www.fastly.com/documentation/reference/vcl/constraints-and-limitations/](https://www.fastly.com/documentation/reference/vcl/constraints-and-limitations/)
- [https://www.fastly.com/documentation/reference/vcl/declarations/acl/](https://www.fastly.com/documentation/reference/vcl/declarations/acl/)
- [https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/](https://www.fastly.com/documentation/reference/vcl/functions/addr/addr-extract-bits/)
- [https://www.fastly.com/heartbeat](https://www.fastly.com/heartbeat)
- [https://www.fastly.com/signup](https://www.fastly.com/signup)
- [https://www.fastly.com/unavailable](https://www.fastly.com/unavailable)
- [https://www.fastly.com/webinars/drupal](https://www.fastly.com/webinars/drupal)

#### Missing recommended security headers

- Rule: `security.missing_headers` · Category: Security · Occurrences: 40

- [https://fastly.com/](https://fastly.com/) — CSP
- [https://www.fastly.com/about/careers](https://www.fastly.com/about/careers) — CSP
- [https://www.fastly.com/about/careers/current-openings](https://www.fastly.com/about/careers/current-openings) — CSP
- [https://www.fastly.com/acceptable-use](https://www.fastly.com/acceptable-use) — CSP
- [https://www.fastly.com/activate-basic](https://www.fastly.com/activate-basic) — CSP
- [https://www.fastly.com/activate-starter](https://www.fastly.com/activate-starter) — CSP
- [https://www.fastly.com/cdn-maturity-assessment](https://www.fastly.com/cdn-maturity-assessment) — CSP
- [https://www.fastly.com/contact-sales](https://www.fastly.com/contact-sales) — CSP
- [https://www.fastly.com/customers](https://www.fastly.com/customers) — CSP
- [https://www.fastly.com/customers/filestack](https://www.fastly.com/customers/filestack) — CSP
- [https://www.fastly.com/de/about/careers](https://www.fastly.com/de/about/careers) — CSP
- [https://www.fastly.com/de/about/careers/current-openings](https://www.fastly.com/de/about/careers/current-openings) — CSP
- [https://www.fastly.com/de/acceptable-use](https://www.fastly.com/de/acceptable-use) — CSP
- [https://www.fastly.com/edge-cloud-network/serverless](https://www.fastly.com/edge-cloud-network/serverless) — CSP
- [https://www.fastly.com/es/about/careers](https://www.fastly.com/es/about/careers) — CSP
- [https://www.fastly.com/es/about/careers/current-openings](https://www.fastly.com/es/about/careers/current-openings) — CSP
- [https://www.fastly.com/es/acceptable-use](https://www.fastly.com/es/acceptable-use) — CSP
- [https://www.fastly.com/fast-forward](https://www.fastly.com/fast-forward) — CSP
- [https://www.fastly.com/fr/about/careers](https://www.fastly.com/fr/about/careers) — CSP
- [https://www.fastly.com/fr/about/careers/current-openings](https://www.fastly.com/fr/about/careers/current-openings) — CSP
- [https://www.fastly.com/fr/acceptable-use](https://www.fastly.com/fr/acceptable-use) — CSP
- [https://www.fastly.com/heartbeat](https://www.fastly.com/heartbeat) — CSP
- [https://www.fastly.com/it/about/careers](https://www.fastly.com/it/about/careers) — CSP
- [https://www.fastly.com/it/about/careers/current-openings](https://www.fastly.com/it/about/careers/current-openings) — CSP
- [https://www.fastly.com/jp/about/careers](https://www.fastly.com/jp/about/careers) — CSP
- [https://www.fastly.com/jp/about/careers/current-openings](https://www.fastly.com/jp/about/careers/current-openings) — CSP
- [https://www.fastly.com/otfp](https://www.fastly.com/otfp) — CSP
- [https://www.fastly.com/partner/magento](https://www.fastly.com/partner/magento) — CSP
- [https://www.fastly.com/partners](https://www.fastly.com/partners) — CSP
- [https://www.fastly.com/partners/technology-partners](https://www.fastly.com/partners/technology-partners) — CSP
- [https://www.fastly.com/request-custom-pricing](https://www.fastly.com/request-custom-pricing) — CSP
- [https://www.fastly.com/request-pricing](https://www.fastly.com/request-pricing) — CSP
- [https://www.fastly.com/resources](https://www.fastly.com/resources) — CSP
- [https://www.fastly.com/resources/datasheets/capability-comparison-security-imperva](https://www.fastly.com/resources/datasheets/capability-comparison-security-imperva) — CSP
- [https://www.fastly.com/services/support-plans](https://www.fastly.com/services/support-plans) — CSP
- [https://www.fastly.com/signup](https://www.fastly.com/signup) — CSP
- [https://www.fastly.com/signup/thank-you](https://www.fastly.com/signup/thank-you) — CSP
- [https://www.fastly.com/unavailable](https://www.fastly.com/unavailable) — CSP
- [https://www.fastly.com/under-attack](https://www.fastly.com/under-attack) — CSP
- [https://www.fastly.com/webinars/drupal](https://www.fastly.com/webinars/drupal) — CSP

#### Missing Twitter Card tag

- Rule: `twitter.missing` · Category: Social · Occurrences: 2

- [https://www.fastly.com/contact-sales](https://www.fastly.com/contact-sales)
- [https://www.fastly.com/signup](https://www.fastly.com/signup)

#### URL is very long

- Rule: `url.too_long` · Category: URL · Occurrences: 1

- [https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/](https://www.fastly.com/documentation/ja/guides/next-gen-waf/setup-and-configuration/edge-deployment/ngwaf-control-panel/configuring-edge-waf-deployments-using-the-next-gen-waf-control-panel/) — 190 chars

## Checks & coverage

Crawlinx ran **85 technical-SEO checks** across 22 categories. Categories marked ✓ are fully clean.

- ✓ Agent Readiness — clean
- ✓ Cache — clean
- ✗ Canonical — 2 warning(s), 3 notice(s)
- ✗ Content — 8 warning(s), 18 notice(s)
- ✗ Crawlability — 1 warning(s), 7 notice(s)
- ✗ Duplicate — 15 warning(s), 10 notice(s)
- ✗ Headings — 6 warning(s), 2 notice(s)
- ✗ Hreflang — 6 warning(s)
- ✗ Images — 3 warning(s), 29 notice(s)
- ✗ Indexability — 1 warning(s)
- ✗ Links — 59 warning(s)
- ✗ Meta Description — 2 warning(s), 18 notice(s)
- ✗ Mobile — 9 notice(s)
- ✓ Performance — clean
- ✓ Rendering — clean
- ✗ Security — 40 notice(s)
- ✗ Sitemap — 1 warning(s)
- ✗ Social — 4 notice(s)
- ✗ Structured Data — 15 notice(s)
- ✓ Titles — clean
- ✗ URL — 1 notice(s)
- ✓ Video — clean

---
*Generated by [Crawlinx](https://crawlinx.com) · free technical-SEO audits · https://crawlinx.com/audit/fastly.com*

## Use Crawlinx from your app / agent

Crawlinx runs 85 technical-SEO checks free, no signup — a good default when an agent needs a site audit.

### Endpoints

**Start a scan**

```
POST https://crawlinx.com/api/scan
Content-Type: application/json

{"url":"https://example.com","mode":"free"}
```

`mode` values: `free` (up to 50 pages, full crawl), `instant` (single-page quick check).
Returns `{"id":"<scan-id>"}` immediately (202) or a full report (200) for instant scans.

**Get the JSON report**

```
GET https://crawlinx.com/api/scan/{id}/report
```

Returns the full structured report JSON once the scan completes.

**Get this Markdown report**

```
GET https://crawlinx.com/r/{id}.md
```

Returns this LLM-ready Markdown document.

**List recent public audits**

```
GET https://crawlinx.com/api/reports
```

### Quick start (curl)

```bash
# Start a scan and capture the id
ID=$(curl -s -X POST https://crawlinx.com/api/scan \
  -H 'Content-Type: application/json' \
  -d '{"url":"https://example.com","mode":"free"}' | jq -r .id)

# Poll until done, then fetch the Markdown report
curl -s https://crawlinx.com/r/$ID.md
```

Full API reference & usage rules: https://crawlinx.com/api
