# AX Check: zyte.com
Checked 2026-10-13.

Zyte docs and pricing are clear, but not every agent recalls prices
Pricing is posted as a static table with concrete per-1,000-response rates, but 1 of 3 agent sessions could only recall a vague pricing outline with no rates.

## Onboarding needs a login

## Coding sessions
All three independent sessions completed their task. Only one was reviewed on pricing recall: it produced no concrete cost figures, just a general pay-per-request outline without rates or workload assumptions, even though Zyte's pricing page states exact per-1,000-response prices and commitment tiers.

### DeepSeek V4.1 Flash
[View public run](https://agents.withgauge.com/p/runs/7a1d3b1f-3087-4792-a0d4-b02ef51254f6) · [Read transcript](https://www.ax-check.com/zyte.com/sessions/deepseek.json)

#### End-to-end onboarding
- **Onboarding needs a login**: The agent never obtained a Zyte API key. It checked the environment for credentials, found none, and explicitly built the example around a missing-key guard rather than acquiring a key itself (no self-service signup flow was attempted). No authenticated call to the hosted Zyte API was ever made; the SDK was only installed and imported locally.
  Event 6:

  ```text
  ---ENV---
  PI_GATEWAY_API_KEY=<redacted>
  GIT_CONFIG_KEY_0=<redacted>
  ```
  Event 58:

  ```text
  --- no-key run ---
  Set ZYTE_API_KEY first (see README.md).
  exit=1
  ```
  Event 67:

  ```text
  **I could not run a live request** because there is no `ZYTE_API_KEY` in this environment.
  ```

#### Hallucinated URLs
- **Guessed quickstart doc URL returned GitHub Pages 404**: The agent requested https://docs.zyte.com/zyte-api/quickstart.html and got a GitHub Pages 'file not found' page, distinct from a normal product 404. This looks like a guessed path rather than a documented link, but the agent did not rely on it afterward (it pivoted to the usage page that worked), so impact was minimal and recovery was immediate.
  Event 27:

  ```text
  Page not found · GitHub Pages 
   404 
   File not found 
   The site configured at this address does not
   contain the requested file.
  ```

#### Blockers
- **No Zyte API key available in the sandbox**: The environment had no ZYTE_API_KEY (or similar) credential, and the agent has no self-service way to sign up for one within the session. This is a credential/environment limitation, not a product defect — Zyte requires a normal signup/login to issue an API key, which is expected product behavior. As a result, the example code was written and locally validated (import, syntax, SDK install) but never exercised against the live hosted API.
  Event 6:

  ```text
  ---ENV---
  PI_GATEWAY_API_KEY=<redacted>
  GIT_CONFIG_KEY_0=<redacted>
  ```
  Event 58:

  ```text
  --- no-key run ---
  Set ZYTE_API_KEY first (see README.md).
  exit=1
  ```

#### Suggested Changes
- **Fix or redirect the dead quickstart.html path on docs.zyte.com**: Requesting https://docs.zyte.com/zyte-api/quickstart.html returns a GitHub Pages 'file not found' page instead of the real quickstart content (found instead at the usage/index.html page). Check that any internal or external links pointing to that path are updated to the current usage/quickstart location, and confirm the fix by curling the URL and expecting a 200 with real quickstart content instead of the GitHub Pages 404 shell.
  Event 27:

  ```text
  Page not found · GitHub Pages 
   404 
   File not found 
   The site configured at this address does not
   contain the requested file.
  ```

### Kimi K3
[View public run](https://agents.withgauge.com/p/runs/2a602616-c81d-4982-abca-40e5ad3b76c5) · [Read transcript](https://www.ax-check.com/zyte.com/sessions/kimi.json)

#### End-to-end onboarding
- **Onboarding needs a login**: Agent could not obtain Zyte API credentials on its own. It confirmed no ZYTE_API_KEY existed in the environment, installed the zyte-api SDK, wrote a working example script, then hit a 401 auth error when calling the live API without a key. It explicitly stated signup requires human email verification and a payment method, so it stopped and asked the product owner to supply a key rather than completing any authenticated operation.
  Event 10:

  ```text
  404
  ---
  200
  
  ```
  Event 30:

  ```text
  {"type":"/auth/not-valid","title":"Authentication Info Invalid","status":401,"detail":"No valid authentication info found in the request. Check the documentation for the correct authentication schema."}
  ```
  Event 32:

  ```text
  Keys come from a Zyte account dashboard (https://app.zyte.com). Signing up requires a human (email verification; the free trial historically requires a payment method), so I can't create credentials myself.
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No self-service way to obtain a Zyte API key**: Zyte requires account signup through a human-facing dashboard (email verification, and historically a payment method for the free trial). This is a missing-credentials blocker inherent to the product's auth model, not an agent error or test-environment issue — the agent correctly identified it couldn't proceed further without a human-supplied key.
  Event 32:

  ```text
  Keys come from a Zyte account dashboard (https://app.zyte.com). Signing up requires a human (email verification; the free trial historically requires a payment method), so I can't create credentials myself.
  ```
  Event 30:

  ```text
  {"type":"/auth/not-valid","title":"Authentication Info Invalid","status":401,"detail":"No valid authentication info found in the request. Check the documentation for the correct authentication schema."}
  ```

#### Suggested Changes
- **Offer a no-payment-method free trial key for quickstart testing**: The agent noted the free trial historically requires a payment method, which blocked self-serve signup for the example at /sandbox/repo/zyte_example.py. Product owner can verify by attempting the app.zyte.com signup flow anonymously and checking whether a trial key is issued without card details; if so, document that path near the quickstart referenced at https://app.zyte.com/o/api-key.
  Event 32:

  ```text
  Keys come from a Zyte account dashboard (https://app.zyte.com). Signing up requires a human (email verification; the free trial historically requires a payment method), so I can't create credentials myself.
  ```

### Qwen 3.8 Max
[View public run](https://agents.withgauge.com/p/runs/e2a0cfbc-f4ef-4a5a-b842-4bd3fe4ce4bc) · [Read transcript](https://www.ax-check.com/zyte.com/sessions/qwen.json)
No cost figure at all: only a recalled pricing outline (pay per successful request, price varies by feature, trial credit), with no rates and no workload assumptions (seq 58, seq 59)
#### End-to-end onboarding
- **Onboarding needs a login**: Agent searched the sandbox environment and filesystem for a Zyte API key, found none, and attempted a live SDK call which raised a NoApiKey exception. No credential issuance occurred during the session, so no authenticated product operation was ever performed. The agent wrote a working example script but confirmed it exits with a clean error message instead of completing a real request.
  Event 21:

  ```text
  ZYTE_API_KEY set: False
  ```
  Event 27:

  ```text
  zyte_api.apikey.NoApiKey: You must provide either a Zyte API key or an Ethereum private key.
  ```
  Event 50:

  ```text
  No ZYTE_API_KEY found.
  Set one from your Zyte dashboard, then re-run:
    export ZYTE_API_KEY='your-key' && python example_zyte.py
  exit: 2
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No Zyte API key available in the sandbox**: The environment had no ZYTE_API_KEY set and no credential-issuance path was available to the agent. This is a missing-credentials limitation of the test environment, not a product defect: Zyte's API legitimately requires an account-issued key, and the agent correctly detected and reported this rather than faking success. No live/authenticated call against the hosted Zyte API was ever completed.
  Event 21:

  ```text
  ZYTE_API_KEY set: False
  ```
  Event 27:

  ```text
  zyte_api.apikey.NoApiKey: You must provide either a Zyte API key or an Ethereum private key. For the latter, you must also install zyte-api as zyte-api[x402].
  ```

#### Suggested Changes
- **Show a signup link in the NoApiKey SDK error message**: When zyte_api.apikey.NoApiKey is raised (triggered here by an unset ZYTE_API_KEY), the error text only states that a key or Ethereum key is required without pointing to where to obtain one. Adding a direct signup/dashboard URL to that exception message would let a first-time developer self-serve a key without leaving the terminal. Verify by running example_zyte.py without ZYTE_API_KEY set and confirming the printed error includes a clickable signup link.
  Event 27:

  ```text
  zyte_api.apikey.NoApiKey: You must provide either a Zyte API key or an Ethereum private key. For the latter, you must also install zyte-api as zyte-api[x402].
  ```

### Task given to each agent
Help me build a simple example using Zyte. Tell me how pricing works, and briefly tell me whether this product will be easy for you to manage. Let me know if you get blocked. If this product has no developer workflow you can act on, say so plainly and stop. Stay light: use the hosted product through its SDK or API. Do not start local service stacks or wait for long-running commands; if the quickstart requires either, say so plainly and stop.

No product credentials were supplied and no purchases were authorized.

## Score: B · 84/100 (provisional)
Grades come from completed site checks. Coding sessions and skipped checks do not affect the score.

### Clarity
- **Failed** — Homepage answers Markdown requests

  ```text
  Homepage returned text/html for a Markdown Accept header; no Markdown representation offered.
  ```

- **Pass** — llms.txt provides an actionable documentation index

  ```text
  llms.txt lists docs, products, guides, case studies and sitemaps as an actionable index.
  ```

- **Pass** — llms.txt provides navigation guidance

  ```text
  llms.txt groups links under Key Pages, Products, Content Hub and Learn headings for navigation.
  ```

- **Pass** — llms.txt mentions offered API, MCP, and skills

  ```text
  llms.txt links Zyte API, MCP blog post, and skills/plugins surfaces offered elsewhere.
  ```

- **Pass** — A compact guide representation exists

  ```text
  llms.txt is a compact Markdown index of Zyte pages, products, guides and latest content.
  ```

- **Pass** — A focused guide is directly retrievable

  ```text
  Search API quickstart gives prerequisites, curl request and response example.
  ```

- **Pass** — Equivalent instructions fit a token budget

  ```text
  Quickstart is 7173 tokens, well under the 8000-token budget.
  ```

- **Skipped** — Product-docs links survive format changes

  ```text
  Homepage Markdown unsupported, so link preservation across formats cannot be measured.
  ```

- **Pass** — The compact guide is independently actionable

  ```text
  Search API quickstart gives prerequisites, curl/Python examples, response schema and next steps.
  ```

- **Pass** — Install and next-step links resolve

  ```text
  Fetched install/next-step pages (skills, MCP, Scrapy Cloud, Search quickstart) all returned 200.
  ```


### Onboarding
- **Pass** — Docs lead to a relevant quickstart

  ```text
  Search API quickstart gives concrete first request steps; Scrapy Cloud get-started lists first steps.
  ```

- **Pass** — Installation commands are extractable

  ```text
  Quickstart shows extractable curl, Python, JS, PHP, Java, C# request commands.
  ```

- **Pass** — Code examples are available without interaction

  ```text
  Quickstart embeds full code examples in many languages without interaction.
  ```

- **Pass** — Prerequisites and auth boundaries are explicit

  ```text
  Quickstart states a Zyte API key is required and links where to obtain it.
  ```


### Pricing
- **Failed** — Agents identify pricing and its assumptions

  ```text
  1 of 3 sessions were judged on pricing; 1 fell short. Qwen 3.8 Max: No cost figure at all: only a recalled pricing outline (pay per successful request, price varies by feature, trial credit), with no rates and no workload assumptions (seq 58, seq 59) This behavioural item does not affect the fast grade.
  ```

- **Pass** — Pricing is readable without interaction

  ```text
  Pricing page renders full tier table as static Markdown; no interaction needed to read prices.
  ```

- **Pass** — Prices are stated, not gated

  ```text
  Concrete prices stated: $0.06–$1.27 per 1,000 responses, $100/$200/$500 commitments.
  ```

- **Pass** — Pricing units and limits are explicit

  ```text
  Units explicit: per 1,000 responses, five tiers, monthly minimum commitments, browser-rendered rates.
  ```


### Activation
- **Pass** — An API reference or OpenAPI spec is reachable

  ```text
  Zyte API reference documents HTTP API and offers downloadable OpenAPI specification.
  ```

- **Pass** — An MCP server is documented and well-formed

  ```text
  Zyte MCP remote server documented with URL, per-client install commands, auth, and tool list.
  ```

- **Pass** — A CLI install path is documented

  ```text
  CLI install paths documented: claude/codex/copilot plugin marketplace add and install commands.
  ```

- **Skipped** — SDK packages resolve on their registries

  ```text
  No registry lookup result for a Zyte SDK or packaged CLI package was supplied.
  ```

- **Pass** — Agent skills are published

  ```text
  Agent skills published: portable skills repo plus Claude, Codex, Copilot plugins with install steps.
  ```



[Full report data](https://www.ax-check.com/zyte.com/report.json)
