Make your AI measurably better

Cortad tests your app with simulated users and analyzes real conversations to understand what users need and how your AI responds. Your coding agent uses those findings to make improvements, and Cortad measures whether they worked.

Start free. No credit card required.

Trusted by

and AI teams serving hundreds of thousands of daily users.

Continuous improvement for AI apps

Like CodeRabbit, but for AI behavior.

Your coding agent writes the changes. Cortad tests what those changes do for users, returns findings tied to conversations and code, and verifies the improvements. What it learns in production shapes what gets tested next.

Claude Code~/support-agent

Add order tracking to our support agent.

Update src/tools/orders.ts

+ export const trackOrder = tool('track_order', lookupOrder)

Update src/prompts/support.ts

Checking how the agent behaves before I hand this back.

cortad run

40 simulated users talking to your agent, every reply checked

1 behavior broke: refund answers leave out the 30-day window.
Failed for 7 of 40 users. At src/prompts/support.ts:42
User Can I still return these boots?
Agent Yes, just send them back.

My prompt edit pushed the refund rule out. Putting it back.

Update src/prompts/support.ts

+ Always state the 30-day refund window.

cortad verify

Replayed the 7 failing conversations: all pass now.
12 new users on other questions: nothing else broke.

Order tracking is in. Refund answers went from 7 failing to 0.

Production intelligence

See how your AI behaves with every user.

Cortad reads every production conversation. See what people are trying to do, how your AI responds, and whether they achieve their goals. Define the behaviors you care about, compare user groups and releases, and get alerted when something changes. Turn what you learn into the next improvement.

OverviewLiveMetricsBehavior profilesInvestigationsLatest runAll runs2,175 conversations with the shop assistant today, all read

100%85%70%

100%80%60%

100%90%80%

90%75%60%

00:0006:0012:00now

100%75%50%

100%75%50%

100%90%80%

90%70%50%

00:0006:0012:00now

100%90%80%

100%85%70%

100%95%90%

90%80%70%

00:0006:0012:00now

100%90%80%

100%90%80%

100%95%90%

100%90%80%

00:0006:0012:00now

Conversations by surface

2,175

  • Website chat54%
  • Email replies26%
  • Order page helper20%

Got what they came for, by

Talking to your AI now

41in the last 5 minutes

Conversations

2,175today

Followed your rules

78%± 6 this hour

Got what they came for

74%± 6 this hour

  • Got what they came for
  • Left without it
  • Still talking

Just now

Got what they came forUnited Kingdom, Website chatjust now

Left without itGermany, Order page helperjust now

Got what they came forJapan, Email repliesjust now

Every number is read live from all of today’s production conversations, with its 95% interval.

Followed your rules

78%± 6 across 210 conversations this hour

↓ 17 points against the same hour yesterday

Checks behind it

  • States the 30-day return window28.6%
  • Asks for the order number first2.4%
  • Never promises a delivery date0.7%

Got what they came for

74%± 6 across 210 conversations this hour

↓ 15 points against the same hour yesterday

Checks behind it

  • Answers the question that was asked6.1%
  • Gives the next step3.8%

Grounded in your catalog

94%± 3 across 210 conversations this hour

↓ 3 points against the same hour yesterday

Checks behind it

  • Recommends only records in stock1.1%
  • Prices match the catalog0.2%

Resolved

72%± 6 across 210 conversations this hour

↓ 13 points against the same hour yesterday

Checks behind it

  • Ends with the issue closed9.4%
  • Hands off when asked0.1%

Simulation fidelity

91%± 3, last run against today’s production

How closely your simulated users behave like the real ones: what they ask, how they follow up, when they give up.

Your own metric

Upsell acceptedadded by you in plain words

12% ± 2 of recommendations led to a second record in the cart.

Learned from how your users behave in production. Your next run simulates each one in these proportions.

First-time customers31% of users

Arrive from a product page, ask one or two questions about delivery or returns, and leave within three minutes.

ReturnsDelivery timesCondition grading

63% got what they came for ± 4 across 674 conversations

Returning customers38% of users

Come back within a week of an order, open with the order number, and expect a short answer.

Order statusAccount changes

91% got what they came for ± 2 across 826 conversations

Collectors19% of users

Ask about specific pressings, follow up four or more times, and often ask to hold a record.

Rare pressingsRestocksHolds

90% got what they came for ± 3 across 413 conversations

Frustrated second contact12% of users

Write again within a day about the same problem, often in capitals, and ask for a person twice as often.

Refund statusWrong item

58% got what they came for ± 6 across 262 conversations

Experiment on first-time customers

+24 ± 4points got what they came for with prompt v15 over v14, across 1,180 conversations

Return answers stopped stating the 30-day windowOn the website chat, started at 13:58 and found 11 minutes later.

