Build-in-public is a slot machine that pays you in dopamine and bills you in cortisol. The post takes 8 minutes to write. The dashboard refresh that follows takes 90 minutes spread across the rest of the day. By month two, most founder timelines that started as distribution channels have become anxiety pipelines with a publishing schedule. This essay is about the specific mechanism, why the cadence advice misses it, and a 30-day rule that separates the post from the dashboard without killing the channel.
The shortcut: post on a schedule, refuse to open analytics for 24 hours after each post, run the discipline for 30 days. Self-reported anxiety drops measurably. Cadence holds. The channel keeps working. The founder gets back the 90 minutes a day they were paying the slot machine.
// 01The loop, mechanically
The variable-reinforcement schedule is the same schedule that runs every slot machine in Las Vegas. B. F. Skinner described it in 1957. The brain learns to repeat behaviors whose rewards arrive unpredictably much faster than behaviors whose rewards are fixed. Posting on a public channel is variable reinforcement by design. A tweet might get 3 likes or 3,000. A LinkedIn post might get 200 impressions or 80,000. The post itself takes 8 minutes. The reward, when it arrives, can be felt across the entire next 24 hours.
The dashboard refresh is the lever. Every refresh either pays out (a number went up) or does not (the number is flat). The pay-out triggers a small dopamine release. The flat result triggers a small cortisol release. Both are reinforcing in opposite directions, which is exactly what the variable-reinforcement literature predicts will produce compulsive checking. Pieter Levels described this dynamic in a 2019 interview about Nomadlist, when he said he had to leave Twitter open in a separate window because closing it made him anxious.
The three habits the loop produces, in order
- Compulsive checking: Refresh frequency goes from once an hour to once every 4 minutes within 90 days. The number is real. Multiple build-in-public founders have published it. The check feels involuntary because, neurologically, it is.
- Pre-posting paralysis: The draft sits for 2 to 4 hours before posting. The brain knows the post will trigger the loop, so it postpones. The postponement is read by the founder as "I am polishing." The polishing rarely improves the post by more than 4%. The delay costs 100% of the dopamine the post would have produced at the original timing.
- Performance bleed: The metric the dashboard shows starts to shape the next post, not the customer. By month three, the channel is producing engagement-optimized content, not customer-acquisition content. The two diverge faster than founders expect, and the divergence is invisible from inside the loop.
// 02Why “post more, post consistently” misses the point
Most build-in-public advice operates on cadence. “Post once a day.” “Post 5 times a week.” “Show up consistently.” The advice is correct as far as it goes. The problem is that cadence is not the bottleneck. The dashboard fusion is. A founder can post 5 times a week and still spend 90 minutes a day on analytics, in which case the cadence is producing the anxiety the cadence advice was supposed to dissolve.
The right unit of intervention is the loop, not the schedule. Separate the post from the check, and the cadence becomes maintainable. Maintain the cadence without separating the post from the check, and the cadence breaks within 60 days. PostHog’s marketing team wrote about this in their own retrospective on their growth content program. The line they used was “we treated the post as the work and the dashboard as the receipt, not the other way around.” That phrasing is the entire fix.
// 03The 30-day rule
The rule is binary. Post one specific build-in-public update every weekday for 30 days, and refuse to open the post analytics on that post for at least 24 hours. Other analytics are still allowed. New-signup notifications are still allowed. The single banned action is checking how the specific post is performing inside the 24-hour window after it goes up.
The 24-hour delay is the load-bearing constraint. It is long enough that the variable-reinforcement loop attenuates. It is short enough that the founder still gets the feedback signal. The exact number comes from extinction-burst studies on operant conditioning: 18 to 36 hours is roughly the window where the conditioned behavior weakens without the channel itself dying. 24 is the comfortable middle.
How to set up the constraint so it survives day 4
- Use a publish-and-leave tool: Typefully, Buffer, Hypefury, or the platform-native scheduler. Schedule the post and physically leave the app. The constraint is harder to break when reopening the app is itself a deliberate action.
- Hide the analytics tab: Block twitter.com/analytics, linkedin.com/in/.../detail, etc. in your browser for 24 hours after each post. Plugins like Cold Turkey or LeechBlock NG do this with a date-based rule. The friction is small. The compliance jumps from 30% to over 80% with the blocker installed.
- Pre-write a substitute action: When the urge to check arises, the substitute is "open the shipped-experiment log and add a line." The substitute is concrete, short, and produces an artifact. The brain accepts the substitute after 4 to 6 days of pairing.
- Log the anxiety score: After each post, write a 1-to-10 number for "how anxious am I right now." The number is for you, not for the public. Over 30 days the score should drop by at least 30%. If it does not, the rule was not actually run, or the channel is misfit to your product.
// 04What to post, since the rule is content-agnostic
The 30-day rule does not specify content. It specifies the loop. Most founders who fail the rule do so on day 6 to 9, not because the rule is hard but because they have not decided what to post. The empty-prompt problem produces the same drift the anxiety-management essay describes. The fix is a content menu, fixed in advance.
A 5-format menu, one per weekday
- Monday: a metric: One real number from the last 7 days, with one sentence of interpretation. "Cold reply rate hit 14% on a 50-email batch with a new subject line. Last batch was 6% on a generic subject." The number is the post. The interpretation is for the strangers reading.
- Tuesday: a decision: Something you decided this week and why. Not the artifact. The decision. "Killed the freemium model after 6 weeks. Conversion was 1.1% and the support load was 90 minutes a day. The math did not work." A decision post is harder to write but compounds faster than a metric post.
- Wednesday: a kill: Something you stopped doing and the threshold that triggered the stop. The kill post is the rarest post on most build-in-public timelines, which is why it stands out. Marc Lou's 2024 timeline includes several. Each one earned outsized reach.
- Thursday: a small ship: A concrete artifact a customer can see, posted with one screenshot. Not a launch. A small ship: a renamed CTA, a new pricing page, a deleted onboarding step. The Thursday slot is the most reliable engagement driver because it carries the "small wins" signal that the platform algorithms reward without being a launch.
- Friday: a question: A specific question to a specific kind of person. "Solo founders who tried Reddit as a first channel: what was the kill threshold you set and did you hold it?" Friday questions produce DMs more often than feed engagement. DMs are the strongest signal a build-in-public channel produces.
The menu is replaceable, not sacred. If your product or audience needs a different mix, change the mix. The point is that the menu exists on day zero, so the empty-prompt problem does not recur every morning.
// 05What changes after day 30
Three patterns are common. The first is that the founder reports the post itself becomes easier and faster. Average draft-to-publish time drops from 35 minutes to under 12 by day 22. The second is that the cadence holds at 5 posts per week without willpower. The third is that one or two of the posts produce DMs from strangers that lead to signups or conversations. The DM signal is the one worth tracking. Engagement metrics are the easier signal to read, and they mostly do not predict the DM signal.
One failure mode is worth naming. A subset of founders run the rule successfully for 30 days, then immediately resume hourly dashboard refresh on day 31. The original loop is intact. The 30-day rule is not a one-time intervention. It is a permanent rule. The founders who keep it report sustained low anxiety on the channel. The founders who break it report the slot machine is back inside 7 days.
// 06Five things to carry forward
- 01: The post and the dashboard are two different habits. The build-in-public loop fuses them. The fix is to separate them.
- 02: The 24-hour delay is the load-bearing constraint. Shorter and the loop persists. Longer and the cadence breaks.
- 03: A pre-fixed content menu prevents the empty-prompt problem that breaks the rule on day 7. One format per weekday is enough.
- 04: The metric that matters is DMs, not likes. Optimize for the DM signal. Engagement metrics are easier to read and mostly mislead at this scale.
- 05: The rule is permanent. The 30-day experiment proves the rule works; the next 12 months are the rule running forever. Otherwise the slot machine is back in a week.
For the underlying anxiety-as-marketing pattern that the dashboard loop is one specific case of, see founder anxiety and marketing drift. For the full 30-day Twitter playbook with kill thresholds, see Twitter for first-time founders.
Turn the essay into an experiment this week.
Reading about founder psychology does not change anything. Running one small experiment with a metric and a kill threshold does. Pre-fill the suggested experiment above in Xi and the verdict lands in 30 days.
Run an experiment