Indie Hacking

What Vibe Coders Get Wrong About Building in Public (And How to Fix It)

Most vibe coders treat building in public like a personal diary. Here's why your ship updates are dying in the feed — and the 3-post formula that actually grows an audience.

Rori Hinds··8 min read
What Vibe Coders Get Wrong About Building in Public (And How to Fix It)

You’re building in public. You’re posting updates on X, sharing changelogs, writing threads about what you shipped this week.

And nobody cares.

Not because building in public is broken. It works — Pieter Levels built a 600K-follower audience and scaled Photo AI to $132K MRR off the back of it. Marc Lou turned 27 product launches into $1M in revenue by sharing everything publicly.

But here’s what they did that you’re not doing: they stopped posting for themselves and started posting for their audience.

The #1 Mistake: You’re Writing a Diary, Not Creating Content

Scroll through the #buildinpublic hashtag right now. You’ll see the same post repeated a thousand times:

“Just shipped dark mode! 🚀”

“Day 47: Added Stripe integration”

“Hit 100 users today! LFG 🔥”

These posts are for you. They’re milestones in your journey. And your audience — the people who might actually pay for your product — couldn’t care less.

Here’s the data. X/Twitter engagement has dropped to a median of 1.11%, down 17% over two years, according to SociaVault’s 2026 benchmarks. Nano accounts (1K-10K followers) — the tier most vibe coders sit in — average just 2.18% engagement. That means for every 1,000 followers, roughly 22 people interact with your post.

And if that post is “just shipped X feature”? Even those 22 scroll right past it.

The echo chamber trap

A Hacker News thread put it bluntly: "If you're building in public, there's a 99% chance you're going to end up building products for other indie hackers who are interested in following people who build in public." Your followers become other builders, not buyers. Vanity metrics feel like progress but they don't convert.

Vanity Updates vs. Teachable Moments

The difference between a post that dies and a post that grows your audience is one word: value.

A vanity update tells people what happened. A teachable moment tells people what they can learn from what happened.

Look at the difference:

Same events. Completely different value to the reader.
Vanity Update (Dies in Feed)Teachable Moment (Gets Shared)
"Just hit $5K MRR! 🎉""Hit $5K MRR. Month 1-3 was $0. Month 8 I almost quit. Here's exactly what changed — and the one channel that worked."
"Shipped our new onboarding flow""Our onboarding had a 40% drop-off. We removed 3 steps and activation doubled. Here's the before/after."
"Launched on Product Hunt today!""We got #3 on Product Hunt. It drove 800 visits and 12 signups. Here's why the conversion was terrible and what I'd change."
"Added AI-powered search 🚀""I tested 4 approaches to AI search. Three were garbage. Here's what worked and what each cost to implement."

According to a 2025 SparkToro study, posts with specific numbers get 3.1x more engagement than vague “we’re growing” updates. People don’t share your milestone. They share the lesson behind it.

Pieter Levels doesn’t just post “Photo AI hit $132K MRR.” He shares the 10-year timeline, the failed products, the specific channels that worked. That’s why 600K people follow him — he makes every update useful to other founders.

Marc Lou’s “Solopreneur Diary” on YouTube works the same way. He documents 27 product launches — including the ones that flopped. The failures are the content people come back for.

Why “I Just Shipped X” Posts Die in the Feed

Let’s be specific about why feature announcements tank.

1. No one has context for your product. You’ve been heads-down building for weeks. You know exactly why this feature matters. Your timeline followers don’t. They’re scrolling past 300 posts per session. Yours needs to stop the scroll with a problem, not a solution.

2. Ship posts are one-directional. They tell, they don’t teach. There’s nothing for the reader to take away and apply to their own work. No framework, no insight, no number. Nothing worth saving or sharing.

3. The algorithm punishes low-engagement posts. X’s engagement rates are in freefall — 1.11% median and dropping. If your first 30 minutes of engagement are weak, the algorithm buries you. And “just shipped dark mode” doesn’t exactly spark conversation.

What to post instead

Reframe every ship update as a decision post. Instead of "I built X," write "I had to choose between X and Y. Here's why I picked X, the tradeoff I accepted, and what happened." Decision posts invite debate. Debate drives replies. Replies drive reach.

Split screen illustration showing social media posts with zero engagement on the left versus compounding SEO traffic growth on the right

Your tweets die in hours. Blog posts compound for years.

Turn Your Build Log Into SEO Content That Compounds

Here’s the part almost every vibe coder misses.

You’re spending hours writing Twitter threads that die within hours. A tweet’s useful lifespan is measured in minutes. Meanwhile, SEO drives over 1,000% more traffic than organic social media, according to BrightEdge. And a well-optimized blog post? It peaks in years 2-3 and keeps driving traffic indefinitely.

