For the past six-plus months, almost no one at SaaStr has logged into Salesforce. The data is all still there. We still pay for it. We still depend on it. We just stopped using the UI as the primary way to get at any of it.
Some context on why we did this. SaaStr runs today on a very small number of humans and 20+ production AI agents, with revenue up 47% year over year after being down 19%. At that ratio, the constraint stops being “is the CRM interface good.” Nobody has time to click through anyone’s interface. The constraint becomes whether your agents can reach the data.
What we actually did #
There’s no clever hack here. We used the Salesforce API to go headless, and we built an agent on top of that API using Claude. Internally we call it Claudeforce, and the agent itself we call 10K.
That’s it. The CRM became a system of record with an API in front of it, and the interface became whatever surface each person happens to prefer.
Six months in, here’s what we’ve learned.
#1. We would never go back. No chance. #
It’s infinitely better, Saleforce headless run by an AI agent running on Claude (10K) that can work with 20+ other APIs in real time. Not “it’s been mostly good.” We would not return to a world where the way you interact with your CRM is by clicking through someone else’s opinion about how records should be laid out.
Amelia and I now log into the classic Salesforce interface maybe twice a month, and usually only to check something obscure or trigger a marketing workflow. Our sales lead still uses classic Salesforce, but more and more our AI Agents take over that work from him. Both of those things are fine, which turns out to be the whole point (more on that below).
#2. We’re running 10+ of our 20+ agents directly on top of Headless Salesforce #
10+ of our 20+ production agents now touch the CRM layer. Some we built. Several are third-party agents that plug into the same API. Once the CRM is headless, adding an agent stops being a project and starts being a config change. You’re not negotiating for UI real estate or waiting for a vendor to ship an integration. You point the thing at the API and it works.
The number keeps going up because the marginal cost of the eleventh agent is close to zero.
#3. It let us build a “meta CRM” that actually knows everything #
This is the part I underestimated going in.
Our CRM data was never the problem. The problem was that our CRM data lived in one place, our marketing data in another, and our financial reality in Bill, Brex, and QuickBooks — three systems that had no idea the other two existed and certainly no idea who the customer was.
Going headless let us stitch all of it together into one layer that sees everything. Not a dashboard that pulls from four sources on a refresh cycle. A layer that can answer a question that spans the CRM, the marketing stack, and the finance stack in a single pass, because it has API access to all of them at once.
Ask it whether a given account has actually paid us, what they’ve opened in the last month, and what stage the renewal is in, and it just answers. That question used to require three people and a spreadsheet.
#4. We built an agentic quote-to-cash agent #
Contract to signature to collection, running on top of Salesforce.
Quote-to-cash is the classic example of a workflow that was theoretically automated for a decade and practically still involved a human copying numbers between systems. When the CRM is headless and the finance stack is on the same layer, the handoffs stop being handoffs. The agent generates the contract, chases the signature, and follows the collection.
#5. Our AI VP of Revenue pushes everything into Slack, daily and in real time #
I don’t ask for the update. It shows up.
Pipeline changes, closed deals, things that moved, things that didn’t. Real time, in the channel where I already am. The daily rhythm of a revenue org used to be a person compiling numbers and a leader reading them a day late. Now it’s a push.
#6. Data usage is up 10x. The bill is up 40%. #
Our data usage against Salesforce has gone up roughly 10x. We expect it to hit 100x. Our bill already went up about 40%. That’s OK, but it’s approaching our limit. If it goes up much more, we will stop storing as much data in Salesforce. Our AI Agents just consume and create so much more data than humans.
Read that again if you’re a vendor. When we made the platform genuinely open and API-first, we consumed dramatically more of it and we paid meaningfully more for it. The seat count didn’t drive that. Consumption did. Agents don’t check the CRM twice a day the way a rep does — they hit it constantly, because there’s no cost to them in doing so and enormous value in being current.
This is the same argument the Okta Enterprise AI Index makes from the outside. Account growth is a bad proxy for what’s actually happening with AI in the enterprise, because accounts get provisioned and then sit there. Usage is the number that moves. Our Salesforce line is that finding from the inside: our account count didn’t change at all, and our consumption went up 10x.
The vendors terrified that agents will collapse seat revenue are looking at the wrong line. The risk isn’t that agents reduce what you consume. It’s that a closed platform makes agents impossible, and someone else’s open platform becomes the substrate everything gets built on.
The real lesson: everyone wants a different surface #
This is what six months taught me that I didn’t expect.
Our sales lead uses classic Salesforce, because when you’re working deals all day the record view is genuinely the right tool. I check Slack, because I want the state of the business to find me. Amelia talks to 10K for an hour every morning, working through questions conversationally in a way no dashboard has ever supported. I ask it things when I happen to have a question, which is a completely different usage pattern from hers.
Four people. Four surfaces. Same underlying data. Nobody is wrong.
The old model assumed one canonical interface that everyone learned and adapted to, and the vendor’s job was to make that interface as good as possible. That assumption is finished. There is no single surface that wins, because the right surface depends on the job, the person, and the hour of the day.
Support every surface. Throttle it, overcharge for it, and ultimately you lose. Even if it helps make the quarter #
Our #1 learning: support every surface, and mean it. If Salesforce hadn’t, we’d be gone.
Your UI is one surface among many now, and for a growing share of your users it won’t be the primary one. That’s not a threat to your product. Your product is the data model, the workflow logic, and the system of record. The UI was always just one way to reach it.
The platforms that win the next decade will be the ones where a customer can go headless without asking permission, build whatever agent they want on top, and consume 10x more as a result. The ones that fight it will find their customers building the meta layer somewhere else — and then discovering that the CRM underneath is replaceable.
We went headless six months ago. Our usage is up 10x, our spend is up 40%, and we’re not going back.