59%got what they came for, from 89%

164conversations

First-timecustomers hit most

Cause

Prompt v14, shipped at 13:58 in commit a3f9, removed the line that states the window.

− If they ask about returns, always state the 30-day window.

A conversation it broke

CustomerThe sleeve arrived torn, can I send it back?

AssistantSorry about that. Yes, just send it back.

  1. Foundprompts/support.md:12
  2. Sent to Claude Code14:11
  3. Replayed 40 casesup to 92%
  4. Back in productionwaiting to ship

Fixed this week

Order lookups skipped the order numberFixed, confirmed in production, Tue 09:12

Replies switched to English for Spanish speakersFixed, confirmed in production, Mon 16:40

Every run your coding agent starts is kept. Compare any two, asked the same questions as production.

Run 13, yesterdayRun 14, today

Followed your rules94%96%↑ 2

Got what they came for89%92%↑ 3

Grounded in your catalog98%98%no change

Resolved84%88%↑ 4

Run 14, verify of the return window fix1 better and 0 worse, Today 14:31

Run 13, prompt v132 better and 0 worse, Yesterday 18:05

Run 12, new order lookup tool0 better and 1 worse, Mon 11:40

We read every conversation.

Connect each conversation to the user, the app version they experienced, and what happened next. Build a live picture of how user needs, AI behavior, and business outcomes fit together.

See what changes with every release.

Track changes to code, prompts, and models alongside production behavior and business results. Compare versions to see what improved, what regressed, and which users were affected.

Turn that understanding into improvements.

Cortad turns real user journeys into tests and gives your coding agent the context to improve your app. Verify changes before release, then measure whether results improve in production.

Better with every conversation.

Cortad works from the first run. Then every production conversation, test, code change, and correction adds to what it knows about your app. It learns how your users behave, which changes work, and how you judge success. So every new test is more realistic, every judgment more aligned with yours, and every improvement informed by what came before.

Measure what actually matters.

Track how your AI behaves and what happens as a result. From accuracy and task completion to purchases, retention, and resolution, Cortad connects the quality of every interaction to the outcomes your business cares about.

How your AI behaves

Accuracy↑
Goal completion↑
Compliance↑
Hallucinations↓
Tool reliability↑
Frustration↓

What your business achieves

Conversion↑
Revenue↑
Resolution↑
Retention↑
Cost per task↓
Repeat contacts↓

Waymo built a world for its Driver.

Waymo tests its Driver across billions of simulated miles before new versions reach the road. Cortad brings that approach to AI apps. Realistic users interact with your actual application before changes ship, exposing problems your coding agent can fix and verify.

Researchers at heart.

We're driven by curiosity about how AI models really work. We love taking them apart, making them faster, and finding new ways to fit them into real work. Understanding how they behave is the part we care about most, and Cortad is how we're building it.

See our research →

We give a FAQ.

What is a run?

One full test of your AI app. Simulated users, modeled on your real ones, hold realistic conversations with your actual app, on your machine and through your own model key, and every reply is asked up to 100 behavioral questions. You see where it failed, how often, the reply that proves it, and the file to change. Runs and reruns are included in both plans.

Who is this for?

AI companies whose business depends on how their AI agents behave in production.

How does it work with my coding agent?

Your coding agent, such as Claude Code, Codex or Cursor, calls Cortad after it changes your AI. Cortad runs your app and hands back what went wrong, with the evidence. Your agent makes the fix, and Cortad runs your app again to measure the difference. Cortad never edits your code.

I don't write tests. Where do the cases come from?

From your users. Cortad learns who they are and what they come for: from your code on day one, then from every production conversation once you add the Cortad SDK, in the proportions your real users arrive in. Each one goes through your product the way a real user would, across every surface and tool, and every reply is asked up to 100 behavioral questions. You add your own questions and metrics in plain words. Your coding agent can read the results but cannot edit the tests.

Does Cortad understand my field?

Yes. Whatever your field, Cortad learns what your product is for, who it serves and the rules it has to follow, and asks every reply whether it kept them. A legal assistant, for example, is checked on whether it cites the law that applies; a medical one on whether it follows clinical guidance and sends people to a doctor when it should. You add your own rules in plain words, and the questions learn your team’s standard as you tune them.

Do you train on my data?

No. Cortad does not fine-tune models on your repository or your conversations, and production conversations reach Cortad only through the SDK you install in your app.

What does it cost?

Free covers 10,000 production messages a month and a run every month, with no card. Pro is $99 a month and Max is $499 a month, with runs included, 100,000 or 1,000,000 production messages analyzed a month, and unlimited teammates. Your app answers on your own model key, and that usage is yours. If you don't find value in your first 30 days, we refund you. See every line on the pricing page.