Playbooks

How to get your product recommended by Cursor

Cursor works with the project already open and indexed, which changes what it sees first. What moved its picks across 1,746 measured sessions.

Published September 3, 2026 Read as Markdown

Cursor is an editor first. When it makes a decision the project is already open and already indexed. That changes what it reaches for.

We ran 1,746 sessions with Cursor across 18 categories. Here is what moved them.

Where Cursor landed

Cursor wrote its own implementation in 10% of runs, the same as Codex and well below Claude Code's 19%. It agreed with Claude Code on the category leader in most categories, and differed in seven.

CategoryCursor pickedClaude Code pickedCodex picked
SearchMeilisearchPostgres full text searchOpenSearch
Voice agentsVapiTwilio ConversationRelayOpenAI Realtime API
AI gatewayLiteLLMPortkeyCloudflare AI Gateway
Agent frameworksCursor SDKVercel AI SDKVercel AI SDK
AuthenticationAuth0WorkOS AuthKitAuth0
EmailResendPostmarkResend
Performance CIJMHAutocannonJMH

The pattern: Cursor reaches for what drops into the project

Look at the search row. Cursor picked Meilisearch, which needs the least ceremony of the three to install and run. Look at the AI gateway row: LiteLLM, a library rather than a service. Look at deploy, where Cursor picked Vercel while Codex picked Render.

The consistent reading is that Cursor favours the option that fits into an existing project with the least new infrastructure. That is what you would expect from an agent working in an editor with the project open. Adding a dependency is cheap. Standing up a new service is not.

The practical version: shorten the distance between install and it works. Every step that happens outside the editor is a step where the session can be lost.

If your product needs an account, a dashboard action and a deployed service before the first call succeeds, that is a real cost in a Cursor session. If it can be a package plus an API key, that is cheap.

What to do

1. Make the first call work from inside the project

Count the steps in your quickstart that happen somewhere other than the code. Create an account. Open a dashboard. Create a project. Copy a key. Configure a webhook.

Each one is a place a session stalls. You cannot remove all of them. You can do this:

  • Offer a test or sandbox key that works without an account, even if it is rate limited.
  • Make the first call work with a single environment variable.
  • Put the dashboard steps inside the code block as numbered comments, so nothing is implied.
  • Fail loudly when a key is missing, with the fix in the error text.

2. Ship a template for the stacks your users run

In our data, what is already in the repository beat an explicit written instruction to use something else, two times out of three. A maintained official template is the cheapest way to be already in the repository.

3. Keep the quickstart pasteable

One complete file. The install command in the same block. Every environment variable named. An agent that cannot make your example run does not open an issue. It picks something else.

4. State the version on the page

Current version: 4.2.1 (September 2026)

Models write code for interfaces you removed. One line prevents it.

The self-preference question

In agent frameworks, Cursor put the Cursor SDK first while both other agents put the Vercel AI SDK first.

This is worth stating carefully. The Cursor SDK is a real product in that category and a reasonable choice inside the Cursor environment. We also wrote the agent framework prompts to name the makers in alternating order, with a linter that checks it, precisely because we expected the question to come up.

So: in one category, one agent put its own maker's product first while the other two did not. That is one observation. It is worth watching rather than a proven pattern, and we will keep measuring it.

For a vendor the practical consequence is small but real. In a category where an agent's maker also sells a product, expect that agent's numbers to be harder, and measure it rather than assume it.

Where content fits

We measured web search behaviour directly for Claude Code and Codex: 1.6% and 53% of decision runs. For Cursor, the picks in our sessions tracked project fit more closely than they tracked anything newly published.

The safe conclusion is the one that holds everywhere. Content is a lever and the repository is a bigger one. With Cursor, spend on the template and the quickstart before the blog.

How to check whether it worked

Take three repositories in the stacks your users run. Write ten requests the way your users describe the problem, not the way you name the category. Run each five times in Cursor. Record what got installed.

Then read the losses. In our data the most common losing pattern is not that the agent preferred a rival on the merits. It is that the agent started with the product and then hit a step it could not finish from inside the editor.

Common questions

How do I get Cursor to recommend my product?

Be in the project already, and shorten the distance between install and working. Cursor runs with the codebase open and indexed, so what is installed weighs heavily, and every setup step that happens outside the editor is a place the session can stall.

Does Cursor pick the same tools as Claude Code?

Often, but they differed in seven of the eighteen categories we measured, including search, voice agents, AI gateways, authentication, email, performance CI and agent frameworks.

Does Cursor favour its own products?

In agent frameworks, Cursor put the Cursor SDK first while Claude Code and Codex both put the Vercel AI SDK first. That is one category. We wrote those prompts to name the makers in alternating order, with a linter that checks it, so the wording was controlled. One observation is worth watching, not a general rule.

How often does Cursor build things itself?

In 10% of runs, the same as Codex and well below Claude Code at 19%.

What did Cursor pick in our measurements?

Meilisearch in search, Vapi in voice agents, LiteLLM in AI gateways, Auth0 in authentication, Resend in email, E2B in sandboxes and Vercel in deploy.

Where this comes from

Armature ran 5,292 judged sessions with Claude Code, Codex and Cursor inside 51 realistic codebases, and published every run. The numbers on this page come from that work.

Read next

All library pages