There’s a running debate on social media and in the vibe coding world about lines of code. That too many lines means slop. Too few means you didn’t build anything real. Everyone has an opinion.  Clearly, if you build in Replit/Lovable/vO etc without a developer, and iterate your app several times, you’ll end up with quite a few lines of code.  Does it matter?  What does it mean?

So let me add a real data point.

We have an app called 10K. It’s our AI VP of Marketing at SaaStr. We built it ourselves on Replit because we couldn’t find anything on the market that did what we needed. (More on that in a second.)

Here’s what 10K does every single day:

  • Runs our team stand-up
  • Designs every marketing activity and campaign
  • Manages every human on the team, assigns their daily GTM activities, and follows up
  • Provides daily Slack and email updates on everything GTM-related
  • Synthesizes real-time data from Salesforce, our registration systems, and every vendor API we use into a living six-month marketing plan
  • Has a built-in AI assistant that lets anyone on the team ask questions of the dashboard data in plain English

That’s pretty epic.  And it’s 14,230 lines of TypeScript, TSX, and CSS across 74 files. We’ve made 373 commits.

Could a great developer have done it in 3,000 lines? 4,000? 5,000?  Probably.

Is it “over-coded”? Probably.

Is there slop in here? I’m sure. Especially with 373 commits. The more you make, the more slop creeps in. That’s just the physics of iterative building.

Still, it works great.

And that’s the only metric that matters.

Too Much Slop May Be an Issue, But Lines of Code Arguably Doesn’t Matter Like It Used To

Users don’t care. Customers don’t care. Your team doesn’t care.  If you aren’t a developer, but still got an app into production, you don’t care.

They care if it works. They care if it solves a real problem. They care if it’s reliable.

10K replaced a function that used to require multiple full-time humans. Not because those humans weren’t good. They were. But the sheer volume of what 10K handles every day, the data synthesis across four-plus years of campaigns, the daily recalibration across every channel, the instant recall of what worked in Q3 2023 vs Q1 2025, no single human could do that. Not at this speed, not at this consistency.

If it takes 14,230 lines to do that? Fine. If a pro could trim it to 5,000? Also fine. The delta between 5,000 lines and 14,230 lines is an optimization problem. It’s not a product problem.

We Built Our Own AI VP of Marketing. Here’s What It Actually Does.

What 10K Actually Is

For context: 10K is really two apps working together.

The Brain. This is the strategic layer built on Claude Opus. We fed it four-plus years of SaaStr data: every campaign, every email open rate, every registration pattern, every sponsor interaction, every conversion rate by channel. Salesforce connected via APIs and Zapier. Real-time inputs from the 20+ agents we run daily.

From that, it builds and updates a six-month marketing plan. Not at the campaign theme level. Daily executable tasks. What emails to send. What to do with our AI SDR. How much to spend on LinkedIn ads this week and what the creative should say. What I should be posting. Where we’re behind on the attendance goal.

I talk to 10K every day. “Where are we? What should I be doing today? What’s falling behind?” It’s not always right. I push back when something feels off and it adjusts. But it keeps the marketing plan from drifting. With everything else I’m managing, agents, sales, production, investors, someone needs to be watching it. 10K watches it.

The Meeting. Every Monday, our team stand-up starts with 10K leading it. Revenue for the week, actual numbers. Goals for the week tied to the quarter. Pipeline across active channels. Recommended campaigns with reasoning. Metrics updating in real time as the meeting moves. It assigns every human on the team their GTM activities for the week and follows up daily.

No off-the-shelf tool does either of these. Not because good marketing tools don’t exist. They do. But the value is entirely in our proprietary data. Ten years of what’s worked and what hasn’t at SaaStr. No vendor can give you that.

Our AI VP of Marketing “10K” Said To Drop Prices. Our 10+ Years of Data Said Otherwise. Our AI VP Marketing Was Right.

The Real Math on Vibe Coding “Slop”

Let me be direct about what 373 commits actually looks like in practice.

You start building. The first 50 commits are clean. You have a clear vision, the AI understands what you want, the code is tight.

By commit 100, you’ve added features you didn’t plan for. The AI has solved problems in ways you wouldn’t have chosen. But it works, so you keep going.

By commit 200, there’s redundant code. Functions that do almost the same thing. CSS that could be consolidated. Variable names that don’t match anymore because the feature evolved.

By commit 373, you have a production application that handles complex real-world workflows, has never gone down during a stand-up, and runs a meaningful chunk of your company’s go-to-market operation.

Is it architecturally pristine? No. Would a senior engineer refactor half of it? Absolutely. Would that refactoring make the product meaningfully better for the humans using it? Almost certainly not.

Why We Built Instead of Bought (And Why You Usually Shouldn’t)

We have a rule at SaaStr: buy 90%, build 10%.

We run 20+ AI agents. Artisan for outbound sales. Qualified for inbound. Delphi for advisory conversations. Gamma for decks. Momentum and Attention for RevOps. The list goes on. We spend $500K+ a year on these tools. We buy whenever we can.

We only build when we literally cannot buy what we need AND it’s a top priority.

10K exists because the AI marketing agent market has a gap. Every solution we evaluated mainly just writes mediocre content. Blog posts, social captions, email copy. We already have more content than we know what to do with. That’s not our bottleneck.

Our bottleneck was orchestration. Data synthesis. Knowing what to do, when to do it, and executing against a coherent plan every single day. Nobody had built that product yet.

So we built it. Reluctantly.

And if someone ships a great marketing orchestration tool tomorrow that can ingest our proprietary data and run our daily operations? We’d switch. We’re not a software company. Every API change, every model update, every Replit release means maintenance work. Building is a tax. We pay it only when we have to.

The Humans Work Harder, Not Less

I want to be blunt about something: the three people still at SaaStr work harder now than any of us did when we had 20+ employees.

10K doesn’t replace human judgment. It replaces human drudgery. The data compilation, the campaign tracking, the daily status updates, the “where are we on registrations” questions that used to eat two hours of someone’s morning.

The humans are doing what only humans can do: strategic calls on partnerships, creative direction, relationship management with speakers and sponsors, high-stakes negotiations. Orchestrating 20+ AI agents is itself about 30% of our Chief AI Officer’s time every single day.

The leverage is 10x. The drama is roughly 0x.

What This Means for the Lines of Code Debate

Here’s my take, now that I’ve built 10+ production apps on Replit, everything from Founderscape, a startup simulator game (47,000 lines, 3,158 commits — and that one did hit some limits) to our AI VC and AI valuation calculators used almost 1,000,000 times:

Lines of code is a vanity metric. In both directions.

“I built it in 200 lines” tells me nothing about whether it works in production. “It’s 47,000 lines” tells me nothing about whether it’s any good. Although it may tell you a top developer didn’t build it 😉

The questions that matter … today:

  • Does it solve a real problem? 10K runs our entire marketing operation. Yes.
  • Does it work reliably? 373 commits, zero missed stand-ups. Yes.
  • Could someone else maintain it? With AI-assisted development, honestly, yes. The code is readable even if it’s verbose.
  • Was it worth building? We went from -19% revenue growth to +47%. 10K gets a share of that credit.

14,230 lines. 373 commits. Built by a non-developer founder on Replit.

It runs stand-ups, designs campaigns, manages humans, and synthesizes four years of data into daily action plans.

Could it be half the lines? Sure.

Would that make any difference to anyone who actually uses it?

Not even a little.


Have a question for Dear SaaStr? Submit it at saastr.ai/ai-mentor

Related Posts

Pin It on Pinterest

Share This