# AX Check: xtrace.ai
Checked 2026-10-12.

Quickstart and SDK work great, but pricing is nowhere to be found
Docs, install steps, and API reference all check out. Homepage only offers a demo booking — no public prices, units, or limits are stated anywhere.

## Onboarding needs a login

## Coding sessions
All three independent sessions completed. Two described pricing with explicit mechanics like free tiers and pay-as-you-go volume rates, while one found no real cost figures and only noted that some underlying libraries are free.

### DeepSeek V4.1 Flash
[View public run](https://agents.withgauge.com/p/runs/2ad7b769-abfa-430b-9bcb-84fbab7d685f) · [Read transcript](https://www.ax-check.com/xtrace.ai/sessions/deepseek.json)
Pricing was explained with explicit assumptions: free rate-limited tier, server-resolved quota caps per subscription tier, and a note that no public price list exists plus a caveat about a separate custom-priced product line.

Evidence: Final output's Pricing section names plan/tier assumptions (free tier, quota caps, enterprise uncapped) and flags the lack of a public price list and the separate marketing-site product.
#### End-to-end onboarding
- **Onboarding needs a login**: The agent explored the XTrace Memory hosted API/SDK thoroughly, wrote a runnable example script, and confirmed the hosted endpoint was reachable (a bogus key returned a real 401 from the live API). But it never obtained a real API key. Creating one requires signing in at app.xtrace.ai, which the agent explicitly declined to do, so no authenticated product operation (ingest/search) was ever executed. Only a failure-path 401 was demonstrated, not a successful authenticated call.
  Event 97:

  ```text
  --- bogus key (proves hosted reachability) ---
  XTrace error 401 [http_401]: Invalid API key
  exit=1
  ```
  Event 103:

  ```text
  I could **not complete a live ingest/search**, because there's no `XTRACE_API_KEY` in the environment and creating one requires signing in at `app.xtrace.ai` (browser account signup), which I won't do on your behalf.
  ```
  Event 96:

  ```text
  --- no key ---
  Missing XTRACE_API_KEY.
  Create a free key at https://app.xtrace.ai (Settings -> API Keys), then:
    XTRACE_API_KEY=xtk_... node xtrace-demo.mjs
  exit=2
  ```

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

#### Blockers
- **No API key available, blocking live ingest/search**: The product requires a human to sign in at app.xtrace.ai and generate an API key from Settings → API Keys before any SDK call can authenticate. This is a normal credential/login requirement, not a product defect — the agent correctly declined to perform browser signup on the user's behalf and stopped short of a live run.
  Event 103:

  ```text
  I could **not complete a live ingest/search**, because there's no `XTRACE_API_KEY` in the environment and creating one requires signing in at `app.xtrace.ai` (browser account signup), which I won't do on your behalf.
  ```
- **Marketing site pricing page returns 404 and is for a different product**: The agent checked xtrace.ai/pricing and docs.xtrace.ai/pricing for a public price list; both returned 404, and the marketing site actually describes a separate XTrace product (Sessions/Brains/Rulebook) with custom, sales-driven pricing, distinct from the memory API/SDK the agent used. This is a product content/structure issue (confusing dual-product naming), not an agent error — the agent correctly identified the mismatch and pivoted to the SDK-relevant usage/quota data instead.
  Event 24:

  ```text
  === https://xtrace.ai/pricing ===
  HTTP 404 final=https://xtrace.ai/pricing
  ```
  Event 24:

  ```text
  === https://docs.xtrace.ai/pricing ===
  HTTP 404 final=https://docs.xtrace.ai/pricing
  ```
  Event 103:

  ```text
  Caveat: the marketing site `xtrace.ai` describes a **different XTrace product** (Sessions / Brains / Rulebook) with **custom pricing, book-a-demo**. That product has no public SDK/API.
  ```

#### Suggested Changes
- **Publish a public pricing/quota reference page for the Memory API**: No pricing page exists for the memory product (docs.xtrace.ai/pricing and xtrace.ai/pricing both 404); only the `GET /v1/usage` endpoint exposes plan tier and quota caps, and only after authentication. Add a docs page (e.g. docs.xtrace.ai/guides/pricing) listing free-tier rate limits and paid tier caps for messages_ingested/searches so prospective developers can evaluate cost before signing up. Verify by requesting that URL and confirming it returns tier/quota figures instead of a 404.
  Event 24:

  ```text
  === https://docs.xtrace.ai/pricing ===
  HTTP 404 final=https://docs.xtrace.ai/pricing
  ```
  Event 58:

  ```text
  ``quota.monthly`` pairs those totals against the plan caps
  resolved from the org's subscription tier; ``limit: null`` means
  the tier is uncapped (enterprise).
  ```
- **Add a quickstart note disambiguating the memory product from the xtrace.ai marketing site**: The root marketing domain xtrace.ai promotes a different product (Sessions/Brains/Rulebook, custom enterprise pricing) with no SDK, while the actual developer-facing hosted memory API lives under docs.xtrace.ai and app.xtrace.ai. Add a short callout in docs.xtrace.ai/introduction clarifying the relationship between the xtrace.ai site and the Memory API/SDK so developers landing from npm don't need to cross-reference two unrelated product surfaces. Verify by checking that a first-time reader following the npm README link to docs.xtrace.ai sees this disambiguation before leaving the docs.
  Event 46:

  ```text
  XTrace pricing is custom based on each customer's needs. For pricing and a tailored discussion, direct me to book a call at https://xtrace.ai/demo.
  ```
  Event 103:

  ```text
  Caveat: the marketing site `xtrace.ai` describes a **different XTrace product** (Sessions / Brains / Rulebook) with **custom pricing, book-a-demo**. That product has no public SDK/API. I targeted the memory product because it's the only one with an actionable developer workflow.
  ```

### Kimi K3
[View public run](https://agents.withgauge.com/p/runs/3ad63817-de75-45ad-af72-10c8fe5b76db) · [Read transcript](https://www.ax-check.com/xtrace.ai/sessions/kimi.json)
No real cost figure or priced assumptions (plan, region, machine size, workload) were given — the agent only noted that the open-source libraries it found are free.

Evidence: Final output states 'both are free, open-source libraries... There is no pricing page, plan, or metered usage to report on' — this is an absence-of-pricing statement, not a cost figure tied to named assumptions as the rubric requires.
#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: No product credentials were obtained or used. The agent determined no hosted product named XTrace exists, only unrelated open-source libraries on PyPI and npm, and stopped before any onboarding or authentication could occur.
  Event 11:

  ```text
  there is no hosted product called XTrace that I can find or act on.
  ```

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

#### Blockers
- **No hosted XTrace product exists**: The agent searched the local sandbox, PyPI, and npm for XTrace and found only two unrelated small open-source libraries (a Python debug tracer and an npm function-composition tracer), neither of which is a commercial or hosted product with pricing or an SDK/API. This is not a product defect or agent error — the named product simply does not exist under that name, so the agent correctly stopped per the user's own instructions.
  Event 8:

  ```text
  xtrace (0.5)
  Available versions: 0.5, 0.4, 0.3, 0.2, 0.1
  ```
  Event 11:

  ```text
  there is no hosted product called XTrace that I can find or act on.
  ```

#### Suggested Changes
None identified in this transcript.

### Qwen 3.8 Max
[View public run](https://agents.withgauge.com/p/runs/60496a27-5182-4a8e-8463-024933a5c1e8) · [Read transcript](https://www.ax-check.com/xtrace.ai/sessions/qwen.json)
Pricing was explained with its underlying mechanics (per-span volume, tiered pay-as-you-go, free tier threshold) rather than a bare unexplained number.

Evidence: seq 26 final output lists pay-as-you-go per spans ingested, tiered unit pricing, and an approximate free-tier volume, framed as qualitative since no account could be checked.
#### End-to-end onboarding
- **Onboarding needs a login**: Agent searched the sandbox for any Alibaba Cloud / XTrace credentials (env vars, ~/.aliyun config, AccessKeys) and found none. It confirmed OpenTelemetry SDK tooling was present and network egress worked, but could not obtain an OTLP endpoint or auth token without a human completing a console signup/provisioning step. No authenticated call to the XTrace API or OTLP endpoint was ever made.
  Event 10:

  ```text
  which aliyun aliyuncli 2>/dev/null; pip list 2>/dev/null | grep -iE "alibaba|aliyun|opentelemetry" | head; npm ls -g 2>/dev/null | grep -i ali
  ```
  Event 23:

  ```text
  ls ~/.aliyun ~/.alibabacloud 2>/dev/null; find / -maxdepth 3 -name "*aliyun*" -o -maxdepth 3 -name "*alibabacloud*" 2>/dev/null | grep -v proc | head
  ```
  Event 26:

  ```text
  there are **no Alibaba Cloud credentials anywhere** — no AccessKey ID/secret, no `~/.aliyun` config, no endpoint token in env vars. XTrace has no anonymous or local mode; without an account-provisioned endpoint I cannot send a single trace or call its API.
  ```

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

#### Blockers
- **No self-service way to get XTrace credentials**: XTrace (Alibaba Cloud's managed tracing/OpenTelemetry service) requires an AccessKey and a provisioned OTLP endpoint/token obtained via the Alibaba Cloud console. The sandbox had no such credentials and no mechanism to create an account or provision an endpoint programmatically, so the agent could not send any trace or make an authenticated API call. This is a missing-credentials blocker tied to the product's console-gated onboarding, not an agent error — the agent correctly searched env vars, config directories, and installed CLIs before concluding no path forward existed.
  Event 26:

  ```text
  Creating an account/region instance is a console action I can't take. If you paste an OTLP endpoint + token (or AccessKeys), I can have a working span-sending example running in a couple of minutes.
  ```

#### Suggested Changes
- **Provide a self-service API path to provision an XTrace endpoint/token**: Observed friction: the agent could not obtain an OTLP endpoint or AccessKey without a human completing a console step, which fully blocked any SDK example despite the OpenTelemetry tooling being ready. Check this is fixed by having a fresh agent session (no pre-shared credentials) successfully call a signup/provisioning API or CLI command to mint a working endpoint and token, then send a trace end to end.
  Event 26:

  ```text
  Creating an account/region instance is a console action I can't take.
  ```

### Task given to each agent
Help me build a simple example using XTrace. 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 · 79/100 (provisional)
Grades come from completed site checks. Coding sessions and skipped checks do not affect the score.

### Clarity
- **Failed** — llms.txt provides an actionable documentation index

  ```text
  llms.txt is a marketing/FAQ document, not a docs index; it links only website and blog.
  ```

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

  ```text
  llms.txt mentions SDK and Chrome Extension but no API, MCP, or skills surfaces.
  ```

- **Pass** — Homepage answers Markdown requests

  ```text
  Homepage returned text/markdown (200) when requested with Accept: text/markdown.
  ```

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

  ```text
  llms.txt gives structured overview, FAQ, and guidance on answering common user questions.
  ```

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

  ```text
  Homepage returns text/markdown via content negotiation; docs quickstart also served as Markdown.
  ```

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

  ```text
  Quickstart gives concrete steps: install SDK, get API key, ingest, poll, search.
  ```

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

  ```text
  Markdown quickstart is 738 tokens, well under the 8000-token budget.
  ```

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

  ```text
  Homepage Markdown retains demo, platform, engineering, GTM, blog, security, FAQ links.
  ```

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

  ```text
  Quickstart gives concrete steps: npm install, API key, ingest, poll, search with code.
  ```

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

  ```text
  Quickstart install and next-step links resolve; docs pages fetched successfully.
  ```


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

  ```text
  Docs quickstart gives 5-step install, ingest, poll, and search workflow with runnable code.
  ```

- **Pass** — Installation commands are extractable

  ```text
  Quickstart shows extractable install command: npm install @xtraceai/memory, Node 18+.
  ```

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

  ```text
  Quickstart includes full TypeScript ingest, poll, and search examples without interaction.
  ```

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

  ```text
  Quickstart states Node 18+, API key from app.xtrace.ai Settings, key is sole identity.
  ```


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

  ```text
  3 of 3 sessions were judged on pricing; 1 fell short. DeepSeek V4.1 Flash: Pricing was explained with explicit assumptions: free rate-limited tier, server-resolved quota caps per subscription tier, and a note that no public price list exists plus a caveat about a separate custom-priced product line.
  
  Evidence: Final output's Pricing section names plan/tier assumptions (free tier, quota caps, enterprise uncapped) and flags the lack of a public price list and the separate marketing-site product. Kimi K3: No real cost figure or priced assumptions (plan, region, machine size, workload) were given — the agent only noted that the open-source libraries it found are free.
  
  Evidence: Final output states 'both are free, open-source libraries... There is no pricing page, plan, or metered usage to report on' — this is an absence-of-pricing statement, not a cost figure tied to named assumptions as the rubric requires. Qwen 3.8 Max: Pricing was explained with its underlying mechanics (per-span volume, tiered pay-as-you-go, free tier threshold) rather than a bare unexplained number.
  
  Evidence: seq 26 final output lists pay-as-you-go per spans ingested, tiered unit pricing, and an approximate free-tier volume, framed as qualitative since no account could be checked. This behavioural item does not affect the fast grade.
  ```

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

  ```text
  No pricing page fetched; homepage only offers 'Book a demo' with no readable prices.
  ```

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

  ```text
  No pricing page fetched; homepage states no public prices, only demo booking.
  ```

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

  ```text
  No pricing page fetched; no units or limits stated anywhere in evidence.
  ```


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

  ```text
  API reference page embeds a full OpenAPI 3.1 spec; the spec URL itself returns HTTP 200.
  ```

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

  ```text
  No MCP server is documented in any fetched XTrace page.
  ```

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

  ```text
  Quickstart documents npm SDK install only; no CLI install path is shown.
  ```

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

  ```text
  npm registry lookup for @xtraceai/memory returned HTTP 200.
  ```

- **Skipped** — Agent skills are published

  ```text
  No agent skills are published or referenced in the fetched XTrace pages.
  ```



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