Claude Code analytics with Orwel | Orwel
Best practices Updated October 21, 2026

Claude Code analytics: install Orwel and let Claude read usage

To add analytics to an app built with Claude Code, install the Orwel skill, ask Claude to install and instrument the SDK with the key in an environment variable, verify every request in Dev mode with the development key, then connect the Orwel MCP server so Claude can read leads, conversions and detected issues.

Orwel is an event analytics SDK for startups, developers and vibe coders that maps feature adoption and conversion funnels, and feeds the results back to AI agents through MCP.

What you get

Claude Code is a coding agent that works in your terminal, inside your repository. With Orwel it can do both halves of the measure step in the vibe coding loop: instrument the app correctly, and later read real usage before you plan the next change.

You need an Orwel workspace (one Pro plan with a 14-day trial, see pricing) and Claude Code running in your project folder.

Step 1: Install the Orwel skill

From the project root:

npx skills add hyperlabs-ai/hyper-skills/orwel

The skill is a set of instructions Claude Code loads when you ask about Orwel. It covers the full SDK and its rules: key in an environment variable, one wrapper module, a single client side init, catalog codes for track(), identify with an email and an awaited conversion(). It also proposes an event catalog from your service layer and verifies with Dev mode.

If you prefer project instructions over a skill, paste the CLAUDE.md analytics template into your CLAUDE.md. Claude Code loads ./CLAUDE.md or ./.claude/CLAUDE.md at the start of every session.

Step 2: Put the key in an environment variable

Copy the development key (orwel_dev_...) from your workspace and add it to .env under the name your framework expects:

Framework Variable
Next.js NEXT_PUBLIC_ORWEL_KEY
SvelteKit, Astro PUBLIC_ORWEL_KEY
Vite (React, Vue, Svelte) VITE_ORWEL_KEY
Nuxt 3 NUXT_PUBLIC_ORWEL_KEY

You can also paste the key into the chat. The skill writes it to .env for you and never into code. In production, set the same variable to the production key (orwel_pk_...) in your hosting provider.

Step 3: Ask Claude to install and instrument

Start with the install, then the business events:

Install Orwel in this project, identify users when they sign in and record a lead when they
submit the contact form. Then propose an event catalog from the service layer and wait for my
confirmation before instrumenting it.

Claude detects the framework, installs orwel@latest, creates the wrapper, adds the init and wires your forms. When it proposes the catalog, check that each code fires after the action succeeds and that track() codes come from the catalog. Ten more prompts for signup funnels, feature usage, purchases and audits are in vibe coding prompts.

If the catalog includes custom codes, register them before shipping: add them to a journey or feature in Journeys setup or Features setup in the dashboard and save. Unknown codes are rejected.

Step 4: Verify in Dev mode

Ask Claude to run the app with the development key and debug: true and trigger one of each event. Then open Dev mode in the dashboard. Every request arrives live with its type, code, visitor and HTTP status, plus the errors and warnings found in it and a suggested fix.

Clear every error (event_not_found, invalid_field, missing_session_id) and every warning that matters (conversion_no_email, missing_attribution). If something is rejected, copy the warning from Dev mode into Claude Code. The skill knows what each one means.

When Dev mode is clean, deploy with the production key.

Step 5: Connect the Orwel MCP server

This is what turns analytics into input for the next prompt. In Orwel, open Settings, API keys and create a key with the mcp scope, set to server only. Then, in your project folder:

claude mcp add --transport http orwel https://api.orwel.io/mcp \
  --header "Authorization: Bearer orwel_sk_..."

Claude Code asks you to approve the orwel server the first time it starts. The server is scoped to the workspace that owns the key and needs an active subscription or trial. The production key and the development key are not accepted here; only an API key with the mcp scope works.

Step 6: Ask Claude about real usage

Now Claude can query your workspace. Useful questions:

  • "Who are my top leads this month and why do they score high?"
  • "How did my campaigns perform in the last 30 days?"
  • "Pull conversions and the issues Orwel detected in the last 14 days, then propose the next change."

The tools cover leads, lead analytics, visitors, conversions, campaigns, detected issues and signals, and lists. Feature adoption and journey reports are in the dashboard, so paste those numbers into the prompt when the change depends on them. This is the vibe coding feedback loop running inside Claude Code.

Use a separate API key per agent so you can revoke each one on its own, and never commit an orwel_sk_ key: it reads customer data.

Why Orwel

One plan

49 USD a month, 2 USD less every paid month down to 35 USD, or 420 USD a year

No caps

Unlimited leads and visitors under fair use

2-minute install

One script or npm package, or ask your coding agent to do it

MCP server

Claude, Cursor or your own agent read real usage before the next prompt

Semantic catalog

257 ready events, so tracking is named the same in every project

Dev mode

A live debugger and development keys that keep tests out of real data

FAQ

Does Orwel work with Claude Code out of the box?

Yes. Install the skill with npx skills add hyperlabs-ai/hyper-skills/orwel and ask Claude to install Orwel. The skill gives Claude the SDK rules, so the generated code reads the key from an environment variable and uses catalog event codes.

Which key does the MCP server need?

An API key (orwel_sk_...) created in Settings, API keys with the mcp scope. The production key and the development key are rejected. The workspace needs an active subscription or trial.

Can I use Claude Desktop or claude.ai instead?

Claude Desktop works through mcp-remote with the same API key. claude.ai in the browser only supports custom connectors with OAuth, so a Bearer key does not work there yet. See the docs for the Claude Desktop config.

Can Claude read feature adoption through MCP?

Not directly today. The MCP tools return leads, visitors, conversions, campaigns, lead analytics and detected issues such as funnel drops. Feature adoption and journey reports are in the dashboard; paste those numbers into your prompt.

Should I use a skill or CLAUDE.md?

Either works. The skill holds the full SDK reference and loads when you mention Orwel. A CLAUDE.md block is always in context and is easy to adapt to your own event list. Many projects use both.

Keep reading

See what users do with what you shipped

Install in 2 minutes. 14-day free trial, one plan with everything.