# Tinstop Website Performance Audit

> Tinstop Website Performance Audit is a paid API for AI agents from tinstop.com, paid per call via x402, $0.1/call, status unknown (last checked 2026-09-15).

Runs a Google PageSpeed-based performance audit on a domain, returning Core Web Vitals and speed metrics for desktop and/or mobile, with optional optimization recommendations.

## Facts

- Endpoint: POST https://tinstop.com/v1/website/performance
- Price: $0.1/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tinstop-website-performance-audit-64005b0e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_dlnHIEZw-929oKN3Hzoqy

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability tinstop-website-performance-audit-64005b0e -d '<json body>'
```

Example prompt: Run a performance audit on stripe.com using the 'fixes' tier so I can see Core Web Vitals scores plus suggestions for improving load speed.

## When to prefer this

Choose this endpoint when you need programmatic, pay-per-call access to Google PageSpeed / Core Web Vitals data without setting up a Google API key or account. It is especially useful for agents that need to audit arbitrary domains on demand, get actionable fix suggestions (fixes tier), or compare desktop vs mobile performance (combined tier) as part of an automated workflow. Prefer it over direct Google PageSpeed API when you want x402 micropayment-based billing with no account management.

## Known failure modes

- Invalid or unreachable domain returns an error with no metrics
- Wrong tier value causes validation failure
- Payment failure (insufficient USDC) blocks the request via x402 protocol
- Timeout if the target domain is very slow to respond to PageSpeed probe
- Truncated response schema may omit some recommendation fields

## How this service works

Tinstop is a machine-payable Website Intelligence API for domain security and performance audits: DNS, SSL/TLS, HTTP security headers, SPF/DKIM/DMARC email authentication, and Google PageSpeed. Pay per call with x402 using USDC on Base. No accounts or API keys.

## Output

Returns an object containing the domain, audit tier, scan ID, timestamp, and performance metrics (score 0-100, LCP, INP, CLS, Speed Index, Time to Interactive) for desktop and/or mobile depending on the tier. The 'fixes' and 'combined' tiers also include an array of actionable recommendations. Results may be cached from a recent scan.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "tier": {
   "type": "string",
   "description": "Audit tier: basic ($0.10), fixes ($0.25) with suggestions, combined ($0.50) for desktop + mobile."
  },
  "domain": {
   "type": "string",
   "description": "The domain name or URL to check speed performance (e.g. 'example.com')."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "title": "PerformanceResponse",
 "required": [
  "domain",
  "tier",
  "recommendations",
  "scan_id",
  "audited_at"
 ],
 "properties": {
  "tier": {
   "type": "string",
   "title": "Tier"
  },
  "cached": {
   "type": "boolean",
   "title": "Cached",
   "default": false
  },
  "domain": {
   "type": "string",
   "title": "Domain"
  },
  "mobile": {
   "anyOf": [
    {
     "type": "object",
     "title": "PerformanceMetrics",
     "required": [
      "score",
      "lcp",
      "inp",
      "cls",
      "speed_index",
      "interactive"
     ],
     "properties": {
      "cls": {
       "type": "number",
       "title": "Cls",
       "description": "Cumulative Layout Shift layout stability metric"
      },
      "inp": {
       "type": "string",
       "title": "Inp",
       "description": "Interaction to Next Paint responsiveness metric"
      },
      "lcp": {
       "type": "string",
       "title": "Lcp",
       "description": "Largest Contentful Paint speed metric"
      },
      "score": {
       "type": "integer",
       "title": "Score",
       "description": "Overall speed performance score (0-100)"
      },
      "interactive": {
       "type": "string",
       "title": "Interactive",
       "description": "Time to Interactive score"
      },
      "speed_index": {
       "type": "string",
       "title": "Speed Index",
       "description": "Speed Index score"
      }
     }
    },
    {
     "type": "null"
    }
   ]
  },
  "desktop": {
   "anyOf": [
    {
     "type": "object",
     "title": "PerformanceMetrics",
     "required": [
      "score",
      "lcp",
      "inp",
      "cls",
      "speed_index",
      "interactive"
     ],
     "properties": {
      "cls": {
       "type": "number",
       "title": "Cls",
       "description": "Cumulative Layout Shift layout stability metric"
      },
      "inp": {
       "type": "string",
       "title": "Inp",
       "description": "Interaction to Next Paint responsiveness metric"
      },
      "lcp": {
       "type": "string",
       "title": "Lcp",
       "description": "Largest Contentful Paint speed metric"
      },
      "score": {
       "type": "integer",
       "title": "Score",
       "description": "Overall speed performance score (0-100)"
      },
      "interactive": {
       "type": "string",
       "title": "Interactive",
       "description": "Time to Interactive score"
      },
      "speed_index": {
       "type": "string",
       "title": "Speed Index",
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tinstop-website-performance-audit-64005b0e/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from tinstop.com](https://www.zero.xyz/host/tinstop.com/llms.txt)
