> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vortexiq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Strapi audit profile, Vortex IQ

> What the Vortex IQ Strapi health audit checks: Strapi: Auth, Core Web Vitals, Lighthouse Hygiene & Performance-to-Engagement

**[Nerve Centre KPIs](/nerve-centre/kpi-cards/strapi) · [Audit Profile](/nerve-centre/kpi-cards/strapi/audit) · [Sentiment Settings](/nerve-centre/kpi-cards/strapi/sentiment)**

A Strapi-rendered site's content state matters to a merchant only when it's tied to how fast and crawlable the public surface is, and to whether that performance is costing engagement. This audit answers: (1) is the Strapi API token + public URL healthy and the PageSpeed probe reachable, (2) are the Core Web Vitals passing for real users (mobile field data), (3) are the Lighthouse lab scores and page-weight budgets in hygiene, and (4) is poor performance on high-traffic pages eroding sessions/revenue via the analytics and search-console siblings.

## What this audit checks

### Authentication & access

* Strapi API token valid (auth on /api/users/me)
* Public site URL reachable and returns 2xx (PageSpeed can fetch it)
* PageSpeed Insights runPagespeed returns a CrUX field record for the origin (else field cards degrade to lab-only)
* API token has read scope on at least one content-type (content dimension available)

### Core Web Vitals (field, mobile)

* CWV pass rate below 50% (most real users having a poor experience)
* LCP p75 above 4000ms (poor) on mobile
* INP p75 above 500ms (poor) on mobile
* CLS p75 above 0.25 (poor) on mobile
* TTFB p75 above 1800ms - headless API-call cascade slowing first byte

### Lighthouse & page-weight hygiene (lab)

* Lighthouse performance score below 50 (mobile)
* SEO score below 70 (crawlability / markup regression on rendered pages)
* Accessibility score below 70
* Total page weight above 3MB (over budget)
* Render-blocking resources wasting more than 500ms
* Total Blocking Time above 600ms (heavy main-thread JS from the theme/bundle)

### Content delivery & freshness

* Published entries with no updatedAt change in 12 months on high-traffic pages (stale rendered content)
* Single-type entry missing required SEO/meta component (thin rendered head)
* Draft entries published count vs prior period (publishing cadence)

### Cross-channel: performance-to-engagement (the killer area)

* Origin CWV pass rate \< 50% AND analytics sibling bounce rate trending up - performance eroding engagement
* High-traffic pages (GSC / analytics sibling) failing CWV - perf regression on pages that matter
* Render-blocking / TTFB regression coincides with a conversion drop on the commerce sibling
* Slow Strapi-rendered product/landing pages advertised by an ads sibling - paying for traffic landing on a slow page

## Severity thresholds

| Signal                     | Warn    | Critical |
| -------------------------- | ------- | -------- |
| `cwv_pass_rate_pct`        | 75      | 50       |
| `lcp_p75_ms`               | 2500    | 4000     |
| `inp_p75_ms`               | 200     | 500      |
| `cls_p75`                  | 0.1     | 0.25     |
| `ttfb_p75_ms`              | 800     | 1800     |
| `lighthouse_performance`   | 90      | 50       |
| `lighthouse_seo`           | 90      | 70       |
| `lighthouse_accessibility` | 90      | 70       |
| `total_byte_weight`        | 1572864 | 3145728  |
| `render_blocking_ms`       | 200     | 500      |
| `total_blocking_time_ms`   | 200     | 600      |

## Data sources

* `GET {base_url}/api/users/me` - Auth + token scope sanity
* `GET {base_url}/api/content-type-builder/content-types` - Content-type inventory (kind, displayName, counts)
* `GET {base_url}/api/{content_type}` - Entry inventory: publishedAt / updatedAt for freshness + cadence
* `GET https://pagespeedonline.googleapis.com/pagespeedonline/v5/runPagespeed` - CrUX field record + Lighthouse lab result + category scores for the public site URL
