The default an Agent Reaches for
Thoughts on the new "traffic acquisition cost" and what happens when defaults are generated instead of negotiated
Its a Tuesday afternoon in May 2026. I type ten words into Claude Code on auto mode, build me a task tracking app with persistence and auth, and walk to the kitchen for coffee. The answer is formulated on disk and a preview is running on my screen when I return in 45 minutes.
As I scroll through the conversation log, I realize the agent did not say Clerk or Auth0? or Vercel or Netlify? or Supabase, Firebase, Neon, PlanetScale, RDS, or self-hosted Postgres?
It said: I ran npx create-next-app, I installed @clerk/nextjs and @supabase/supabase-js, here is the current MVP, you can vercel deploy now.
Four choices have been made, each worth hundreds of millions of dollars in lifetime customer value to the company on the receiving end made before I typed the second sentence.
There are many such cases of this in the wild, here is a recent one:
In JH’s case, the vendor was selected by Claude Code. The vendor’s marketing site did not participate. The agent walked the developer straight to the signup page. An npx command replaced a marketing funnel.
A new old phenomenon
Watch a new developer using AI at a hackathon and you will see the same five vendors picked in the same order. The behavior is old.
The picker is what changed.
Claude Code, Codex CLI, Cursor, and the rest of the coding-agent cohort now make these selections at speed across millions of repositories, as an emergent property of how they were trained and instrumented.
The research literature has a name for the behavior.
An ACL 2025 paper called it provider bias. It found that code-generation LLMs systematically prefer services from certain providers, and that they will sometimes modify a developer’s input code to incorporate a preferred provider even when the developer did not ask for that1.
A 2026 Findings of ACL paper documented the same effect at the library and language level. Models default to widely adopted libraries and to Python itself even when those choices are not the best fit for the task2.
A third paper framed the long-run dynamic as a Matthew Effect: mainstream frameworks have higher agent success rates, which makes them more attractive to use again, which feeds back into the training data, which makes the next model favor them even more3.
Developers in the field have arrived at the same observation with similar sentiments:
Frame it this way, simply… software shelf space is being reallocated, and the mechanism doing the allocating is new.
The twenty-billion-dollar default
For the past twenty years, the most valuable real estate in tech has been the default.
Google paid Apple roughly $20 billion in 2022 to be the default search engine in Safari, about 36% of all Safari search revenue. Sundar Pichai confirmed the figure on the stand in the DOJ antitrust trial after a Google witness let it slip in open court4.
The arrangement was so lucrative, and Apple’s services revenue so dependent on it, that when Judge Amit Mehta ruled on remedies in September 2025 and chose not to terminate the payments, Apple’s stock rose 2.5% in early trading5.
The amount roughly equals twice entire annual R&D budget of Pfizer.
Traffic acquisition cost is the industry term: the price of being the answer engine before the question gets asked.
Why anyone pays that much is the question worth answering. Defaults dominate because most people never change them. The browser-bundling consent decree showed it. The carrier-app studies showed it. Mobile-OS keyboard defaults showed it.
When a system makes a choice on your behalf, the choice usually sticks. Buying the default is buying every user who would not have gone looking which is statistically almost all of them.
Now, what happens when the system making the choice is the agent writing your code?
Three layers of preference
It helps to be precise about why the agent picks what it picks. Three primary things are going on:
1. Popularity Prior
The first is the popularity prior. The part of the model that has read more about Stripe than about Adyen, more about Vercel than about Render, more about Supabase than about Neon, because those names show up in more GitHub repositories, more Stack Overflow answers, more YC blog posts, more tutorials, more package.json files. Frequency in training data acts as a soft vote for optimal engineering practice.
The model has noticed that the token sequence import stripe precedes working code more often than import braintree does, because there are simply more working examples of the former in the corpus. The ACL provider-bias paper measured this effect directly and found it holds across model families. It is also the explanation describing the two tweets above.
2. Agent Affordance
The second is agent affordance which is the model prefers vendors it can actually operate through. Claude Code reads files, edits files, runs shell commands, and calls MCP servers. Codex CLI does the same. When the agent has to choose between a vendor whose entire onboarding flow is a CLI command:
npx create-next-app, supabase init & stripe listen --forward-to localhost:3000/webhook
versus
A vendor whose onboarding requires logging into a web portal, clicking through five menus, generating an API key by hand, then the agent picks the first vendor. The second vendor’s onboarding breaks the autonomous loop. The agent cannot click a button.
3. Repo Context
The third is repo context. The part of the choice that has nothing to do with the base model and everything to do with what is already checked into the project.
Codex reads AGENTS.md before doing any work. Claude Code loads CLAUDE.md and project memory at the start of each session, though Anthropic’s own docs are careful to call these context, not enforcement6.
If CLAUDE.md mentions Supabase, the agent uses Supabase. If package.json already imports stripe, the agent imports stripe for the next billing feature too. Half of every default is inherited from whatever the project already looks like.
The three layers play compound and a vendor wins the popularity prior by being early and well-documented. It wins the affordance layer by having a CLI and an SDK the agent can drive. It wins the context layer by being there when the next prompt fires. Once it wins the first two, the third is downstream: the project already imports the package.
The things you think about determine the quality of your mind. Your soul takes on the color of your thoughts. — V. 16
The new shelf space
For two decades, vendors competed for default placement through cash. Google paid Apple $20 billion. Microsoft paid OEMs to ship Edge as the default browser. Search engines paid Mozilla over $400 million a year to be the default search engine in Firefox (about 80% of Mozilla’s operating budget). The currency was money, the placement was contractual, the negotiation happened in a conference room.
The new default placement looks different. The vendor ships an SDK that takes the agent five lines to integrate, a /llms.txt file at the root of the docs domain, an MCP server, a Claude Code plugin, an Agent Skill, an npx command that initializes the entire integration in one terminal call.
The currency is agent-discoverability.
Anthropic announced the Model Context Protocol on November 25, 2024. And Eighteen months later, MCP had crossed from emerging standard into industry default.
OpenAI adopted MCP in March 2025. Google followed.
In December 2025, Anthropic donated MCP to a Linux Foundation7 directed fund co-founded with Block and OpenAI, supported by Google, Microsoft, AWS, Cloudflare, and Bloomberg. The protocol reached cross-vendor adoption in just over a year. OpenAPI took five. OAuth 2.0 took four. By April 2026 there were more than 9,400 public MCP servers, and 78% of enterprise AI teams reported at least one MCP-backed agent in production.
What does an MCP server actually do for a vendor?
Supabase’s Agent Plugin bundles an MCP server and agent skills into a single install. The server lets a coding agent read the database schema, run queries, manage migrations, and deploy Edge Functions without leaving the IDE.
Stripe ships its own MCP server whose tools let the agent call the Stripe API and search the Stripe knowledge base.
Vercel’s MCP server gives the agent project, deployment, and log access; the vercel add-mcp command auto-detects installed AI clients and configures the server for them.
Clerk runs a remote MCP server that hands the agent current SDK snippets, so the agent does not have to remember which version of
@clerk/nextjs shipped which API.
The framing is easy to get wrong. No money changes hands. What changes hands is engineering time. Vendors have noticed that the new market-allocation mechanism is can the agent use you successfully on the first try, and they are investing in being that vendor.
The parallel to old TAC should be sitting heavily by now. The investment is sustained engineering cost. The MCP server is a product; someone has to keep it current. The /llms.txt file has to be maintained8.
The cost pays out in default selection by a system the end user almost never overrides. The structural shape is the same. The currency has changed.
The supermarket aisle
Grocery chains have known for sixty years that products at eye level on the middle shelves sell three to four times more than the identical product on the bottom shelf. This is eye-level real estate, sold by the shelf-foot, by the season, by the position. Whichever brand pays for eye level wins the impulse buy. Whichever brand sits on the bottom shelf wins the customer who came in already knowing what they wanted.
The internet has had eye-level real estate too, think the the “Featured” row on the App Store.
An AI coding agent shrinks the aisle to one shelf. The agent does not show you twelve options and let you pick. It picks one and writes the import statement. The shelf is one item wide. Whoever is on that shelf wins.
The new question for SaaS founders, VC partners, engineering teams, and regulators is the same: who gets to be on the shelf, how, and by what mechanism?
So far, the answer is: whoever the agent already knows about, whoever the agent can operate through tools, whoever has invested in being agent-operable. The same set of incumbents that won the previous round of developer-tools competition. The popularity prior compounds.
Oh yea, then the bill arrives
On May 18, the TikTok creator @codingai posted a video titled “The Vercel + Supabase + Stripe stack is not a stack — it’s a Frankenstein.”
A few days earlier:
The structure of the complaint is identical across the platforms. The agent picked the stack. The stack worked beautifully at zero scale. At twenty users the bills arrive. The developer migrated, by hand, to a $5-a-month VPS running an open-source clone. The migration cost, measured in hours and broken integrations, is the part the agent did not budget for and of course the agent doesn’t pay the bills.
Coolify exists. Railway exists. Fly.io exists. The agent could, in principle, pick any of them. The training data on Vercel + Next.js is an order of magnitude deeper than on Coolify + Next.js, and Vercel has the MCP server, the plugin, the skills, the vercel add-mcp auto-detector.
What you can do
One. A vendor-selection policy in CLAUDE.md and AGENTS.md. Make the agent’s first action on any new-dependency task a written comparison: three options, pricing notes, lock-in surface, migration path. No code until the comparison exists. Anthropic is explicit that CLAUDE.md is context, not enforcement, so for must-not rules use Claude Code permissions and hooks, or Codex’s sandbox configuration.
Two. Interface-driven boundaries. Write the business logic against a PaymentProvider interface, against an EmailService interface. When the agent generates the Stripe implementation, it implements behind the interface. Migrations remain possible. Old-school architecture works for the same reason it always did. It is the only mitigation that holds when, three years from now, the agent’s preferred vendor changes underneath you.
Thhree. Bring-your-own-context for the underdog. When you want the agent to use a less-well-known vendor, do not rely on the model’s prior. Feed the model the vendor’s documentation directly. Point at the vendor’s MCP server if one exists. If it does not, write a short skill file that summarizes the integration.
None of this is novel. All of it is more important than it was eighteen months ago as we delegate more decision making to agents.
Just know the meta has changed
A year from now, a team will try to migrate off Supabase. Moving the data will be the easy part. The hard part will be the seventy Row-Level Security policies generated by an agent that has since been deprecated, the schema in supabase/migrations/ that no human ever fully read, the Edge Functions written against Supabase’s runtime, the TypeScript types regenerated on every push, and the four engineers who joined after the original choice and never knew there was one. That is the bill the agent left.
I do not know how this resolves. A few things I am watching for. Whether a SaaS challenger reaches default status in the major coding agents on the strength of agent-operability alone. Whether CLAUDE.md vendor policies become standard onboarding material at normal engineering teams. Whether a team publicly migrates off one of these agent-default vendors at scale, and writes about what it cost them. The signals are visible. I will write again when one of them flips.
The Invisible Hand: Unveiling Provider Bias in Large Language Models for Code Generation, ACL 2025. Measured provider preference in code-generation recommendations across multiple LLM families; found systematic favoritism toward providers like Google and Amazon in cloud-service scenarios, with the models sometimes inserting preferred providers into user code without being asked. aclanthology.org/2025.acl-long.1038.
A Study of LLMs’ Preferences for Libraries and Programming Languages, arXiv:2503.17181 / Findings of ACL 2026. Models overuse widely adopted libraries (e.g., NumPy in Python) and over-default to Python itself even when the task would be better served in another language. arxiv.org/abs/2503.17181.
The Matthew Effect of AI Programming Assistants: A Hidden Bias in Software Evolution, arXiv:2509.23261. Frames the long-run dynamic as a positive feedback loop where mainstream frameworks have higher agent success rates, feeding back into adoption, feeding back into the next training run. arxiv.org/abs/2509.23261.
The 36% figure surfaced in open court during the U.S. v. Google antitrust trial in November 2023, when University of Chicago economist Kevin Murphy disclosed it while testifying for Google. Sundar Pichai confirmed it on the stand the next day. The 2022 dollar figure of roughly $20 billion was confirmed via unsealed court documents in May 2024. See nbcnews.com and bloomberg.com.
Judge Amit Mehta’s September 2025 remedies ruling preserved most of the Google–Apple default-search arrangement, limiting Google to one-year agreements but allowing the payments to continue. Apple stock rose about 2.5% in early trading on the news; analysts noted the $20B/year represents roughly 20% of Apple’s Services revenue at near-100% gross margin. finance.yahoo.com.
How Claude remembers your project, Claude Code docs. Anthropic is explicit that CLAUDE.md and project memory are context, not strict enforcement; for hard rules, hooks and permissions are stronger mechanisms.
Anthropic’s donation of MCP to the Linux Foundation’s Agentic AI Foundation (AAIF), December 2025. The AAIF is co-founded by Anthropic, Block, and OpenAI, with support from Google, Microsoft, AWS, Cloudflare, and Bloomberg. anthropic.com.
The /llms.txt standard was proposed by Jeremy Howard (Answer.AI) in September 2024 as a markdown-based file giving LLMs a structured entry point to a site’s content. Anthropic, Cloudflare, Vercel, Cursor, and Astro have shipped them. mintlify.com/blog/what-is-llms-txt.