You’re sitting on a goldmine of content and pouring it into the most fleeting medium possible.

Every build-in-public update you’ve posted in the last three months could be a blog post. Not a copy-paste — a proper, expanded version that targets a keyword your potential customers are searching for.

Think about it:

  • Your thread about choosing between Supabase and Firebase? That’s a comparison post targeting “Supabase vs Firebase for SaaS.”
  • Your tweet about hitting $1K MRR? That’s a case study targeting “how to get first 1000 MRR.”
  • Your changelog about adding AI features? That’s a tutorial targeting “add AI to SaaS app.”

This is the compounding content strategy that actually builds distribution. Social posts rent attention for a day. Blog posts own it for years.

The 3-Post Formula That Actually Converts

After studying what works for the founders who’ve built real audiences (not just follower counts), there’s a clear pattern. The best build-in-public content falls into three categories.

Three content cards representing the build-in-public post formula: what you built (rocket icon), what you learned (lightbulb icon), and what failed (warning icon)

The 3-post formula: build, learn, fail. Every update fits one of these.

The 3-Post Formula

Step 1

The Build Post (What you built + why it matters to THEM)

Don't announce the feature. Announce the problem it solves. "Users were abandoning onboarding at step 3. Here's the redesign that cut drop-off by 50%." Include the before/after, the data, and the decision logic. This gives readers a framework they can steal for their own product.

Step 2

The Learn Post (What you discovered that surprised you)

Share the non-obvious insight. "I assumed our power users wanted more features. Turns out they wanted fewer — just faster. Here's how we figured that out and what we cut." These posts get saved and shared because they challenge assumptions. An Athenic study of 2,400 build-in-public posts found that learning-focused content had the highest average engagement at 3.2%.

Step 3

The Fail Post (What broke, what bombed, what you'd do differently)

Failure posts are the most underused and highest-performing build-in-public content. "We spent $500 on Twitter ads. Got 3 signups. Here's why it bombed and where we're putting that budget instead." These build trust faster than any success post ever will. People share failures because they're rare and useful.

The ratio that works best, based on Athenic’s analysis of 11 founders who built audiences of 10K-100K? About 40% learning posts, 30% build updates, 20% failure posts, and 10% helping others. Notice that “pure milestone announcements” don’t even make the list.

And here’s the kicker — every single one of these social posts can become a blog post. The build post becomes a case study. The learn post becomes a how-to guide. The fail post becomes a “what not to do” article. That’s your content marketing engine running on material you’re already creating.

The Playbook: What to Change This Week

You don’t need to overhaul your entire building in public strategy. You need to make three adjustments.

1. Rewrite your last 5 updates using the “so what?” test. Read each post and ask: “If I were a founder who’s never heard of my product, would I learn something from this?” If the answer is no, rewrite it. Add the decision, the data, or the lesson.

2. Pick one update from this month and turn it into a blog post. Expand it. Add a keyword. Structure it with headers. Publish it on your domain. That one post will drive more traffic in 6 months than your last 50 tweets combined. If you need a quick path to get it live, here’s how to set up your whole content stack in a day.

3. Adopt the 40/30/20/10 content mix. For every 10 posts: 4 teach something, 3 show what you built (with context), 2 share a failure, and 1 directly helps someone else. This is the vibe coder mindset applied to content — ship fast, share what you learn, iterate.

The compounding math

If you publish 2 blog posts per month from your build log, you'll have 24 indexed pages in a year. Organic search accounts for 43.9% of all website traffic. Those 24 posts work for you while you sleep, ship, and build. Your tweets from January? They're already gone.

Stop Performing. Start Teaching.

Building in public was never supposed to be a performance. It started with Buffer publishing their salary list in 2013. Baremetrics making their dashboard public in 2014. Levels launching “12 startups in 12 months” while broke.

The founders who won didn’t just share what they built. They shared what they learned, what broke, and what they’d do differently. Their build logs were teaching materials, not highlight reels.

The vibe coding wave has made it easier than ever to ship products. 41% of all code is now AI-generated. The toolkit is better than ever. But shipping isn’t the hard part anymore — getting anyone to notice is.

So stop posting “just shipped X” into the void. Start turning your build log into content that teaches, compounds, and converts. That’s how building in public actually works.

Let your build log write your blog

Vibeblogger turns your ideas into SEO-optimized blog posts — researched, written, and published automatically. Stop wasting build-in-public content on tweets that disappear. Start compounding it.
See how it works

More articles

Ready to start?

Your first blog post is free.