<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Alex Cloudstar</title>
    <description>The latest articles on DEV Community by Alex Cloudstar (@alexcloudstar).</description>
    <link>https://dev.to/alexcloudstar</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1190670%2F18910089-3a37-4072-9b4c-289211f053eb.JPG</url>
      <title>DEV Community: Alex Cloudstar</title>
      <link>https://dev.to/alexcloudstar</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/alexcloudstar"/>
    <language>en</language>
    <item>
      <title>How to write a product description that gets approved</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Fri, 31 Jul 2026 16:56:22 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/how-to-write-a-product-description-that-gets-approved-45b6</link>
      <guid>https://dev.to/alexcloudstar/how-to-write-a-product-description-that-gets-approved-45b6</guid>
      <description>&lt;p&gt;Most directory rejections are not about the product. They are about the description.&lt;/p&gt;

&lt;p&gt;You know what you built. The reviewer and the visitor do not. You have a few sentences to close that gap. Get them wrong and your submission sits in limbo. Get them right and approval, clicks, and SEO value follow.&lt;/p&gt;

&lt;p&gt;This guide covers the description formats directories expect, the formula that works, real examples, and a checklist you can reuse on every submission including &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why product descriptions matter for SEO and approval
&lt;/h2&gt;

&lt;p&gt;Directory descriptions serve three audiences at once:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Human reviewers&lt;/strong&gt; deciding whether to approve your listing&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Visitors&lt;/strong&gt; browsing category pages deciding whether to click&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Search engines&lt;/strong&gt; indexing the listing page and associating keywords with your domain&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Curated directories in 2026 increasingly use internal search. If your description says "AI-powered platform" but never names your category or audience, you are invisible in directory search and unclear to reviewers.&lt;/p&gt;

&lt;p&gt;Industry guides on SaaS and startup directory submissions recommend preparing &lt;strong&gt;multiple description lengths&lt;/strong&gt; upfront:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Format&lt;/th&gt;
&lt;th&gt;Length&lt;/th&gt;
&lt;th&gt;Used for&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Tagline&lt;/td&gt;
&lt;td&gt;Under 100 characters&lt;/td&gt;
&lt;td&gt;Headlines, card titles&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Short description&lt;/td&gt;
&lt;td&gt;50 to 100 words&lt;/td&gt;
&lt;td&gt;Most submission forms&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Long description&lt;/td&gt;
&lt;td&gt;150 to 300 words&lt;/td&gt;
&lt;td&gt;Featured listings, SEO depth&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Extended&lt;/td&gt;
&lt;td&gt;500+ words&lt;/td&gt;
&lt;td&gt;Premium directories only&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;makers.page uses a short description on the submit form. Nail the short version first. Expand from there for other platforms.&lt;/p&gt;

&lt;h2&gt;
  
  
  The formula that gets approved
&lt;/h2&gt;

&lt;p&gt;Every strong description answers four questions:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;What does it do?&lt;/strong&gt; (plain language, no jargon)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Who is it for?&lt;/strong&gt; (specific audience)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;What outcome do they get?&lt;/strong&gt; (concrete benefit)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;What makes it different?&lt;/strong&gt; (one differentiator, not ten)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Compact template:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;[Product name]&lt;/strong&gt; is a &lt;strong&gt;[category]&lt;/strong&gt; for &lt;strong&gt;[specific user]&lt;/strong&gt; who &lt;strong&gt;[pain or goal]&lt;/strong&gt;. It &lt;strong&gt;[core action]&lt;/strong&gt; so you can &lt;strong&gt;[outcome]&lt;/strong&gt;. Unlike &lt;strong&gt;[alternative]&lt;/strong&gt;, it &lt;strong&gt;[one differentiator]&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Bad vs good examples
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Bad:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Revolutionary AI-powered platform leveraging cutting-edge technology to transform how modern teams collaborate."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Problems: no audience, no action, buzzwords, could describe anything.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Good:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"ReplyQuest is a Chrome extension for founders who want to post consistently on X. It gamifies replies and posts with XP, streaks, and leaderboards so daily engagement becomes a habit instead of a chore."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Why it works: names the product type, audience, core mechanic, and outcome.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bad:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"The all-in-one solution for startup growth."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Good:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"SubmitWell manually submits your startup to 50 curated directories with screenshot proof. Built for solo founders who want backlinks without spending a weekend on forms."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Prepare four description tiers (once, reuse everywhere)
&lt;/h2&gt;

&lt;p&gt;Founders who write fresh copy for every submission produce inconsistent listings and burn out. Prepare a kit once:&lt;/p&gt;

&lt;h3&gt;
  
  
  Tier 1: Tagline (under 100 characters)
&lt;/h3&gt;

&lt;p&gt;One sentence. Product type + audience + outcome.&lt;/p&gt;

&lt;p&gt;Example: "Chrome extension that gamifies X growth for indie founders."&lt;/p&gt;

&lt;h3&gt;
  
  
  Tier 2: Short description (50 to 100 words)
&lt;/h3&gt;

&lt;p&gt;Two to three sentences expanding the tagline. Include pricing signal if relevant ("free during beta", "free tier available").&lt;/p&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"ReplyQuest turns posting on X into a game. Earn XP for posts and replies, build streaks, unlock achievements, and climb leaderboards. Built for solo founders and creators who know consistency matters but struggle to show up daily. Free during beta."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Tier 3: Long description (150 to 300 words)
&lt;/h3&gt;

&lt;p&gt;Structure:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Paragraph 1&lt;/strong&gt;: The problem from the user's perspective&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Paragraph 2&lt;/strong&gt;: How your product solves it (workflow first, features second)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bullet list&lt;/strong&gt;: 3 to 4 benefits with outcomes, not feature dumps&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Close&lt;/strong&gt;: Pricing, CTA, or who it is NOT for (disqualifying audiences builds trust)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Tier 4: Extended (only when required)
&lt;/h3&gt;

&lt;p&gt;Some directories allow 500 to 2,500 characters. Use for premium listings. Do not write 2,000 words if 200 will do. Curators value density over length.&lt;/p&gt;

&lt;h2&gt;
  
  
  Keywords without keyword stuffing
&lt;/h2&gt;

&lt;p&gt;Directories are lightweight SEO surfaces. Place your primary keyword naturally:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Once in the tagline&lt;/li&gt;
&lt;li&gt;Once in the short description&lt;/li&gt;
&lt;li&gt;One to two times in the long description&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Primary keyword examples for indie products:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"project management tool for agencies"&lt;/li&gt;
&lt;li&gt;"Chrome extension for X growth"&lt;/li&gt;
&lt;li&gt;"indie startup directory"&lt;/li&gt;
&lt;li&gt;"invoice software for freelancers"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Avoid stuffing.&lt;/strong&gt; Repeating the same phrase six times hurts readability and lowers trust with reviewers. Google demotes obvious stuffing patterns on directory pages too.&lt;/p&gt;

&lt;p&gt;Match language to how your users search, not how your pitch deck speaks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Phrases that get submissions rejected
&lt;/h2&gt;

&lt;p&gt;Cut these from directory copy:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Phrase&lt;/th&gt;
&lt;th&gt;Why it fails&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;"Revolutionary" / "game-changing"&lt;/td&gt;
&lt;td&gt;Unverifiable superlative&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;"We leverage AI to..."&lt;/td&gt;
&lt;td&gt;Vague, overused&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;"All-in-one solution"&lt;/td&gt;
&lt;td&gt;Describes nothing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;"Best in class"&lt;/td&gt;
&lt;td&gt;Empty claim&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;"Disrupting the industry"&lt;/td&gt;
&lt;td&gt;Investor pitch, not user copy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;"For everyone"&lt;/td&gt;
&lt;td&gt;No audience self-selection&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Indie reviewers read dozens of submissions weekly. Specific beats hype every time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Categories: the hidden part of your description
&lt;/h2&gt;

&lt;p&gt;On &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;, categories are separate from the description but equally important for discovery.&lt;/p&gt;

&lt;p&gt;Pick every category that honestly fits. Common mappings:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Jira productivity extension → Productivity, Developer Tools&lt;/li&gt;
&lt;li&gt;X growth Chrome extension → Browser Extension, Social Media&lt;/li&gt;
&lt;li&gt;Billing API for SaaS → SaaS, Developer Tools&lt;/li&gt;
&lt;li&gt;Community platform for makers → Community, SaaS&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Wrong categories force reviewers to guess. Guessing slows approval.&lt;/p&gt;

&lt;h2&gt;
  
  
  Match the product stage honestly
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Live product
&lt;/h3&gt;

&lt;p&gt;Say what users can do today:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Sign up and create your first project in under 2 minutes"&lt;/li&gt;
&lt;li&gt;"Install the extension and see your XP dashboard immediately"&lt;/li&gt;
&lt;li&gt;"Connect Stripe and send your first invoice"&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Beta or waitlist
&lt;/h3&gt;

&lt;p&gt;Say that clearly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Free beta. Chrome extension live in the Web Store."&lt;/li&gt;
&lt;li&gt;"Waitlist open. Launching August 2026."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Submitting a concept page with no product behind it is a common rejection reason across directories.&lt;/p&gt;

&lt;h2&gt;
  
  
  The makers.page submit form
&lt;/h2&gt;

&lt;p&gt;The &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;submit form&lt;/a&gt; asks for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Founder name&lt;/li&gt;
&lt;li&gt;Email&lt;/li&gt;
&lt;li&gt;Product name&lt;/li&gt;
&lt;li&gt;Website URL&lt;/li&gt;
&lt;li&gt;Short description&lt;/li&gt;
&lt;li&gt;Categories (multi-select)&lt;/li&gt;
&lt;li&gt;X handle (optional)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Your description is the highest-leverage field. Two sentences using the who/what/outcome formula is enough if they are specific.&lt;/p&gt;

&lt;p&gt;After approval, your description appears on your public profile in &lt;a href="https://makers.page/products" rel="noopener noreferrer"&gt;Products&lt;/a&gt; and in the site &lt;a href="https://makers.page/sitemap.xml" rel="noopener noreferrer"&gt;sitemap&lt;/a&gt; for search indexing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Adapt descriptions per directory (without starting from scratch)
&lt;/h2&gt;

&lt;p&gt;Use the same core message. Adjust emphasis:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Investor-facing directories&lt;/strong&gt;: traction, market, team&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Developer directories&lt;/strong&gt;: stack, integrations, open source&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Indie maker directories&lt;/strong&gt;: builder story, free tier, who it helps&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Review platforms&lt;/strong&gt;: comparisons, pricing tiers, screenshots&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Never copy-paste identical paragraphs to 50 sites. Light adaptation per audience beats robotic duplication.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pre-submission checklist
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;[ ] Tagline under 100 characters&lt;/li&gt;
&lt;li&gt;[ ] Short description names audience and outcome&lt;/li&gt;
&lt;li&gt;[ ] No unverifiable superlatives&lt;/li&gt;
&lt;li&gt;[ ] Primary keyword appears naturally once&lt;/li&gt;
&lt;li&gt;[ ] Pricing or "free" mentioned if applicable&lt;/li&gt;
&lt;li&gt;[ ] Categories match the product&lt;/li&gt;
&lt;li&gt;[ ] URL works on mobile&lt;/li&gt;
&lt;li&gt;[ ] Description read aloud passes the "friend test"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Friend test:&lt;/strong&gt; read your description to someone who does not know your product. If they cannot explain it back, rewrite.&lt;/p&gt;

&lt;h2&gt;
  
  
  Frequently asked questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  How long should my makers.page description be?
&lt;/h3&gt;

&lt;p&gt;One to three sentences is enough. Clarity matters more than length.&lt;/p&gt;

&lt;h3&gt;
  
  
  Should I include pricing?
&lt;/h3&gt;

&lt;p&gt;Yes if you have a free tier or free beta. "Free" builds trust and helps directories filter listings.&lt;/p&gt;

&lt;h3&gt;
  
  
  Can I use the same description as my homepage?
&lt;/h3&gt;

&lt;p&gt;Use the same core message but tighten it. Homepage copy often assumes context a directory visitor lacks.&lt;/p&gt;

&lt;h3&gt;
  
  
  What if my product is hard to explain?
&lt;/h3&gt;

&lt;p&gt;Lead with the problem and one concrete example: "Before/after" or "instead of X, you do Y."&lt;/p&gt;

&lt;h3&gt;
  
  
  Do emojis help?
&lt;/h3&gt;

&lt;p&gt;Skip them unless the directory explicitly encourages them. Most curated sites prefer clean prose.&lt;/p&gt;

&lt;h2&gt;
  
  
  Write it once, submit everywhere
&lt;/h2&gt;

&lt;p&gt;A strong product description is a reusable asset. Write your tiers once, adapt lightly per platform, and approval rates go up across the board.&lt;/p&gt;

&lt;p&gt;Start with &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;. A clear description is the fastest path to an indexed profile and dofollow link.&lt;/p&gt;

&lt;p&gt;Related reading:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/how-to-get-your-indie-startup-featured" rel="noopener noreferrer"&gt;How to get your indie startup featured&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/where-to-list-your-indie-product" rel="noopener noreferrer"&gt;Where to list your indie product&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Originally published on &lt;a href="https://makers.page/blog/write-a-product-description-that-gets-approved" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;. Want a free indie listing with human review? &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your product&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>startup</category>
      <category>marketing</category>
      <category>writing</category>
      <category>indiehackers</category>
    </item>
    <item>
      <title>Where to list your indie product (and what to skip)</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Fri, 31 Jul 2026 16:55:41 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/where-to-list-your-indie-product-and-what-to-skip-56gi</link>
      <guid>https://dev.to/alexcloudstar/where-to-list-your-indie-product-and-what-to-skip-56gi</guid>
      <description>&lt;p&gt;Launch day makes you want to submit everywhere. That instinct wastes time.&lt;/p&gt;

&lt;p&gt;Listing on 40 sites in one afternoon gives you forty thin mentions, duplicate descriptions, and zero momentum. A focused distribution plan beats a spray-and-pray spreadsheet every time.&lt;/p&gt;

&lt;p&gt;This guide ranks where indie founders should list their product in 2026, what each channel is actually good for, and which directories are not worth your Tuesday afternoon.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why listing strategy matters more than listing volume
&lt;/h2&gt;

&lt;p&gt;Startup directory research in 2026 converges on the same advice:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Quality over quantity&lt;/strong&gt;: 10 to 20 relevant listings beat 100 spam submissions&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Verify link types&lt;/strong&gt;: many "dofollow" claims are paywalled or wrong on the free tier&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unique descriptions&lt;/strong&gt;: identical copy across directories creates a weak SEO footprint&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Manual submission&lt;/strong&gt;: automated blast tools trigger spam signals and low approval rates&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Your goal is not to appear everywhere. It is to appear in the right places with the right message for each audience.&lt;/p&gt;

&lt;h2&gt;
  
  
  The three tiers of listing channels
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Tier 1: Do these first (foundation)
&lt;/h3&gt;

&lt;p&gt;These channels build permanence, clarity, and early authority.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your own website&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Obvious but skipped constantly. Before any directory:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;One clear sentence above the fold&lt;/li&gt;
&lt;li&gt;Title tag with product name&lt;/li&gt;
&lt;li&gt;Meta description with your primary keyword&lt;/li&gt;
&lt;li&gt;Working signup or install on mobile&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Links to a vague homepage waste every directory listing you earn.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;One curated indie directory with a dofollow profile&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Pick a site that gives you a permanent indexed page, not a tweet-sized blurb that rotates off the homepage in 24 hours.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt; fits here: free submission, human review, public profile on &lt;a href="https://makers.page/products" rel="noopener noreferrer"&gt;Products&lt;/a&gt;, dofollow link when approved, and inclusion in the &lt;a href="https://makers.page/sitemap.xml" rel="noopener noreferrer"&gt;sitemap&lt;/a&gt;. Built specifically for indie founders, not enterprise SaaS upsells.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your personal X and LinkedIn&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Not directories, but where discovery actually happens for indie products. Post what you shipped, who it is for, one screenshot, and a direct link. Build-in-public posts outperform launch announcements for sustained signups.&lt;/p&gt;

&lt;h3&gt;
  
  
  Tier 2: Worth it when you have time (amplification)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Product Hunt&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Best for: launch-day traffic spike, social proof badge, often dofollow profile link.&lt;/p&gt;

&lt;p&gt;Not best for: sustainable weekly growth. Treat it as a milestone, not a strategy. Prepare assets, hunter network, and a first comment before you launch.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Indie Hackers&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Best for: build-in-public community, founder feedback, honest milestone posts.&lt;/p&gt;

&lt;p&gt;Tip: posts that teach something outperform "I built X" announcements. Share numbers, lessons, or a specific problem you solved.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Niche subreddits and communities&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Best for: qualified feedback and early users who match your ICP.&lt;/p&gt;

&lt;p&gt;Rules matter. Spend two weeks reading before you post. Answer questions helpfully. Mention your product only when it genuinely solves the problem in thread.&lt;/p&gt;

&lt;p&gt;Relevant subs often include r/SaaS, r/startups, r/SideProject, and category-specific communities.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SaaS and dev directories (verify dofollow)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Platforms like SaaSHub, AlternativeTo, StackShare, and G2 appear on many backlink guides. Value varies by product type and approval strictness. Always verify the live link attribute before counting on SEO pass.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;BetaList&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Best for: pre-launch waitlists and early adopter email collection. Link type varies by tier. Useful before you have a full product, less useful after.&lt;/p&gt;

&lt;h3&gt;
  
  
  Tier 3: Usually skip (traps and diminishing returns)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Paid "featured startup" listings&lt;/strong&gt; with no traffic proof&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Directory lists of 500+ sites&lt;/strong&gt; promoting mass submission&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sites requiring reciprocal backlinks&lt;/strong&gt; before listing&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Directories unchanged since 2019&lt;/strong&gt; with spammy outbound links&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Submission services that guarantee rankings&lt;/strong&gt; (red flag)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Paywalled dofollow&lt;/strong&gt; where free tier is nofollow but marketing hides that fact&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Founders who test submissions firsthand report that verifying &lt;code&gt;rel="nofollow"&lt;/code&gt; on live listings saves money and disappointment. PitchWall, TinyLaunch, and some review platforms paywall or condition dofollow status.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to verify a directory is worth your time
&lt;/h2&gt;

&lt;p&gt;Before you submit, check five things:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Is the site indexed?&lt;/strong&gt; Search &lt;code&gt;site:directory.com your-competitor&lt;/code&gt; on Google&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Does the listing page persist?&lt;/strong&gt; Or does it rotate off the homepage daily?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;What is the link type?&lt;/strong&gt; Inspect HTML on an existing free listing&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Is the audience relevant?&lt;/strong&gt; Indie tool vs enterprise procurement buyer&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Does approval require editorial review?&lt;/strong&gt; Curated lists tend to pass more trust than auto-approve spam buckets&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If three or more checks fail, skip it.&lt;/p&gt;

&lt;h2&gt;
  
  
  A 30-day listing schedule (not a one-day blast)
&lt;/h2&gt;

&lt;p&gt;Spreading submissions looks natural and gives you time to adapt copy.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Week&lt;/th&gt;
&lt;th&gt;Focus&lt;/th&gt;
&lt;th&gt;Actions&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Week 1&lt;/td&gt;
&lt;td&gt;Foundation&lt;/td&gt;
&lt;td&gt;Fix homepage, submit to makers.page, post on X&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Week 2&lt;/td&gt;
&lt;td&gt;Community&lt;/td&gt;
&lt;td&gt;Join 2 niche communities, answer 5 questions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Week 3&lt;/td&gt;
&lt;td&gt;Directories&lt;/td&gt;
&lt;td&gt;Submit to 3 to 5 verified SaaS/dev directories&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Week 4&lt;/td&gt;
&lt;td&gt;Launch milestone&lt;/td&gt;
&lt;td&gt;Product Hunt or Show HN if product is ready&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Adjust pace based on feedback. If reviewers keep asking the same question, fix the product or description before submitting elsewhere.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where makers.page fits in your stack
&lt;/h2&gt;

&lt;p&gt;Think of makers.page as a &lt;strong&gt;permanent profile layer&lt;/strong&gt;, not a one-day launch spike:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit&lt;/a&gt; with a clear description (&lt;a href="https://makers.page/blog/write-a-product-description-that-gets-approved" rel="noopener noreferrer"&gt;how to write one&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Get reviewed by someone who signs up and uses the product&lt;/li&gt;
&lt;li&gt;If approved, profile goes live with a &lt;a href="https://makers.page/blog/dofollow-backlinks-for-indie-startups" rel="noopener noreferrer"&gt;dofollow link&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Optional: shot at an honest YouTube review from &lt;a href="https://youtube.com/@alexcloudstar" rel="noopener noreferrer"&gt;alexcloudstar&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;No paywall. No upgrade tier for visibility. Always free.&lt;/p&gt;

&lt;p&gt;It pairs well with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Product Hunt for launch day&lt;/li&gt;
&lt;li&gt;Indie Hackers for ongoing community&lt;/li&gt;
&lt;li&gt;Niche Reddit/Discord for hand-to-hand user acquisition&lt;/li&gt;
&lt;li&gt;Content SEO for long-term compounding (&lt;a href="https://makers.page/blog/first-100-users-without-marketing-budget" rel="noopener noreferrer"&gt;first 100 users guide&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Directory submission kit (prepare once)
&lt;/h2&gt;

&lt;p&gt;Build this before you submit anywhere:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;[ ] Logo (PNG, transparent, 200x200 minimum)&lt;/li&gt;
&lt;li&gt;[ ] 3 to 5 product screenshots (real UI, not stock art)&lt;/li&gt;
&lt;li&gt;[ ] Tagline under 100 characters&lt;/li&gt;
&lt;li&gt;[ ] Short description (50 to 100 words)&lt;/li&gt;
&lt;li&gt;[ ] Long description (150 to 300 words)&lt;/li&gt;
&lt;li&gt;[ ] Founder name and X handle&lt;/li&gt;
&lt;li&gt;[ ] Pricing model (free, freemium, paid)&lt;/li&gt;
&lt;li&gt;[ ] Category tags (3 to 5 specific labels)&lt;/li&gt;
&lt;li&gt;[ ] UTM-tagged URLs for tracking (&lt;code&gt;?utm_source=directoryname&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Reuse the kit. Adapt emphasis per platform.&lt;/p&gt;

&lt;h2&gt;
  
  
  Common listing mistakes
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Identical copy everywhere&lt;/strong&gt; (duplicate content, low approval)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Wrong category&lt;/strong&gt; (reviewer confusion, poor internal search placement)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Broken demo links&lt;/strong&gt; (instant rejection)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Listing before the product works&lt;/strong&gt; (damages credibility)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Chasing DR spreadsheets&lt;/strong&gt; instead of audience fit&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ignoring nofollow platforms&lt;/strong&gt; that send real traffic (Reddit, HN)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Comparison: launch platform vs curated directory
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Factor&lt;/th&gt;
&lt;th&gt;Launch platform (PH, HN)&lt;/th&gt;
&lt;th&gt;Curated directory (makers.page)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Traffic pattern&lt;/td&gt;
&lt;td&gt;Spike, then drop&lt;/td&gt;
&lt;td&gt;Steady, low baseline&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Link permanence&lt;/td&gt;
&lt;td&gt;Profile often persists&lt;/td&gt;
&lt;td&gt;Profile persists&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Review process&lt;/td&gt;
&lt;td&gt;Community vote / moderation&lt;/td&gt;
&lt;td&gt;Editorial review&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Best timing&lt;/td&gt;
&lt;td&gt;Product ready, assets prepared&lt;/td&gt;
&lt;td&gt;Any time product is usable&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Primary value&lt;/td&gt;
&lt;td&gt;Visibility burst&lt;/td&gt;
&lt;td&gt;Indexed profile + dofollow SEO&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Use both. They solve different problems.&lt;/p&gt;

&lt;h2&gt;
  
  
  Frequently asked questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  How many directories should I submit to?
&lt;/h3&gt;

&lt;p&gt;Start with 5 to 10 quality targets in month one. Expand based on what drives signups, not what drives backlink count.&lt;/p&gt;

&lt;h3&gt;
  
  
  Should I pay for submission services?
&lt;/h3&gt;

&lt;p&gt;Some founders use them to save time. Audit the list yourself. Verify dofollow claims. Avoid spam networks.&lt;/p&gt;

&lt;h3&gt;
  
  
  Is Product Hunt enough?
&lt;/h3&gt;

&lt;p&gt;No. Launch spikes fade. Pair PH with permanent profiles and community channels.&lt;/p&gt;

&lt;h3&gt;
  
  
  Can I list a pre-launch product?
&lt;/h3&gt;

&lt;p&gt;Some directories accept waitlists. makers.page works best when reviewers can actually use the product. Be honest about stage.&lt;/p&gt;

&lt;h3&gt;
  
  
  How do I track which listings work?
&lt;/h3&gt;

&lt;p&gt;Use UTM parameters on every URL. Check referral traffic in analytics weekly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start with the right first listing
&lt;/h2&gt;

&lt;p&gt;You do not need forty directories. You need the right ones with clear copy and a working product.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit to makers.page for free&lt;/a&gt;. Then expand to launch platforms and communities from a solid foundation.&lt;/p&gt;

&lt;p&gt;Related reading:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/how-to-get-your-indie-startup-featured" rel="noopener noreferrer"&gt;How to get your indie startup featured&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/dofollow-backlinks-for-indie-startups" rel="noopener noreferrer"&gt;Why dofollow backlinks still matter&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Originally published on &lt;a href="https://makers.page/blog/where-to-list-your-indie-product" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;. Want a free indie listing with human review? &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your product&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>startup</category>
      <category>marketing</category>
      <category>indiehackers</category>
      <category>saas</category>
    </item>
    <item>
      <title>Structured outputs for LLMs: a developer guide (2026)</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Fri, 31 Jul 2026 16:55:30 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/structured-outputs-for-llms-a-developer-guide-2026-gm6</link>
      <guid>https://dev.to/alexcloudstar/structured-outputs-for-llms-a-developer-guide-2026-gm6</guid>
      <description>&lt;p&gt;Getting a language model to return prose is easy. Getting it to reliably return &lt;code&gt;{"status": "approved", "confidence": 0.87}&lt;/code&gt; every single time, with no stray text, no missing fields, and no invalid types, used to be the hard part of shipping LLM features to production.&lt;/p&gt;

&lt;p&gt;By 2026 this problem is mostly solved at the API level. Most frontier providers support schema-constrained generation directly, meaning the model is not just asked nicely to return JSON, it is structurally prevented from returning anything else. That changes how you should architect the parsing, validation, and error handling in your app.&lt;/p&gt;

&lt;p&gt;This guide covers the current state of structured outputs, how the major approaches differ, and how to pick the right one for a given feature.&lt;/p&gt;

&lt;h2&gt;
  
  
  What "structured output" actually means
&lt;/h2&gt;

&lt;p&gt;Structured output is any technique that constrains an LLM's response to a predictable, machine-parseable shape, typically JSON that matches a schema you define, rather than free-form text.&lt;/p&gt;

&lt;p&gt;There are three broad approaches in production today, and they are not interchangeable:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Prompted JSON&lt;/strong&gt;: you ask the model to return JSON in the prompt. The model tries its best. Nothing enforces the shape.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Constrained decoding / JSON mode&lt;/strong&gt;: the provider enforces valid JSON syntax, and in the strict variants, enforces your exact schema, at the token-sampling level.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tool or function calling&lt;/strong&gt;: the model chooses to invoke a defined function with typed arguments, and the provider validates the arguments against your schema before returning them.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Each solves a different part of the problem, and the differences matter once you are past a demo.&lt;/p&gt;

&lt;h2&gt;
  
  
  Approach 1: Prompted JSON (the fallback, not the plan)
&lt;/h2&gt;

&lt;p&gt;This is "please respond only in JSON" in your system prompt, with no provider-side enforcement.&lt;/p&gt;

&lt;p&gt;It works most of the time with capable models. It also occasionally returns:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;JSON wrapped in a markdown code fence&lt;/li&gt;
&lt;li&gt;A sentence of preamble before the JSON ("Sure, here's the JSON you requested:")&lt;/li&gt;
&lt;li&gt;Missing fields the model decided were not important&lt;/li&gt;
&lt;li&gt;Valid JSON with the wrong types (a number as a string, a null where you expected an array)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of these failures are common with strong models in 2026, but "occasionally" at scale means real requests failing in production. Prompted JSON should be treated as a fallback path for providers or models that do not support stronger guarantees, not the primary strategy for anything customer-facing.&lt;/p&gt;

&lt;p&gt;If you must use it, always wrap parsing in a &lt;code&gt;try/catch&lt;/code&gt;, strip markdown fences defensively, and validate the parsed object against a schema before trusting it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Approach 2: Constrained decoding and JSON mode
&lt;/h2&gt;

&lt;p&gt;Constrained decoding works at a lower level than the prompt. Instead of hoping the model produces valid JSON, the provider restricts which tokens the model is allowed to sample at each step, so it is structurally impossible to produce invalid syntax.&lt;/p&gt;

&lt;p&gt;Two tiers exist depending on the provider and model:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;JSON mode&lt;/strong&gt;: guarantees syntactically valid JSON. Does not guarantee it matches your schema. You can still get &lt;code&gt;{}&lt;/code&gt; or a JSON object with the wrong keys.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Schema-constrained JSON (strict mode)&lt;/strong&gt;: guarantees both valid JSON and conformance to a schema you supply, typically JSON Schema. Required fields will be present, types will match, and enums will be respected.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Strict schema-constrained generation is the strongest guarantee available without a second validation pass, because the constraint happens during generation, not after. As of 2026, this is broadly supported across frontier model APIs (OpenAI's Structured Outputs, Anthropic's tool-based schema enforcement, and Google's response schema parameter on Gemini), though exact feature names and support levels vary by model tier, so check current provider docs before assuming parity across every model in a family.&lt;/p&gt;

&lt;h3&gt;
  
  
  When to use it
&lt;/h3&gt;

&lt;p&gt;Use schema-constrained generation whenever the output feeds directly into your application logic without a human reading it first: classification results, extracted entities, form-filling, routing decisions, or anything stored directly in a database column with a fixed type.&lt;/p&gt;

&lt;h2&gt;
  
  
  Approach 3: Function and tool calling
&lt;/h2&gt;

&lt;p&gt;Function calling frames the model's job differently: instead of "write JSON," the model is told "you have access to these functions, decide if and how to call them." The model returns a structured call with arguments matching your function's parameter schema.&lt;/p&gt;

&lt;p&gt;This is the right model when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The model needs to &lt;strong&gt;decide whether&lt;/strong&gt; to produce structured output at all (should it answer in text, or call a tool?)&lt;/li&gt;
&lt;li&gt;You are chaining multiple possible actions and want the model to pick one or several&lt;/li&gt;
&lt;li&gt;You want the same schema enforcement as strict JSON mode, but framed as an action rather than a data blob&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Function calling and schema-constrained JSON solve overlapping problems from different angles. If your use case is "always produce this exact shape," plain schema-constrained output is simpler. If your use case is "decide what to do, then produce arguments for it," function calling is the better fit.&lt;/p&gt;

&lt;h2&gt;
  
  
  Comparing the approaches
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Approach&lt;/th&gt;
&lt;th&gt;Syntax guaranteed&lt;/th&gt;
&lt;th&gt;Schema guaranteed&lt;/th&gt;
&lt;th&gt;Best for&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Prompted JSON&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Prototypes, non-critical paths&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;JSON mode&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Loose structured text extraction&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Strict schema-constrained JSON&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Data pipelines, classification, extraction&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Function / tool calling&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Agentic decisions, multi-action flows&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Most production systems in 2026 use a mix: function calling for agent decision points, strict schema-constrained output for deterministic extraction and classification tasks, and prompted JSON only where a provider or model genuinely lacks stronger support.&lt;/p&gt;

&lt;h2&gt;
  
  
  Design your schema like an API contract
&lt;/h2&gt;

&lt;p&gt;Whichever approach you use, the schema itself is doing real engineering work. Treat it with the same care as a public API contract, because the model is effectively an unreliable caller of that contract.&lt;/p&gt;

&lt;p&gt;A few practices that consistently reduce failures:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Keep required fields minimal.&lt;/strong&gt; Every required field is a chance for the model to hallucinate a value when it does not actually have one. Make fields optional when "unknown" is a valid state.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Use enums instead of free strings wherever possible.&lt;/strong&gt; &lt;code&gt;"status": "approved" | "rejected" | "pending"&lt;/code&gt; is far more reliable than an open string field you then have to normalize.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Avoid deeply nested structures when you can flatten.&lt;/strong&gt; Deep nesting increases the chance of a subtly wrong shape, even under strict constraints, and makes downstream parsing more fragile.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Add a &lt;code&gt;confidence&lt;/code&gt; or &lt;code&gt;reasoning&lt;/code&gt; field for anything high-stakes.&lt;/strong&gt; Even with a guaranteed shape, you often want a signal for when to route to human review versus auto-accept.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Version your schemas.&lt;/strong&gt; Treat schema changes like breaking API changes. If you add a required field, old cached completions or retries built against the old schema will fail validation.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Validate even when the provider guarantees the schema
&lt;/h2&gt;

&lt;p&gt;Provider-side schema enforcement is strong, but it is not a substitute for validation in your own code, for a few concrete reasons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Provider outages or fallback models&lt;/strong&gt; may not support the same guarantee tier. If your code silently trusts the shape without checking, a degraded fallback path can push malformed data downstream.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Semantic correctness is not syntactic correctness.&lt;/strong&gt; The model can return a syntactically perfect object with a nonsensical value, like a &lt;code&gt;"confidence": 1.4&lt;/code&gt; when your range is 0 to 1, or a date field with an internally inconsistent value.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multi-provider setups&lt;/strong&gt; are common by 2026 for cost and reliability reasons. A schema that is strictly enforced on one provider may only be loosely enforced (or unsupported) on another you fail over to.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Run every structured response through a runtime validator (Zod, Pydantic, or your language's equivalent) before it touches business logic. This is a small amount of code that prevents an entire class of production incidents.&lt;/p&gt;

&lt;h2&gt;
  
  
  Handling failures gracefully
&lt;/h2&gt;

&lt;p&gt;Even with strict schema enforcement, you should design for the failure case, because it will happen: a rate limit forces a fallback to a weaker model, a provider has an incident, or a genuinely ambiguous input produces a technically valid but useless response.&lt;/p&gt;

&lt;p&gt;A reasonable failure strategy:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Validate the response against your schema on receipt.&lt;/li&gt;
&lt;li&gt;On validation failure, retry once with a slightly more explicit prompt or a stricter enforcement mode if you were not already using one.&lt;/li&gt;
&lt;li&gt;If it fails twice, fall back to a safe default or route to a human review queue rather than surfacing a broken state to the end user.&lt;/li&gt;
&lt;li&gt;Log the raw response for failed validations. These logs are the fastest way to spot schema issues or model regressions before users report them.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Treat structured output failures the same way you would treat a flaky third-party API: expected occasionally, handled explicitly, never silently swallowed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Structured outputs in agentic workflows
&lt;/h2&gt;

&lt;p&gt;Agent systems lean on structured outputs even more heavily than single-turn features, because each step in a multi-step agent typically needs to produce a machine-readable decision that feeds the next step.&lt;/p&gt;

&lt;p&gt;A few patterns specific to agents:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Use function calling for the routing layer.&lt;/strong&gt; Let the model choose which tool to call next, with arguments validated against each tool's schema.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Keep intermediate structured outputs small.&lt;/strong&gt; Agents that pass large structured blobs between steps accumulate context and cost quickly. Extract only what the next step needs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Log every structured decision in the chain.&lt;/strong&gt; When an agent produces a wrong final answer, the structured intermediate outputs are what let you debug which step went wrong, rather than guessing from a final unstructured response.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  A simple decision guide
&lt;/h2&gt;

&lt;p&gt;If you are unsure which approach to reach for on a new feature, this order of questions helps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Does the model need to decide whether to act, or just extract/classify?&lt;/strong&gt; If it is deciding among actions, use function calling.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Is the output going straight into application logic or a database?&lt;/strong&gt; If yes, use strict schema-constrained JSON, not prompted JSON.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Is this a low-stakes prototype or an experiment?&lt;/strong&gt; Prompted JSON with a validation layer is fine to move fast, but plan to upgrade before shipping broadly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Are you running on multiple providers or models?&lt;/strong&gt; Confirm schema enforcement support on every model in your fallback chain, not just the primary one.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Frequently asked questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Do I still need a JSON schema if the model rarely gets it wrong?
&lt;/h3&gt;

&lt;p&gt;Yes. "Rarely" at scale is still a real failure rate, and the cost of an unvalidated malformed object reaching your database or a user-facing screen is usually far higher than the cost of adding a validation step.&lt;/p&gt;

&lt;h3&gt;
  
  
  Is function calling slower than plain JSON mode?
&lt;/h3&gt;

&lt;p&gt;Latency differences are typically small and depend more on model choice and response length than on the mechanism itself. Benchmark your specific use case rather than assuming one approach is inherently faster.&lt;/p&gt;

&lt;h3&gt;
  
  
  Can I mix structured and unstructured output in one response?
&lt;/h3&gt;

&lt;p&gt;Some providers support this (structured tool calls alongside free-text explanation), but it adds complexity to parsing. If you need both, it is often cleaner to make a separate call, or a separate field, for the explanation.&lt;/p&gt;

&lt;h3&gt;
  
  
  What happens if I add a new required field to my schema later?
&lt;/h3&gt;

&lt;p&gt;Treat it as a breaking change. Any cached responses, retries, or logs generated against the old schema may not satisfy the new required field. Version your schemas or make new fields optional with sensible defaults.&lt;/p&gt;

&lt;h3&gt;
  
  
  Which provider has the best structured output support in 2026?
&lt;/h3&gt;

&lt;p&gt;Support has converged considerably across major providers, and the practical answer depends on which models you are already using for quality and cost reasons. Check the current documentation for your specific provider and model tier, since support tiers still vary by model size.&lt;/p&gt;

&lt;h2&gt;
  
  
  The honest summary
&lt;/h2&gt;

&lt;p&gt;Structured outputs stopped being a prompting trick and became an API-level guarantee. That is a genuine reliability upgrade, but it does not remove the need for good schema design, runtime validation, and explicit failure handling in your own code.&lt;/p&gt;

&lt;p&gt;Use schema-constrained generation as the default for anything that feeds application logic. Use function calling when the model needs to decide what to do, not just how to format an answer. Validate everything anyway, log failures, and design a graceful fallback path. Do that, and structured outputs become one of the more boring, reliable parts of an LLM-powered feature, which is exactly what you want from infrastructure.&lt;/p&gt;

&lt;p&gt;If you are building a developer tool or AI product and want early feedback plus a free, indexed profile, &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;submit it to makers.page&lt;/a&gt;. Real usage, real feedback, and a dofollow link if it is a fit.&lt;/p&gt;

&lt;p&gt;Related reading:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/first-100-users-without-marketing-budget" rel="noopener noreferrer"&gt;How to get your first 100 users without a marketing budget&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/dofollow-backlinks-for-indie-startups" rel="noopener noreferrer"&gt;Why dofollow backlinks still matter for indie startups&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Originally published on &lt;a href="https://makers.page/blog/structured-outputs-llm-developer-guide-2026" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;. Want a free indie listing with human review? &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your product&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>My setup: a step-by-step journey building makers.page</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Fri, 31 Jul 2026 16:54:51 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/my-setup-a-step-by-step-journey-building-makerspage-1jh6</link>
      <guid>https://dev.to/alexcloudstar/my-setup-a-step-by-step-journey-building-makerspage-1jh6</guid>
      <description>&lt;p&gt;People ask what my setup looks like more often than I expect for a project this small. Not because the stack is exotic, it is a fairly standard Next.js app on Vercel with a Postgres database, but because the &lt;em&gt;process&lt;/em&gt; behind shipping it is the part that is harder to see from the outside.&lt;/p&gt;

&lt;p&gt;This is the honest, step-by-step version: what I used, what I skipped, what broke, and what I would do differently if I started makers.page again today.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Starting from a problem I actually had
&lt;/h2&gt;

&lt;p&gt;makers.page did not start as a business plan. It started because I review indie products on YouTube and kept getting the same message: "how do I get you to look at my product?" There was no organized way to submit something, no queue, no public record of what got reviewed.&lt;/p&gt;

&lt;p&gt;The first version was not a product. It was a form. Literally a Google Form linked from my YouTube description, feeding into a spreadsheet I checked manually.&lt;/p&gt;

&lt;p&gt;That matters for the "setup" question, because the real first tool in my stack was not code. It was a way to validate that people would actually submit something before I spent a weekend building infrastructure for zero users.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: The actual stack
&lt;/h2&gt;

&lt;p&gt;Once the form proved people would submit, I moved to a real app. The stack settled on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Next.js (App Router)&lt;/strong&gt; for the frontend and API routes in one project, deployed on &lt;strong&gt;Vercel&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tailwind&lt;/strong&gt; for styling, because I do not want to context-switch into a separate CSS file for every component&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;shadcn&lt;/strong&gt; for base UI primitives I did not want to build from scratch (buttons, dialogs, form inputs)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Neon Postgres&lt;/strong&gt; for the database, mainly because serverless Postgres fits a Vercel deployment without me managing a server&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Drizzle&lt;/strong&gt; as the ORM, chosen over a heavier alternative because I wanted SQL-shaped queries I could actually read six months later&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of this is a special or clever choice. The main lesson from picking it was: boring, well-documented tools let me ship features instead of debugging my own infrastructure decisions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Building the submission and review flow first
&lt;/h2&gt;

&lt;p&gt;The core loop of makers.page is simple: someone submits, I review it, approved products get a public profile. I built that loop first, before anything else, including before the homepage looked good.&lt;/p&gt;

&lt;p&gt;Concretely, in order:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;A public &lt;code&gt;/submit&lt;/code&gt; form that writes to the database&lt;/li&gt;
&lt;li&gt;An internal view (not fancy, just a filtered table) for me to see new submissions&lt;/li&gt;
&lt;li&gt;An approval action that flips a status and generates a public profile page&lt;/li&gt;
&lt;li&gt;The public &lt;code&gt;/products&lt;/code&gt; directory and individual product pages&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I did not build user accounts, payments, or admin dashboards in this phase. The entire point was: can one person submit, and can I approve it, end to end. Everything else was premature.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: Writing the description and SEO layer
&lt;/h2&gt;

&lt;p&gt;Once the core loop worked, the next problem was discovery. A submission form nobody finds does not help anyone.&lt;/p&gt;

&lt;p&gt;This is where the site picked up:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Structured metadata and JSON-LD on product pages so approved profiles are eligible for rich results&lt;/li&gt;
&lt;li&gt;A sitemap and RSS feed generated from the actual content, not hand-maintained&lt;/li&gt;
&lt;li&gt;Dofollow links on approved profiles, because &lt;a href="https://makers.page/blog/dofollow-backlinks-for-indie-startups" rel="noopener noreferrer"&gt;nofollow links quietly hurt new founders&lt;/a&gt; more than most directories admit&lt;/li&gt;
&lt;li&gt;A &lt;a href="https://makers.page/blog" rel="noopener noreferrer"&gt;blog&lt;/a&gt; covering the exact problems the audience already searches for, like getting a &lt;a href="https://makers.page/blog/write-a-product-description-that-gets-approved" rel="noopener noreferrer"&gt;product description approved&lt;/a&gt; or &lt;a href="https://makers.page/blog/first-100-users-without-marketing-budget" rel="noopener noreferrer"&gt;finding your first 100 users&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of this happened in week one. It happened after the core loop was proven, because SEO content written before you know your actual audience tends to guess wrong about what they search for.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 5: The daily workflow now
&lt;/h2&gt;

&lt;p&gt;The day-to-day process looks less like "building a startup" and more like a routine:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Mornings&lt;/strong&gt;: review new submissions, sign up for the product, actually try it, decide approve or pass&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A block of deep work&lt;/strong&gt;: fix bugs, ship one improvement, sometimes write a blog post&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A short public update&lt;/strong&gt;: one honest post about what shipped or what broke that day&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Occasional YouTube review&lt;/strong&gt;: for approved products that fit the channel, filmed as a real first-use, not a highlight reel&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That daily update habit is the same discipline I wrote about in &lt;a href="https://makers.page/blog/building-in-public-without-burning-out" rel="noopener noreferrer"&gt;building in public without burning out&lt;/a&gt;. Separating the building block from the posting block keeps both sustainable.&lt;/p&gt;

&lt;h2&gt;
  
  
  What broke along the way
&lt;/h2&gt;

&lt;p&gt;Being honest about the setup means being honest about what did not work on the first try:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The first version of the review flow had no status history&lt;/strong&gt;, so I could not tell if a submission had already been reviewed and rejected before. Fixed by adding a proper status field instead of a boolean.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Early SEO metadata was copy-pasted across pages&lt;/strong&gt;, which meant duplicate titles across products. Fixed by generating metadata per product from the actual submission content.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;I underestimated how much time reviewing products actually takes.&lt;/strong&gt; A queue that looks manageable at 10 submissions a week does not stay manageable at 50 without a lighter internal review view.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The original &lt;code&gt;middleware.ts&lt;/code&gt; redirect logic needed migrating&lt;/strong&gt; as the framework evolved, a reminder that even boring infrastructure needs occasional maintenance, not just feature work.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What I would change if I started over
&lt;/h2&gt;

&lt;p&gt;If I rebuilt makers.page from scratch today, knowing what I know now:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I would build the internal review tooling earlier. It stayed a rough table for too long relative to how often I use it.&lt;/li&gt;
&lt;li&gt;I would write the first two or three SEO blog posts before launch, not months after, since they take time to get indexed and start ranking.&lt;/li&gt;
&lt;li&gt;I would keep the "one core loop first" discipline, which worked, and resist adding secondary features (accounts, notifications, anything non-essential) even earlier than I already did.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Frequently asked questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What stack do you recommend for a project like this?
&lt;/h3&gt;

&lt;p&gt;Whatever stack you already know well enough to move fast in. The specific tools (Next.js, Postgres, Tailwind) matter less than picking boring, documented technology you are not simultaneously learning and shipping with.&lt;/p&gt;

&lt;h3&gt;
  
  
  How long did it take to go from idea to a real product?
&lt;/h3&gt;

&lt;p&gt;The Google Form version existed for a few weeks before the first real app version shipped. The core submission-to-approval loop took about a weekend of focused work once I committed to building it properly.&lt;/p&gt;

&lt;h3&gt;
  
  
  Do you use any project management tools?
&lt;/h3&gt;

&lt;p&gt;Nothing elaborate. A simple task list and the submissions table itself function as the backlog. Overhead scales with team size, and this is a one-person operation.&lt;/p&gt;

&lt;h3&gt;
  
  
  How do you decide what to build next?
&lt;/h3&gt;

&lt;p&gt;Whatever removes friction from the core loop (submit, review, approve, publish) comes first. Everything else waits until that loop is solid.&lt;/p&gt;

&lt;h2&gt;
  
  
  The honest summary
&lt;/h2&gt;

&lt;p&gt;There is no secret tool behind makers.page. The setup that mattered was building the smallest possible version of the core loop first, being honest about what broke, and keeping the daily process simple enough to sustain for months instead of one exciting week.&lt;/p&gt;

&lt;p&gt;If you are building something similar and want a low-effort distribution channel while you focus on your own core loop, &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;submit your startup to makers.page&lt;/a&gt;. I try every product myself before anything goes live.&lt;/p&gt;

&lt;p&gt;Related reading:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/building-in-public-without-burning-out" rel="noopener noreferrer"&gt;Building in public without burning out&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/how-to-get-your-indie-startup-featured" rel="noopener noreferrer"&gt;How to get your indie startup featured&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Originally published on &lt;a href="https://makers.page/blog/my-setup-a-step-by-step-journey" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;. Want a free indie listing with human review? &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your product&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>nextjs</category>
      <category>indiehackers</category>
      <category>startup</category>
    </item>
    <item>
      <title>How to get your first 100 users without a marketing budget</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Fri, 31 Jul 2026 16:54:42 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/how-to-get-your-first-100-users-without-a-marketing-budget-2o6</link>
      <guid>https://dev.to/alexcloudstar/how-to-get-your-first-100-users-without-a-marketing-budget-2o6</guid>
      <description>&lt;p&gt;The first 100 users are the hardest. After that you have social proof, word of mouth, and enough data to know what is working. But users 1 through 100? You are selling from zero.&lt;/p&gt;

&lt;p&gt;Paid ads, viral loops, and referral programs do not work at zero. They amplify signal that already exists. On day one, there is no signal to amplify.&lt;/p&gt;

&lt;p&gt;Research on indie and SaaS growth in 2026 consistently points to the same truth: &lt;strong&gt;the first hundred users come from unscalable, hands-on channels&lt;/strong&gt;. Direct outreach. Community participation. One well-timed launch. Directory presence. Content that compounds slowly.&lt;/p&gt;

&lt;p&gt;This playbook breaks down what actually works when you have no budget, no audience, and no brand recognition.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why the first 100 users are different
&lt;/h2&gt;

&lt;p&gt;Distribution compounds. But compounding from zero is still zero.&lt;/p&gt;

&lt;p&gt;On launch day you typically have:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No email list&lt;/li&gt;
&lt;li&gt;No domain authority for SEO&lt;/li&gt;
&lt;li&gt;No reviews or testimonials&lt;/li&gt;
&lt;li&gt;No referral loop data&lt;/li&gt;
&lt;li&gt;No ad conversion benchmarks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That is why generic growth advice fails early. "Run Facebook ads" burns budget testing messaging you could test for free in DMs. "Post on Product Hunt" without a working product wastes your one shot. "Build an SEO strategy" pays off in months, not days.&lt;/p&gt;

&lt;p&gt;The first 100 require channels that work &lt;strong&gt;without an existing audience&lt;/strong&gt; and teach you something about your market along the way.&lt;/p&gt;

&lt;h2&gt;
  
  
  The channel stack that works at zero
&lt;/h2&gt;

&lt;p&gt;Rank channels by time-to-payoff and audience requirement:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Channel&lt;/th&gt;
&lt;th&gt;Time to results&lt;/th&gt;
&lt;th&gt;Needs existing audience?&lt;/th&gt;
&lt;th&gt;Cost&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Direct outreach (DMs, email)&lt;/td&gt;
&lt;td&gt;Days&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Founder communities&lt;/td&gt;
&lt;td&gt;1 to 4 weeks&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Curated directory listings&lt;/td&gt;
&lt;td&gt;1 to 2 weeks&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Content / SEO&lt;/td&gt;
&lt;td&gt;2 to 9 months&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Product Hunt / Show HN&lt;/td&gt;
&lt;td&gt;1 day spike&lt;/td&gt;
&lt;td&gt;Helpful&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Paid ads&lt;/td&gt;
&lt;td&gt;Immediate spend&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Expensive&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Skip paid ads and slow SEO-only strategies until you have exhausted the fast, free, hands-on channels.&lt;/p&gt;

&lt;h2&gt;
  
  
  Phase 1: Users 1 to 10 (week 1 to 2)
&lt;/h2&gt;

&lt;p&gt;Goal: learn whether real humans want this, not whether you can drive traffic.&lt;/p&gt;

&lt;h3&gt;
  
  
  Direct outreach to people you can name
&lt;/h3&gt;

&lt;p&gt;List 20 specific people who match your ideal user profile. Not "founders." Not "marketers." Actual names.&lt;/p&gt;

&lt;p&gt;DM 10 of them with a personal message:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Reference something specific they posted&lt;/li&gt;
&lt;li&gt;Explain the problem you noticed&lt;/li&gt;
&lt;li&gt;Offer free access in exchange for 10 minutes of feedback&lt;/li&gt;
&lt;li&gt;Do not send a generic "check out my product" link&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Conversion here is low and that is fine. One thoughtful conversation teaches more than 1,000 landing page visits.&lt;/p&gt;

&lt;h3&gt;
  
  
  Fix onboarding before you scale anything
&lt;/h3&gt;

&lt;p&gt;Watch the first 5 users attempt signup. Note every point they hesitate, every error, every "wait, what do I do now?"&lt;/p&gt;

&lt;p&gt;Fix those three friction points before you post anywhere public. Traffic to a broken funnel teaches nothing except that your funnel is broken.&lt;/p&gt;

&lt;h3&gt;
  
  
  Submit to one curated directory
&lt;/h3&gt;

&lt;p&gt;Early users trust third-party listings. A profile on a reviewed directory says someone else looked at your product.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit to makers.page&lt;/a&gt; for a free indexed profile with a dofollow link if approved. Pair it with a clear description (&lt;a href="https://makers.page/blog/write-a-product-description-that-gets-approved" rel="noopener noreferrer"&gt;writing guide&lt;/a&gt;).&lt;/p&gt;

&lt;h2&gt;
  
  
  Phase 2: Users 10 to 30 (week 3 to 4)
&lt;/h2&gt;

&lt;p&gt;Goal: find repeatable language and one community that responds.&lt;/p&gt;

&lt;h3&gt;
  
  
  Community participation (not promotion)
&lt;/h3&gt;

&lt;p&gt;Join 2 to 3 communities where your users already hang out:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Indie Hackers&lt;/li&gt;
&lt;li&gt;Niche subreddits&lt;/li&gt;
&lt;li&gt;Discord or Slack groups in your vertical&lt;/li&gt;
&lt;li&gt;Dev.to or relevant forums for developer tools&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Spend two weeks helping before you mention your product.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Answer questions. Share lessons. Post teardowns of problems in your space. The ratio that works in 2026 founder communities is roughly &lt;strong&gt;90% value, 10% product mention&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;When you do mention your tool, tie it to a specific problem in the thread. Not "I built X, check it out."&lt;/p&gt;

&lt;h3&gt;
  
  
  Publish one "what I learned" post
&lt;/h3&gt;

&lt;p&gt;Posts that teach outperform posts that announce. Formats that work:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"I spent 3 months solving X. Here is what failed."&lt;/li&gt;
&lt;li&gt;"How I reduced [pain] by [specific amount]"&lt;/li&gt;
&lt;li&gt;"The mistake I made building [category tool]"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Publish on Indie Hackers, Dev.to, your own &lt;a href="https://makers.page/blog" rel="noopener noreferrer"&gt;blog&lt;/a&gt;, or LinkedIn. Link to your product naturally at the end, not in the headline.&lt;/p&gt;

&lt;h3&gt;
  
  
  Talk to every user
&lt;/h3&gt;

&lt;p&gt;At 10 to 30 users, you can still speak to everyone personally. Do it.&lt;/p&gt;

&lt;p&gt;Ask:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What almost stopped you from signing up?&lt;/li&gt;
&lt;li&gt;What would you tell a friend this product does?&lt;/li&gt;
&lt;li&gt;Who else do you know with this problem?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Their exact words become your homepage copy, directory descriptions, and ad headlines later.&lt;/p&gt;

&lt;h2&gt;
  
  
  Phase 3: Users 30 to 60 (week 5 to 8)
&lt;/h2&gt;

&lt;p&gt;Goal: add passive discovery channels while keeping hands-on effort.&lt;/p&gt;

&lt;h3&gt;
  
  
  Directory and listing expansion
&lt;/h3&gt;

&lt;p&gt;Submit to 3 to 5 additional quality directories beyond makers.page. Use your &lt;a href="https://makers.page/blog/write-a-product-description-that-gets-approved" rel="noopener noreferrer"&gt;description kit&lt;/a&gt;. Verify dofollow claims on live listings.&lt;/p&gt;

&lt;p&gt;See the full tier list: &lt;a href="https://makers.page/blog/where-to-list-your-indie-product" rel="noopener noreferrer"&gt;Where to list your indie product&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Start SEO content (parallel, not primary)
&lt;/h3&gt;

&lt;p&gt;SEO will not get you to 30 users. Start it anyway so it pays off at 100+.&lt;/p&gt;

&lt;p&gt;Write 2 to 3 posts targeting problems your buyers already search:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"How to [solve specific pain]"&lt;/li&gt;
&lt;li&gt;"[Your category] for [specific audience]"&lt;/li&gt;
&lt;li&gt;"[Competitor] alternative for [niche]"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Publish on your site blog. Internal link to your product page. These posts compound for months.&lt;/p&gt;

&lt;p&gt;Examples on makers.page:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/dofollow-backlinks-for-indie-startups" rel="noopener noreferrer"&gt;Dofollow backlinks for indie startups&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/how-to-get-your-indie-startup-featured" rel="noopener noreferrer"&gt;How to get featured&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  One launch milestone (optional)
&lt;/h3&gt;

&lt;p&gt;If the product is solid and you have 20+ happy users who might upvote or comment, consider Product Hunt or Show HN.&lt;/p&gt;

&lt;p&gt;Treat this as a &lt;strong&gt;milestone&lt;/strong&gt;, not your entire strategy. Launch spikes fade. Community and SEO persist.&lt;/p&gt;

&lt;h3&gt;
  
  
  Ask for referrals manually
&lt;/h3&gt;

&lt;p&gt;At 30 users, ask your best 5 customers:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Who is one person you know who has this problem? Would you intro me?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Referrals at this stage are manual. Automated referral programs come later.&lt;/p&gt;

&lt;h2&gt;
  
  
  Phase 4: Users 60 to 100 (week 9 to 12)
&lt;/h2&gt;

&lt;p&gt;Goal: compound what worked. Kill what did not.&lt;/p&gt;

&lt;h3&gt;
  
  
  Double down on the one channel that sent signups
&lt;/h3&gt;

&lt;p&gt;Review UTM data and user interviews. If Indie Hackers sent 15 users and Reddit sent zero, post more on IH. Do not spread evenly across ten channels out of guilt.&lt;/p&gt;

&lt;h3&gt;
  
  
  Competitor research outreach
&lt;/h3&gt;

&lt;p&gt;Find 1-star reviews of competitors on G2, App Store, or Capterra. Read the specific complaints. If your product solves that complaint, reach out to the reviewer with a genuine note.&lt;/p&gt;

&lt;p&gt;This is tedious. It works because the pain is already articulated.&lt;/p&gt;

&lt;h3&gt;
  
  
  Improve conversion on what you have
&lt;/h3&gt;

&lt;p&gt;At 60 users, you have enough data to test:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Homepage headline variants&lt;/li&gt;
&lt;li&gt;Signup flow simplification&lt;/li&gt;
&lt;li&gt;Pricing page clarity&lt;/li&gt;
&lt;li&gt;Onboarding email sequence&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A 2x conversion improvement on existing traffic beats 2x traffic with the same broken funnel.&lt;/p&gt;

&lt;h3&gt;
  
  
  Layer directory SEO with content SEO
&lt;/h3&gt;

&lt;p&gt;By week 12, you want:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;An approved &lt;a href="https://makers.page/products" rel="noopener noreferrer"&gt;makers.page profile&lt;/a&gt; with dofollow link&lt;/li&gt;
&lt;li&gt;2 to 3 blog posts indexed on your domain&lt;/li&gt;
&lt;li&gt;Consistent presence in one community&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These compound while you sleep. They will not replace outreach, but they stop you from resetting to zero every Monday.&lt;/p&gt;

&lt;h2&gt;
  
  
  What not to do (common traps)
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Paid ads before product-market fit&lt;/strong&gt;&lt;br&gt;
You do not know your messaging, audience, or payback period. You will fund Google's learning phase with money you do not have.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mass directory spam&lt;/strong&gt;&lt;br&gt;
100 low-quality listings with identical copy hurt more than 5 good ones. See &lt;a href="https://makers.page/blog/where-to-list-your-indie-product" rel="noopener noreferrer"&gt;directory strategy guide&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Launching before the product works&lt;/strong&gt;&lt;br&gt;
One-shot launch platforms punish unfinished products publicly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Building in silence until "launch day"&lt;/strong&gt;&lt;br&gt;
The founders who hit 100 fastest ship in public, collect feedback early, and treat launch as a milestone in an ongoing story.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Optimizing for vanity metrics&lt;/strong&gt;&lt;br&gt;
Twitter impressions and Product Hunt rank do not pay rent. Track signups, activation, and conversations.&lt;/p&gt;

&lt;h2&gt;
  
  
  Metrics that matter at zero
&lt;/h2&gt;

&lt;p&gt;Forget everything that scales past 1,000 users. Track:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Metric&lt;/th&gt;
&lt;th&gt;Why it matters&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Weekly signups&lt;/td&gt;
&lt;td&gt;Raw growth pulse&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Activation rate&lt;/td&gt;
&lt;td&gt;Did they do the core action?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Time to first value&lt;/td&gt;
&lt;td&gt;How fast do they "get it"?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;User conversations per week&lt;/td&gt;
&lt;td&gt;Qualitative signal&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Referral intros&lt;/td&gt;
&lt;td&gt;Product worth mentioning?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Channel attribution (UTM)&lt;/td&gt;
&lt;td&gt;Where to double down&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;One real conversation beats 100 analytics events.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sample 12-week calendar
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Week&lt;/th&gt;
&lt;th&gt;Focus&lt;/th&gt;
&lt;th&gt;Target signups&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;10 personal DMs, fix onboarding&lt;/td&gt;
&lt;td&gt;3 to 5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;Submit makers.page, 1 community intro&lt;/td&gt;
&lt;td&gt;5 to 8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;Value post on IH or Reddit&lt;/td&gt;
&lt;td&gt;8 to 12&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;5 more DMs, user interviews&lt;/td&gt;
&lt;td&gt;12 to 18&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;3 directory submissions&lt;/td&gt;
&lt;td&gt;18 to 25&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;First SEO blog post published&lt;/td&gt;
&lt;td&gt;25 to 32&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;Community help + soft mention&lt;/td&gt;
&lt;td&gt;32 to 40&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;Optional PH/HN launch&lt;/td&gt;
&lt;td&gt;40 to 55&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;Referral asks to top 5 users&lt;/td&gt;
&lt;td&gt;55 to 65&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;Second SEO post, homepage rewrite&lt;/td&gt;
&lt;td&gt;65 to 75&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;11&lt;/td&gt;
&lt;td&gt;Competitor review outreach&lt;/td&gt;
&lt;td&gt;75 to 88&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12&lt;/td&gt;
&lt;td&gt;Double down on best channel&lt;/td&gt;
&lt;td&gt;88 to 100+&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Adjust based on your product type. B2B dev tools skew community and content. Consumer apps may skew social and referrals.&lt;/p&gt;

&lt;h2&gt;
  
  
  How makers.page fits the first 100 playbook
&lt;/h2&gt;

&lt;p&gt;makers.page is not a viral growth hack. It is a &lt;strong&gt;free distribution layer&lt;/strong&gt; that works while you do the hands-on work:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Submit in 2 minutes at &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;/submit&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Get a permanent profile if approved&lt;/li&gt;
&lt;li&gt;Earn a &lt;a href="https://makers.page/blog/dofollow-backlinks-for-indie-startups" rel="noopener noreferrer"&gt;dofollow backlink&lt;/a&gt; for SEO compounding&lt;/li&gt;
&lt;li&gt;Reach founders browsing &lt;a href="https://makers.page/products" rel="noopener noreferrer"&gt;Products&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Optional YouTube review from &lt;a href="https://youtube.com/@alexcloudstar" rel="noopener noreferrer"&gt;alexcloudstar&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Use it in week 1 or 2 alongside outreach. Not instead of outreach.&lt;/p&gt;

&lt;h2&gt;
  
  
  Frequently asked questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Can I really get 100 users with zero budget?
&lt;/h3&gt;

&lt;p&gt;Yes, but expect 8 to 12 weeks of consistent manual effort. There is no shortcut, only a sequence.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is the single highest-leverage channel?
&lt;/h3&gt;

&lt;p&gt;Direct outreach for users 1 to 10. Community participation for 10 to 50. Content and directories for compounding after that.&lt;/p&gt;

&lt;h3&gt;
  
  
  When should I start paid ads?
&lt;/h3&gt;

&lt;p&gt;After 100+ users when you know your CAC, LTV, and conversion funnel. Not before.&lt;/p&gt;

&lt;h3&gt;
  
  
  Is Product Hunt necessary?
&lt;/h3&gt;

&lt;p&gt;No. Helpful as a milestone if your product is ready. Not a replacement for daily distribution work.&lt;/p&gt;

&lt;h3&gt;
  
  
  How does SEO help if it takes months?
&lt;/h3&gt;

&lt;p&gt;Start early so traffic trickles in at user 100 while you focus on outreach. SEO is parallel, not primary, at zero.&lt;/p&gt;

&lt;h2&gt;
  
  
  The honest summary
&lt;/h2&gt;

&lt;p&gt;The first 100 users come from work that does not scale:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Personal messages to people who match your ICP&lt;/li&gt;
&lt;li&gt;Genuine help in communities where they gather&lt;/li&gt;
&lt;li&gt;Clear listings on curated directories&lt;/li&gt;
&lt;li&gt;Content that targets problems they already search for&lt;/li&gt;
&lt;li&gt;Conversations with every early user&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By user 100, you will know your market better than competitors who bought their way to vanity metrics. That knowledge is worth more than the users themselves.&lt;/p&gt;

&lt;p&gt;Start today. &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your startup to makers.page&lt;/a&gt;. Send 5 DMs. Post one useful thing in one community. Repeat tomorrow.&lt;/p&gt;

&lt;p&gt;Related reading:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/how-to-get-your-indie-startup-featured" rel="noopener noreferrer"&gt;How to get your indie startup featured&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/where-to-list-your-indie-product" rel="noopener noreferrer"&gt;Where to list your indie product&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Originally published on &lt;a href="https://makers.page/blog/first-100-users-without-marketing-budget" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;. Want a free indie listing with human review? &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your product&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>startup</category>
      <category>marketing</category>
      <category>indiehackers</category>
      <category>saas</category>
    </item>
    <item>
      <title>How to get your indie startup featured</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Fri, 31 Jul 2026 16:54:04 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/how-to-get-your-indie-startup-featured-2200</link>
      <guid>https://dev.to/alexcloudstar/how-to-get-your-indie-startup-featured-2200</guid>
      <description>&lt;p&gt;You built something. Now you need the right people to find it.&lt;/p&gt;

&lt;p&gt;Getting featured is not about having the biggest pitch deck or the most funding. It is about having a real product, explaining it clearly, and showing up where indie founders and early adopters already look.&lt;/p&gt;

&lt;p&gt;This guide walks through what &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt; offers, what the review process looks like, and how to give your submission the best shot at approval.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why indie founders submit to startup directories
&lt;/h2&gt;

&lt;p&gt;A new domain has almost no search authority. Google does not know who you are yet. Directories and curated listings help in three ways:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Discovery&lt;/strong&gt;: people browsing category pages find products they would never hit from a cold Google search&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backlinks&lt;/strong&gt;: a dofollow link from an indexed profile passes trust signals to your site&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Social proof&lt;/strong&gt;: a third-party listing says someone else looked at your product and put their name on it&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Research on startup directory submissions in 2026 consistently shows the same pattern: quality beats quantity. Founders who submit to 10 to 20 relevant directories with unique descriptions outperform those who blast 100+ sites with identical copy. Spammy mass submission can hurt more than it helps.&lt;/p&gt;

&lt;p&gt;makers.page sits in the curated, indie-focused camp. Submissions are free. Profiles link out with dofollow when approved. Every listing is reviewed by a real person who signs up and tries the product.&lt;/p&gt;

&lt;h2&gt;
  
  
  What you get when your startup is approved
&lt;/h2&gt;

&lt;p&gt;If your product is a fit, approval unlocks:&lt;/p&gt;

&lt;h3&gt;
  
  
  A public product profile
&lt;/h3&gt;

&lt;p&gt;Your listing goes live on &lt;a href="https://makers.page/products" rel="noopener noreferrer"&gt;Products&lt;/a&gt; with your product name, founder name, description, categories, and a link to your website. These pages are indexed, included in the &lt;a href="https://makers.page/sitemap.xml" rel="noopener noreferrer"&gt;sitemap&lt;/a&gt;, and built to rank over time for branded searches like "your product name makers.page."&lt;/p&gt;

&lt;h3&gt;
  
  
  A dofollow backlink
&lt;/h3&gt;

&lt;p&gt;Many startup directories nofollow outbound links by default. Some paywall dofollow status behind a paid tier. On makers.page, approved profiles include a dofollow link to your website. That matters early on when you are building your first meaningful backlink profile.&lt;/p&gt;

&lt;p&gt;Read more: &lt;a href="https://makers.page/blog/dofollow-backlinks-for-indie-startups" rel="noopener noreferrer"&gt;Why dofollow backlinks still matter for indie startups&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  A shot at a YouTube product review
&lt;/h3&gt;

&lt;p&gt;Beyond the directory listing, approved products may be reviewed on YouTube by &lt;a href="https://youtube.com/@alexcloudstar" rel="noopener noreferrer"&gt;alexcloudstar&lt;/a&gt;. The review is honest: the product gets used, not just screenshotted. That is different from a directory that auto-approves everything and never opens your app.&lt;/p&gt;

&lt;p&gt;There is no guarantee every approved product gets a video. The directory profile and dofollow link are the baseline. The review is a bonus for products that fit the channel.&lt;/p&gt;

&lt;h2&gt;
  
  
  What reviewers actually look for
&lt;/h2&gt;

&lt;p&gt;Most rejections are not about the product being bad. They are about clarity, readiness, or fit. Here is what matters:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. A real product people can use today
&lt;/h3&gt;

&lt;p&gt;Landing pages for products that do not exist yet are hard to review fairly. Waitlists are fine if you say so upfront. The strongest submissions point to something a reviewer can sign up for, install, or try in under five minutes.&lt;/p&gt;

&lt;p&gt;Ask yourself: if a stranger clicked your URL right now, could they understand and use the product without a demo call?&lt;/p&gt;

&lt;h3&gt;
  
  
  2. A clear use case
&lt;/h3&gt;

&lt;p&gt;The best descriptions follow a simple pattern: &lt;strong&gt;who it is for + what it does + what outcome they get&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Vague copy like "AI-powered platform for modern teams" tells a reviewer nothing. Specific copy like "Chrome extension that gamifies posting on X for solo founders who want consistency" tells them exactly where you fit.&lt;/p&gt;

&lt;p&gt;Need help writing yours? See &lt;a href="https://makers.page/blog/write-a-product-description-that-gets-approved" rel="noopener noreferrer"&gt;How to write a product description that gets approved&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Indie builder energy
&lt;/h3&gt;

&lt;p&gt;makers.page is built for solo founders, small teams, and side projects shipping in public. You do not need revenue, funding, or a LinkedIn full of credentials. You need something genuine that solves a real problem for a defined audience.&lt;/p&gt;

&lt;p&gt;Side projects welcome. Half-baked MVPs with honest descriptions often beat polished landing pages with nothing behind them.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Accurate categories
&lt;/h3&gt;

&lt;p&gt;Pick categories that match how people search, not how you wish they searched. A Jira productivity extension belongs in Productivity and Developer Tools. A social growth tool belongs in Social Media or Browser Extension. Wrong categories slow review because the reviewer has to reverse-engineer what you built.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to submit (step by step)
&lt;/h2&gt;

&lt;p&gt;Submission takes about two minutes. Here is the full flow:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Go to the &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;submit page&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Enter your name and email&lt;/li&gt;
&lt;li&gt;Add your product name and website URL&lt;/li&gt;
&lt;li&gt;Write a short description (one or two sentences is enough to start)&lt;/li&gt;
&lt;li&gt;Select all categories that fit&lt;/li&gt;
&lt;li&gt;Add your X handle if you have one&lt;/li&gt;
&lt;li&gt;Hit send&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;That is it. No credit card. No upgrade tier. No "pay to skip the queue."&lt;/p&gt;

&lt;h3&gt;
  
  
  What to prepare before you submit
&lt;/h3&gt;

&lt;p&gt;Even though the form is short, a little prep improves approval odds:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Homepage clarity&lt;/strong&gt;: one sentence above the fold that says who it is for&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Working signup or install flow&lt;/strong&gt;: test it on mobile&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Description draft&lt;/strong&gt;: use the who/what/outcome formula&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Correct URL&lt;/strong&gt;: link to the product page, not a broken staging site&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What happens after you submit
&lt;/h2&gt;

&lt;p&gt;Here is the timeline most founders can expect:&lt;/p&gt;

&lt;h3&gt;
  
  
  Review
&lt;/h3&gt;

&lt;p&gt;A real person signs up for your product and uses it. That is the whole point. Directory listings where nobody opens the app are worthless for everyone.&lt;/p&gt;

&lt;h3&gt;
  
  
  Approval
&lt;/h3&gt;

&lt;p&gt;If it is a fit for the directory (and potentially the YouTube channel), your profile goes live on &lt;a href="https://makers.page/products" rel="noopener noreferrer"&gt;Products&lt;/a&gt;. You get a public URL, indexed page, and dofollow link.&lt;/p&gt;

&lt;h3&gt;
  
  
  Feedback if it is not a fit yet
&lt;/h3&gt;

&lt;p&gt;Not every product belongs on every directory. If yours is not approved, you should still get useful feedback rather than silence. Use it to tighten your positioning, fix onboarding, or resubmit when the product is further along.&lt;/p&gt;

&lt;h2&gt;
  
  
  How makers.page compares to other listing options
&lt;/h2&gt;

&lt;p&gt;Founders often ask how this differs from Product Hunt, Indie Hackers, or paid submission services.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Channel&lt;/th&gt;
&lt;th&gt;Best for&lt;/th&gt;
&lt;th&gt;Link type&lt;/th&gt;
&lt;th&gt;Cost&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Product Hunt&lt;/td&gt;
&lt;td&gt;Launch day spike&lt;/td&gt;
&lt;td&gt;Often dofollow&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Indie Hackers&lt;/td&gt;
&lt;td&gt;Build-in-public community&lt;/td&gt;
&lt;td&gt;Mixed&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Paid submission agencies&lt;/td&gt;
&lt;td&gt;Volume listings&lt;/td&gt;
&lt;td&gt;Varies&lt;/td&gt;
&lt;td&gt;$35 to $500+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;makers.page&lt;/td&gt;
&lt;td&gt;Permanent indie profile + review shot&lt;/td&gt;
&lt;td&gt;Dofollow if approved&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The smart play is not either/or. Use a launch platform for momentum, communities for feedback, and a curated directory like makers.page for a permanent indexed profile with a dofollow link.&lt;/p&gt;

&lt;p&gt;More context: &lt;a href="https://makers.page/blog/where-to-list-your-indie-product" rel="noopener noreferrer"&gt;Where to list your indie product (and what to skip)&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Common mistakes that slow approval
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Buzzword descriptions&lt;/strong&gt; with no specific user or outcome&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Broken or password-gated demos&lt;/strong&gt; the reviewer cannot access&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Wrong categories&lt;/strong&gt; that hide what the product actually does&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Identical copy&lt;/strong&gt; pasted from your homepage tagline with zero context&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Submitting too early&lt;/strong&gt; before the core action works&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Fix these before you submit and you are already ahead of most listings in the queue.&lt;/p&gt;

&lt;h2&gt;
  
  
  Frequently asked questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Is submission really free?
&lt;/h3&gt;

&lt;p&gt;Yes. Always. There is no paid tier for visibility, dofollow status, or placement.&lt;/p&gt;

&lt;h3&gt;
  
  
  How long does review take?
&lt;/h3&gt;

&lt;p&gt;It depends on queue volume. Reviews require signing up and using the product, so timing varies. Submit once with a clear description rather than resubmitting the same product repeatedly.&lt;/p&gt;

&lt;h3&gt;
  
  
  Do I need traction or revenue?
&lt;/h3&gt;

&lt;p&gt;No. Early-stage and pre-revenue products are welcome if the product works and the use case is clear.&lt;/p&gt;

&lt;h3&gt;
  
  
  Can I submit a side project?
&lt;/h3&gt;

&lt;p&gt;Yes. Side projects and solo-founder tools are exactly what makers.page is for.&lt;/p&gt;

&lt;h3&gt;
  
  
  What if I am not ready for YouTube?
&lt;/h3&gt;

&lt;p&gt;That is fine. The directory profile and dofollow link are valuable on their own. The YouTube review is optional, not required.&lt;/p&gt;

&lt;h3&gt;
  
  
  Can I update my listing later?
&lt;/h3&gt;

&lt;p&gt;Contact through your submission email if your product name, URL, or description changes significantly after approval.&lt;/p&gt;

&lt;h2&gt;
  
  
  One small ask before you submit
&lt;/h2&gt;

&lt;p&gt;Running a free directory and review channel takes time. Before you submit, consider &lt;a href="https://youtube.com/@alexcloudstar" rel="noopener noreferrer"&gt;subscribing on YouTube&lt;/a&gt; and &lt;a href="https://x.com/@alexcloudstar" rel="noopener noreferrer"&gt;following on X&lt;/a&gt;. Fair trade for a free submission, a dofollow profile, and honest feedback.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ready to submit?
&lt;/h2&gt;

&lt;p&gt;If you have a real product, a clear description, and two minutes, you are ready.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your startup for free&lt;/a&gt;. Yours could be next on the list.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Originally published on &lt;a href="https://makers.page/blog/how-to-get-your-indie-startup-featured" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;. Want a free indie listing with human review? &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your product&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>startup</category>
      <category>marketing</category>
      <category>indiehackers</category>
      <category>saas</category>
    </item>
    <item>
      <title>How to buy a micro SaaS: a practical acquisition guide</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Fri, 31 Jul 2026 16:54:00 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/how-to-buy-a-micro-saas-a-practical-acquisition-guide-43b4</link>
      <guid>https://dev.to/alexcloudstar/how-to-buy-a-micro-saas-a-practical-acquisition-guide-43b4</guid>
      <description>&lt;p&gt;Buying a small, profitable SaaS is often faster than building one from zero. You skip the part where you guess whether anyone wants the product, because paying customers already answered that question. The trade-off is you inherit someone else's code, someone else's churn, and sometimes someone else's technical debt.&lt;/p&gt;

&lt;p&gt;This guide walks through where micro SaaS businesses actually get listed, how to evaluate a deal before you fall in love with the revenue number, what due diligence to run, and how to negotiate without overpaying for a business that might not survive the transition.&lt;/p&gt;

&lt;h2&gt;
  
  
  What counts as a micro SaaS acquisition
&lt;/h2&gt;

&lt;p&gt;There is no strict cutoff, but in practice "micro SaaS" acquisitions in 2026 typically mean:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Monthly recurring revenue from a few hundred dollars up to roughly $20,000&lt;/li&gt;
&lt;li&gt;A small, often solo-maintained codebase&lt;/li&gt;
&lt;li&gt;One founder or a tiny team running support, sales, and development&lt;/li&gt;
&lt;li&gt;A sale price commonly in the 2x to 4x annual revenue range, though this varies a lot by growth rate, churn, and how much of the business depends on the founder personally&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Above that range you are closer to a small business acquisition with lawyers, escrow services, and formal due diligence on both sides. Below it, the deal often looks more like buying a side project than buying a company.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where micro SaaS businesses get listed
&lt;/h2&gt;

&lt;p&gt;Deal flow comes from a handful of consistent sources:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Dedicated acquisition marketplaces.&lt;/strong&gt; Platforms built specifically for buying and selling small SaaS and content businesses, where sellers list revenue, traffic, and asking price upfront.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Indie founder communities.&lt;/strong&gt; Indie Hackers, niche Slack and Discord groups, and X threads where founders mention they are ready to sell, often before a listing goes anywhere public.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Direct outreach to founders who seem to have stalled.&lt;/strong&gt; A product with a stale changelog, an unanswered support inbox, or a founder who has publicly said they are burned out is sometimes open to an offer nobody asked them for.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Broker-assisted sales.&lt;/strong&gt; For larger micro SaaS deals, brokers who specialize in small SaaS transactions can filter for legitimacy and handle structuring in exchange for a commission.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Public marketplaces are the easiest starting point because the numbers are disclosed upfront. Direct outreach tends to produce better prices because there is no bidding pressure, but it takes longer and requires more legwork.&lt;/p&gt;

&lt;h2&gt;
  
  
  What actually predicts whether a micro SaaS is worth buying
&lt;/h2&gt;

&lt;p&gt;Revenue is the headline number. It is not the number that predicts whether you will regret the purchase in six months. Weigh these instead:&lt;/p&gt;

&lt;h3&gt;
  
  
  Revenue concentration and churn
&lt;/h3&gt;

&lt;p&gt;A product earning $3,000 a month from 300 customers paying $10 is a fundamentally different asset than one earning $3,000 a month from three customers paying $1,000. Ask for a customer list with tenure and payment history, not just a revenue chart. High concentration means your entire business depends on whether two or three people stay happy.&lt;/p&gt;

&lt;p&gt;Churn matters more than the current MRR. A product losing 8% of revenue monthly needs constant new signups just to stay flat. Ask for at least 12 months of churn data, not a snapshot.&lt;/p&gt;

&lt;h3&gt;
  
  
  How much depends on the founder
&lt;/h3&gt;

&lt;p&gt;Some products run themselves. Others run because the founder personally handles every support ticket, manually onboards every customer, or is the reason people trust the brand on social media. Ask directly: what happens to signups, support response time, and churn if the founder disappears for a month? If the honest answer is "it falls apart," you are not buying a business, you are buying a job.&lt;/p&gt;

&lt;h3&gt;
  
  
  Codebase health, not just feature count
&lt;/h3&gt;

&lt;p&gt;A long feature list built by one person over three years, with no tests, no documentation, and dependencies several major versions behind, is a liability disguised as an asset. Get read access to the repository before you commit to a price, not after. If the seller resists a code review, treat that as a signal.&lt;/p&gt;

&lt;h3&gt;
  
  
  Traffic and acquisition channel dependency
&lt;/h3&gt;

&lt;p&gt;If most signups come from one channel (a single SEO ranking, one App Store category, or one influencer partnership), that revenue is more fragile than it looks. Ask for traffic source breakdowns over the last 12 months, and check whether any single channel accounts for more than half of new signups.&lt;/p&gt;

&lt;h2&gt;
  
  
  Due diligence checklist before you make an offer
&lt;/h2&gt;

&lt;p&gt;Run through this before any money changes hands:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Financials&lt;/strong&gt;: request bank or payment processor statements, not just dashboard screenshots. Screenshots can be edited or cherry-picked.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Customer list&lt;/strong&gt;: verify real customers exist by reaching out (with permission) to a handful directly, or ask the seller to send a short survey on your behalf.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Codebase&lt;/strong&gt;: get repository access, check commit history for a single point of failure, and confirm there is no undisclosed technical debt (unpatched security issues, expired API keys tied to the founder's personal accounts, or a dependency on a service being shut down).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Legal ownership&lt;/strong&gt;: confirm the seller actually owns the domain, trademarks if any, and all code, including any contractor-written portions that might carry separate licensing terms.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Contracts and obligations&lt;/strong&gt;: check for any outstanding customer contracts, refund obligations, or reseller agreements that transfer to you.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Support load&lt;/strong&gt;: ask for average tickets per week and current response time. A backlog you inherit on day one is a hidden cost.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Do not skip this checklist because a deal feels time-pressured. A seller pushing hard for a fast close with limited access to real data is one of the more reliable warning signs in small acquisitions.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to think about valuation
&lt;/h2&gt;

&lt;p&gt;Micro SaaS deals commonly trade in a rough multiple-of-annual-revenue range, but the multiple should move based on the risk factors above, not just the topline number.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Factor&lt;/th&gt;
&lt;th&gt;Pushes multiple up&lt;/th&gt;
&lt;th&gt;Pushes multiple down&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Churn&lt;/td&gt;
&lt;td&gt;Low, stable&lt;/td&gt;
&lt;td&gt;High, trending worse&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Customer concentration&lt;/td&gt;
&lt;td&gt;Broad base&lt;/td&gt;
&lt;td&gt;Two or three accounts&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Founder dependency&lt;/td&gt;
&lt;td&gt;Fully automatable&lt;/td&gt;
&lt;td&gt;Founder is the product&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Growth trend&lt;/td&gt;
&lt;td&gt;Growing steadily&lt;/td&gt;
&lt;td&gt;Flat or declining&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Codebase quality&lt;/td&gt;
&lt;td&gt;Clean, tested, documented&lt;/td&gt;
&lt;td&gt;Undocumented, fragile&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Traffic source&lt;/td&gt;
&lt;td&gt;Diversified&lt;/td&gt;
&lt;td&gt;Single channel&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;A product with strong metrics on every row can justify a higher multiple. A product with green revenue but red flags on churn, concentration, or founder dependency should trade lower, even if the seller's initial ask does not reflect that.&lt;/p&gt;

&lt;h2&gt;
  
  
  Negotiating the deal
&lt;/h2&gt;

&lt;p&gt;A few practices that consistently lead to fairer outcomes on both sides:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Anchor on verified numbers, not the seller's marketing pitch.&lt;/strong&gt; Negotiate off the bank statements and churn data you confirmed, not the highlight reel in the listing.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Structure part of the payment as an earnout.&lt;/strong&gt; Paying a portion upfront and the rest over 3 to 12 months tied to retained revenue protects you if the business underperforms right after the handoff, and it signals the seller believes in what they are selling.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ask for a transition period.&lt;/strong&gt; A few weeks of the founder staying available for support and knowledge transfer reduces the risk of the "founder dependency" problem above turning into a real crisis.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Put it in writing.&lt;/strong&gt; Even a simple asset purchase agreement covering what is transferred, payment terms, and post-sale support expectations prevents disputes later. Use a lawyer for anything above a few thousand dollars.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Common mistakes buyers make
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Falling for revenue without checking churn.&lt;/strong&gt; A high MRR with high churn is a treadmill, not an asset.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Skipping the codebase review.&lt;/strong&gt; You cannot price technical debt you have not seen.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Underestimating founder dependency.&lt;/strong&gt; The seller's charm and support responsiveness do not transfer with the sale.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Overpaying for growth that was paid-acquisition-driven.&lt;/strong&gt; If growth came from ad spend the new owner has to keep funding, the growth rate alone tells you little about organic durability.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rushing the close because of seller pressure.&lt;/strong&gt; Legitimate sellers with clean businesses can usually accommodate a reasonable diligence timeline.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  After the acquisition: the first 90 days
&lt;/h2&gt;

&lt;p&gt;Buying the product is the easy part. Keeping customers through a handoff is where deals succeed or quietly fail.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Communicate the transition early and honestly&lt;/strong&gt;, ideally with the previous founder introducing you rather than a surprise email from an unfamiliar name.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Do not change pricing, branding, or core features in the first month.&lt;/strong&gt; Stability during the handoff matters more than any quick win you are tempted to ship.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Watch churn weekly, not monthly&lt;/strong&gt;, for the first quarter. Early warning signs of a bad transition show up fast.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Keep the support response time consistent&lt;/strong&gt; with what customers were used to. A slower response time post-acquisition is one of the most common triggers for early churn.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Frequently asked questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  How much revenue do I need to consider buying a micro SaaS?
&lt;/h3&gt;

&lt;p&gt;There is no minimum. Deals exist from a few hundred dollars a month up to tens of thousands. Smaller deals carry lower financial risk but often more founder-dependency risk, since tiny products are frequently run entirely by one person.&lt;/p&gt;

&lt;h3&gt;
  
  
  What multiple should I expect to pay?
&lt;/h3&gt;

&lt;p&gt;Roughly 2x to 4x annual revenue is common for healthy micro SaaS businesses, but the right multiple depends heavily on churn, concentration, and founder dependency, not just the topline number.&lt;/p&gt;

&lt;h3&gt;
  
  
  Should I use a broker?
&lt;/h3&gt;

&lt;p&gt;For larger deals, a broker who specializes in small SaaS transactions can add legitimacy and handle structuring. For smaller deals, many buyers negotiate directly with the seller and use a lawyer only for the final agreement.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is the biggest risk in a micro SaaS acquisition?
&lt;/h3&gt;

&lt;p&gt;Founder dependency. A product that looks automated on paper but actually runs on one person's daily manual effort can fall apart within weeks of a handoff if that is not addressed in the deal structure.&lt;/p&gt;

&lt;h3&gt;
  
  
  Can I finance a micro SaaS acquisition?
&lt;/h3&gt;

&lt;p&gt;Some buyers use seller financing (paying part of the price over time from the business's own cash flow) or earnouts tied to retained revenue. Traditional bank financing is less common at this deal size but not unheard of for larger acquisitions.&lt;/p&gt;

&lt;h2&gt;
  
  
  The honest summary
&lt;/h2&gt;

&lt;p&gt;A good micro SaaS acquisition is not the one with the biggest revenue number. It is the one where churn is low, the customer base is not concentrated in two accounts, the codebase does not require a full rewrite, and the founder is not secretly the entire product. Verify all four before you negotiate price, structure part of the payment as an earnout when you can, and protect the first 90 days after close more carefully than you protected the deal itself.&lt;/p&gt;

&lt;p&gt;If you end up building or buying something in the micro SaaS space, &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;submit it to makers.page&lt;/a&gt; for a free profile and a shot at &lt;a href="https://youtube.com/@alexcloudstar" rel="noopener noreferrer"&gt;an honest product review&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Related reading:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/first-100-users-without-marketing-budget" rel="noopener noreferrer"&gt;How to get your first 100 users without a marketing budget&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/dofollow-backlinks-for-indie-startups" rel="noopener noreferrer"&gt;Why dofollow backlinks still matter for indie startups&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Originally published on &lt;a href="https://makers.page/blog/how-to-buy-micro-saas-acquisition-guide" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;. Want a free indie listing with human review? &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your product&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>saas</category>
      <category>startup</category>
      <category>business</category>
      <category>indiehackers</category>
    </item>
    <item>
      <title>Why dofollow backlinks still matter for indie startups</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Fri, 31 Jul 2026 16:53:31 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/why-dofollow-backlinks-still-matter-for-indie-startups-1jn8</link>
      <guid>https://dev.to/alexcloudstar/why-dofollow-backlinks-still-matter-for-indie-startups-1jn8</guid>
      <description>&lt;p&gt;You listed your product on five directories last month. Traffic spiked for two days. Your Google rankings did not move.&lt;/p&gt;

&lt;p&gt;That gap usually comes down to link type, link quality, or both. Not every directory backlink helps SEO. Some help discovery. Some help trust. Only some pass ranking authority.&lt;/p&gt;

&lt;p&gt;This guide explains dofollow vs nofollow links, what makes a backlink worth pursuing, and how indie founders should think about directory SEO in 2026.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is a dofollow backlink?
&lt;/h2&gt;

&lt;p&gt;When Site A links to Site B, Google reads that link as a signal. A &lt;strong&gt;dofollow&lt;/strong&gt; link (technically, a link without a &lt;code&gt;rel="nofollow"&lt;/code&gt; attribute) tells search engines to pass authority from the linking page to your site.&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;nofollow&lt;/strong&gt; link tells Google not to pass that authority. The link can still drive clicks, brand mentions, and discovery. It just does not count the same way for rankings.&lt;/p&gt;

&lt;p&gt;Most large platforms default to nofollow on user-generated or outbound links to control spam. That is why Product Hunt, Reddit, Hacker News, and many review sites often nofollow free-tier listings even when they send real traffic.&lt;/p&gt;

&lt;p&gt;For a brand-new indie domain with zero domain rating, even one or two relevant dofollow links from indexed pages can matter more than fifty nofollow mentions on low-quality sites.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why new startups need backlinks at all
&lt;/h2&gt;

&lt;p&gt;Search engines discover and rank pages partly based on links from other sites. A new startup domain has:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No domain authority&lt;/li&gt;
&lt;li&gt;No indexed history&lt;/li&gt;
&lt;li&gt;No external references&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Directory submission is one of the few legitimate ways to earn early backlinks without buying links or spamming forums. Industry guides for 2026 consistently recommend focusing on &lt;strong&gt;10 to 20 quality, relevant directories&lt;/strong&gt; rather than mass-submitting to hundreds of low-authority lists.&lt;/p&gt;

&lt;p&gt;The goal is not backlink count. It is &lt;strong&gt;relevance, crawlability, and trust&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Dofollow vs nofollow: when each one matters
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Link type&lt;/th&gt;
&lt;th&gt;SEO authority&lt;/th&gt;
&lt;th&gt;Referral traffic&lt;/th&gt;
&lt;th&gt;Brand discovery&lt;/th&gt;
&lt;th&gt;Best use case&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Dofollow&lt;/td&gt;
&lt;td&gt;Passes ranking signals&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Building early domain trust&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Nofollow&lt;/td&gt;
&lt;td&gt;Minimal direct SEO pass&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Launch traffic, community discovery&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mixed platforms&lt;/td&gt;
&lt;td&gt;Varies by page/tier&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Verify live listing before counting on SEO&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Smart founders use both. Dofollow directories build foundational authority. Nofollow platforms like Reddit or Hacker News drive spikes and conversations. Treating every link the same leads to wasted effort on listings that never move SEO.&lt;/p&gt;

&lt;h3&gt;
  
  
  The paywall trap
&lt;/h3&gt;

&lt;p&gt;Several directories advertise backlinks but nofollow the free tier. Some require payment for dofollow. Others only grant dofollow if you embed their badge or finish top three on launch day.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Always verify the &lt;code&gt;rel&lt;/code&gt; attribute on a live listing&lt;/strong&gt; before assuming SEO value. Marketing pages lie. HTML does not.&lt;/p&gt;

&lt;h2&gt;
  
  
  What makes a good backlink for an indie product
&lt;/h2&gt;

&lt;p&gt;Not all dofollow links are equal. Google evaluates:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Relevance
&lt;/h3&gt;

&lt;p&gt;A link from a startup or SaaS directory helps a indie tool more than a link from a generic business directory in an unrelated niche.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Crawlability
&lt;/h3&gt;

&lt;p&gt;The linking page must be indexed. Check that the directory includes listings in its sitemap, allows crawling in robots.txt, and does not hide profiles behind login walls.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Context
&lt;/h3&gt;

&lt;p&gt;Your product name, description, and category tags near the link help search engines understand what your site is about. A naked URL on a link farm page helps nobody.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Authority (without obsessing over DR)
&lt;/h3&gt;

&lt;p&gt;Domain Rating and Domain Authority are useful heuristics, not gospel. A moderate-DR niche directory with real editorial review often beats a high-DR page with thousands of spam listings.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Permanence
&lt;/h3&gt;

&lt;p&gt;Launch-day spikes fade. A permanent profile page that stays indexed year after year compounds slowly but reliably.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where indie founders waste backlink effort
&lt;/h2&gt;

&lt;p&gt;These patterns show up constantly in founder forums and SEO guides:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Mass submission to 100+ directories&lt;/strong&gt; with identical descriptions (duplicate content footprint, low approval rates)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Chasing DR numbers&lt;/strong&gt; on irrelevant or spammy sites&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Paying for "guaranteed dofollow" packages&lt;/strong&gt; from networks Google already devalues&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ignoring nofollow entirely&lt;/strong&gt; and missing high-traffic community platforms&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Submitting before the product works&lt;/strong&gt;, getting rejected, and never updating the listing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Quality and consistency beat volume every time.&lt;/p&gt;

&lt;h2&gt;
  
  
  A practical backlink strategy for week one
&lt;/h2&gt;

&lt;p&gt;If you are launching an indie product with no SEO history, start here:&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Fix your own site first
&lt;/h3&gt;

&lt;p&gt;Before chasing backlinks, make sure your homepage has:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A clear title tag with your product name&lt;/li&gt;
&lt;li&gt;A meta description with your primary keyword&lt;/li&gt;
&lt;li&gt;One sentence explaining who it is for&lt;/li&gt;
&lt;li&gt;A working signup or install flow&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Links to a confusing page waste the authority they pass.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Pick 10 to 15 targets
&lt;/h3&gt;

&lt;p&gt;Mix dofollow directories, community platforms, and one launch channel. Prioritize sites where your actual users browse, not just sites with high DR on a spreadsheet.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Prepare unique descriptions
&lt;/h3&gt;

&lt;p&gt;Use the same core message but adapt length and emphasis per platform. Identical copy-paste across every directory creates a thin duplicate content pattern. See &lt;a href="https://makers.page/blog/write-a-product-description-that-gets-approved" rel="noopener noreferrer"&gt;How to write a product description that gets approved&lt;/a&gt; for templates.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 4: Submit manually over 2 to 4 weeks
&lt;/h3&gt;

&lt;p&gt;Spacing submissions looks more natural than blasting 50 forms in one afternoon. Track which listings go live and verify link attributes.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 5: Layer content and community
&lt;/h3&gt;

&lt;p&gt;Backlinks alone do not build a business. Pair directory listings with &lt;a href="https://makers.page/blog/first-100-users-without-marketing-budget" rel="noopener noreferrer"&gt;community participation and content&lt;/a&gt; that earns links organically over time.&lt;/p&gt;

&lt;h2&gt;
  
  
  How makers.page handles backlinks
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt; is built for indie founders who want a &lt;strong&gt;permanent, indexed profile&lt;/strong&gt; with a &lt;strong&gt;dofollow link&lt;/strong&gt; when approved.&lt;/p&gt;

&lt;p&gt;What that means in practice:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Your product gets a dedicated URL on makers.page&lt;/li&gt;
&lt;li&gt;The page is included in the site &lt;a href="https://makers.page/sitemap.xml" rel="noopener noreferrer"&gt;sitemap&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Approved listings link to your website with a dofollow outbound link&lt;/li&gt;
&lt;li&gt;Profiles include your description, categories, and founder name for context&lt;/li&gt;
&lt;li&gt;Submission is free with no paid tier for link equity&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It is not a mass directory. Submissions are reviewed. That editorial filter is exactly what makes the link trustworthy to both users and search engines.&lt;/p&gt;

&lt;p&gt;Browse live examples on &lt;a href="https://makers.page/products" rel="noopener noreferrer"&gt;Products&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Dofollow directories worth knowing about (2026 landscape)
&lt;/h2&gt;

&lt;p&gt;Every platform changes policies. Treat this as a starting research list, not a guarantee:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Platform type&lt;/th&gt;
&lt;th&gt;Typical link type&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Curated indie directories&lt;/td&gt;
&lt;td&gt;Often dofollow&lt;/td&gt;
&lt;td&gt;Verify per listing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SaaS review sites (G2, Capterra)&lt;/td&gt;
&lt;td&gt;Mixed&lt;/td&gt;
&lt;td&gt;High intent, strict approval&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Launch platforms (Product Hunt)&lt;/td&gt;
&lt;td&gt;Often dofollow&lt;/td&gt;
&lt;td&gt;One-day spike, long-tail profile&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Community posts (Reddit, HN)&lt;/td&gt;
&lt;td&gt;Usually nofollow&lt;/td&gt;
&lt;td&gt;Traffic and discovery&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Generic free directory lists&lt;/td&gt;
&lt;td&gt;Often low quality&lt;/td&gt;
&lt;td&gt;Avoid spam networks&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Founders who test submissions firsthand report that verifying live &lt;code&gt;rel&lt;/code&gt; attributes matters more than trusting "dofollow" badges in directory marketing copy.&lt;/p&gt;

&lt;p&gt;makers.page belongs in the curated indie bucket: free submission, human review, dofollow on approval.&lt;/p&gt;

&lt;h2&gt;
  
  
  Backlinks and AI search (2026)
&lt;/h2&gt;

&lt;p&gt;Search is shifting. AI overviews and answer engines cite brands with clear entity signals: consistent name, URL, description, and third-party mentions across the web.&lt;/p&gt;

&lt;p&gt;Directory listings help here even when SEO impact is hard to measure. They create &lt;strong&gt;indexed mentions&lt;/strong&gt; of your product name linked to your domain. That consistency helps search engines and AI systems understand what you are.&lt;/p&gt;

&lt;p&gt;Think of directory SEO as &lt;strong&gt;entity building&lt;/strong&gt;, not just PageRank chasing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Checklist: before you submit anywhere
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;[ ] Product URL loads and core action works&lt;/li&gt;
&lt;li&gt;[ ] Description follows who/what/outcome format&lt;/li&gt;
&lt;li&gt;[ ] Categories match the product honestly&lt;/li&gt;
&lt;li&gt;[ ] You prepared short and long description variants&lt;/li&gt;
&lt;li&gt;[ ] You checked the directory's link policy on a live listing&lt;/li&gt;
&lt;li&gt;[ ] You plan to update the listing when pricing or features change&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Frequently asked questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Are dofollow links still important in 2026?
&lt;/h3&gt;

&lt;p&gt;Yes, especially for new domains building initial authority. They are one signal among many, but they still matter for early-stage SEO.&lt;/p&gt;

&lt;h3&gt;
  
  
  How many dofollow links do I need?
&lt;/h3&gt;

&lt;p&gt;There is no magic number. Five to ten quality, relevant links often outperform fifty low-quality ones for a new indie product.&lt;/p&gt;

&lt;h3&gt;
  
  
  Can nofollow links hurt me?
&lt;/h3&gt;

&lt;p&gt;No. They just pass less direct ranking authority. They can still drive traffic and brand awareness.&lt;/p&gt;

&lt;h3&gt;
  
  
  Should I pay for directory submission services?
&lt;/h3&gt;

&lt;p&gt;Some founders use them to save time. If you do, audit the directory list for quality and verify dofollow claims yourself. Never pay for spam networks.&lt;/p&gt;

&lt;h3&gt;
  
  
  How long until backlinks affect rankings?
&lt;/h3&gt;

&lt;p&gt;Weeks to months. SEO compounds slowly. Directory links are a foundation, not an overnight ranking trick.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start with one good link
&lt;/h2&gt;

&lt;p&gt;Backlink building for indie startups is a patience game. Start with one curated, dofollow, indexed profile on a site that actually reviews your product.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit to makers.page for free&lt;/a&gt;. Build from there.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Originally published on &lt;a href="https://makers.page/blog/dofollow-backlinks-for-indie-startups" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;. Want a free indie listing with human review? &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your product&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>seo</category>
      <category>startup</category>
      <category>indiehackers</category>
      <category>marketing</category>
    </item>
    <item>
      <title>Building in public without burning out</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Fri, 31 Jul 2026 16:53:27 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/building-in-public-without-burning-out-2857</link>
      <guid>https://dev.to/alexcloudstar/building-in-public-without-burning-out-2857</guid>
      <description>&lt;p&gt;Building in public sounds simple: ship, post, repeat. In practice, it turns into a second job. You are coding all day, then performing your progress all night. Six months in, a lot of founders quietly stop posting, not because the product failed, but because the public part burned them out first.&lt;/p&gt;

&lt;p&gt;Building in public is a distribution channel, not an identity. Treat it that way and it becomes sustainable. Treat it as a personality and it becomes a source of anxiety that outlasts most products.&lt;/p&gt;

&lt;p&gt;This guide covers how to share progress publicly without letting the audience run your schedule, your mood, or your roadmap.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why building in public burns founders out
&lt;/h2&gt;

&lt;p&gt;The appeal is obvious: free distribution, accountability, and a community that roots for you. The cost is less obvious until you are a few months in.&lt;/p&gt;

&lt;p&gt;Three patterns cause most of the burnout:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Metrics become the product.&lt;/strong&gt; You start optimizing for likes and replies instead of the thing you are actually building.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Every day becomes a content day.&lt;/strong&gt; Shipping code and shipping a post about the code both need to happen, every day, forever.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Silence starts to feel like failure.&lt;/strong&gt; A quiet week on X feels like falling behind, even if the product moved forward more than usual.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of these are inherent to building in public. They are side effects of doing it without boundaries.&lt;/p&gt;

&lt;h2&gt;
  
  
  Separate "building" from "public"
&lt;/h2&gt;

&lt;p&gt;The healthiest founders treat these as two different jobs with two different schedules.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Building&lt;/strong&gt; is deep work: writing code, talking to users, fixing bugs, thinking through the roadmap. It needs long uninterrupted blocks and almost no audience awareness.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Public&lt;/strong&gt; is communication: turning what you built into a post, a screenshot, a short thread. It needs short, scheduled blocks and can happen after the building is done for the day.&lt;/p&gt;

&lt;p&gt;Mixing the two means you are context-switching between "solve this hard technical problem" and "how do I phrase this for maximum engagement" all day long. That is exhausting in a way that neither task alone is.&lt;/p&gt;

&lt;p&gt;Block time for each. A common split that works: build in the morning with notifications off, write and post in the afternoon for 20 to 30 minutes, then close the laptop on the public side entirely.&lt;/p&gt;

&lt;h2&gt;
  
  
  Post on your schedule, not the algorithm's schedule
&lt;/h2&gt;

&lt;p&gt;Platforms reward frequency. Founders who post daily often out-perform founders who post weekly, at least in short-term reach. That does not mean daily posting is required, or healthy, for you.&lt;/p&gt;

&lt;p&gt;A few ways to lower the pressure without disappearing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Batch content on a good day.&lt;/strong&gt; Write three or four posts when you are energized, queue them for the week.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Post progress, not performance.&lt;/strong&gt; A one-line update ("fixed the onboarding bug that was losing 20% of signups") is honest and low-effort. It does not need a hook, a thread, or a call to action every time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Skip days without announcing it.&lt;/strong&gt; You do not owe your audience an explanation for a quiet Tuesday. Silent gaps are normal. Apology posts about silent gaps train you to feel guilty about rest.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Consistency over months beats intensity over weeks. Aim for a pace you can hold in December, not just in launch week.&lt;/p&gt;

&lt;h2&gt;
  
  
  Detach your mood from engagement numbers
&lt;/h2&gt;

&lt;p&gt;This is the hardest habit to build and the one that determines whether building in public is sustainable for you.&lt;/p&gt;

&lt;p&gt;A post with 3 likes and a post with 300 likes can represent the same amount of work and the same amount of progress. The number reflects timing, platform mood, and luck as much as it reflects quality.&lt;/p&gt;

&lt;p&gt;Practical ways to reduce the emotional grip of metrics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Check analytics once a week, not per post.&lt;/strong&gt; Real signal shows up over weeks, not in the first hour.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Track leading indicators instead.&lt;/strong&gt; Signups, activation rate, and real conversations tell you more about the business than likes do. See the &lt;a href="https://makers.page/blog/first-100-users-without-marketing-budget" rel="noopener noreferrer"&gt;first 100 users playbook&lt;/a&gt; for the metrics that actually matter early on.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Write the post before you check the last one's numbers.&lt;/strong&gt; Starting your day by reviewing yesterday's engagement anchors your mood to something you do not control.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If a specific platform consistently makes you anxious to open, that is useful data. Post less there, not more.&lt;/p&gt;

&lt;h2&gt;
  
  
  Build a support system outside your audience
&lt;/h2&gt;

&lt;p&gt;Public followers are not the same as friends, co-founders, or peers. They see your highlight reel. They rarely see the 2am bug you cannot reproduce or the rejection email from a customer you were counting on.&lt;/p&gt;

&lt;p&gt;Founders who last longer in public building tend to have:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;One or two people who know the real numbers.&lt;/strong&gt; Not the audience-facing version. The actual MRR, churn, and stress level.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A community of peers building similar things.&lt;/strong&gt; Indie Hackers, niche Discords, or small group chats where the conversation is "here is what actually happened" rather than a highlight.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Something completely unrelated to the product.&lt;/strong&gt; A hobby, a sport, a person, anything that does not know or care what your signup count is this week.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If your only outlet for frustration is the same platform you post your wins to, you will either bottle it up or perform your struggles too, which just becomes another form of content labor.&lt;/p&gt;

&lt;h2&gt;
  
  
  Set a content floor, not a content ceiling
&lt;/h2&gt;

&lt;p&gt;Most advice about building in public is about how to post more. The advice that actually prevents burnout is about deciding the minimum you will do, then treating anything beyond that as a bonus rather than an obligation.&lt;/p&gt;

&lt;p&gt;A sustainable floor might look like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;One update post per week, minimum&lt;/li&gt;
&lt;li&gt;One longer reflection per month&lt;/li&gt;
&lt;li&gt;Replying to comments when you have the energy, not as a rule&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Anything you do above that floor is a good week, not a baseline you now have to defend every week going forward. Ratcheting your own expectations up after a single viral post is one of the fastest paths to burnout, because you are now competing with your own outlier.&lt;/p&gt;

&lt;h2&gt;
  
  
  Use "in public" for leverage, not obligation
&lt;/h2&gt;

&lt;p&gt;The actual value of building in public is compounding distribution: each post is a small, permanent asset that can bring people to your product months later through search, shares, or someone scrolling back through your history.&lt;/p&gt;

&lt;p&gt;That means low-effort, honest posts written over a year add up to more distribution than a burst of high-effort posts written over a burnout-inducing month and then abandoned.&lt;/p&gt;

&lt;p&gt;Ways to get leverage without grinding:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Turn build logs into evergreen content.&lt;/strong&gt; A post about a specific bug fix can become a &lt;a href="https://makers.page/blog" rel="noopener noreferrer"&gt;blog post&lt;/a&gt; that ranks in search long after the tweet is buried.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reuse the same update across formats.&lt;/strong&gt; One update becomes a tweet, a line in a changelog, and a sentence in your next newsletter. Write it once.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Let directories and listings work while you sleep.&lt;/strong&gt; A &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;makers.page profile&lt;/a&gt; with a dofollow link keeps working for discovery even on weeks you post nothing publicly.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Signs you need to step back
&lt;/h2&gt;

&lt;p&gt;Building in public should feel like sharing progress, not managing a second audience-facing business. Watch for these signs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You feel relief, not disappointment, when a post underperforms because it means less pressure to keep the streak going&lt;/li&gt;
&lt;li&gt;You are writing posts about problems before you have actually solved them, just to have something to say&lt;/li&gt;
&lt;li&gt;You dread opening the app you built because you associate it with the performance around it, not the product itself&lt;/li&gt;
&lt;li&gt;You have not shipped a real feature in weeks because content creation absorbed the time&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If any of those are true, cut posting frequency in half for a month. The audience that matters will still be there. The one that only cared about the streak was never going to convert anyway.&lt;/p&gt;

&lt;h2&gt;
  
  
  A realistic weekly rhythm
&lt;/h2&gt;

&lt;p&gt;Here is a rhythm that keeps the public side sustainable without disappearing entirely:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Day&lt;/th&gt;
&lt;th&gt;Building focus&lt;/th&gt;
&lt;th&gt;Public output&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Mon&lt;/td&gt;
&lt;td&gt;Deep work, no distractions&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tue&lt;/td&gt;
&lt;td&gt;Deep work&lt;/td&gt;
&lt;td&gt;One short update&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Wed&lt;/td&gt;
&lt;td&gt;User calls, feedback&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Thu&lt;/td&gt;
&lt;td&gt;Deep work&lt;/td&gt;
&lt;td&gt;One short update&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Fri&lt;/td&gt;
&lt;td&gt;Ship, review week&lt;/td&gt;
&lt;td&gt;One reflection post&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sat&lt;/td&gt;
&lt;td&gt;Off, or light bug fixes&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sun&lt;/td&gt;
&lt;td&gt;Off&lt;/td&gt;
&lt;td&gt;None, or queue next week&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Adjust to your own energy. The point is a rhythm you can repeat for a year, not a schedule copied from someone whose situation is different from yours.&lt;/p&gt;

&lt;h2&gt;
  
  
  Frequently asked questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Do I have to post every day to get traction?
&lt;/h3&gt;

&lt;p&gt;No. Consistency over months matters more than frequency in any single week. A steady weekly cadence beats a daily streak that collapses after six weeks.&lt;/p&gt;

&lt;h3&gt;
  
  
  What if nobody engages with my posts?
&lt;/h3&gt;

&lt;p&gt;Low engagement early on is normal and rarely means the product is bad. Keep the floor low, keep showing up, and focus on leading indicators like signups and user conversations instead of likes.&lt;/p&gt;

&lt;h3&gt;
  
  
  Is it okay to take a break from posting publicly?
&lt;/h3&gt;

&lt;p&gt;Yes. A quiet week does not undo months of consistent presence. Audiences that disappear over a short break were not going to be long-term customers anyway.&lt;/p&gt;

&lt;h3&gt;
  
  
  How do I stop caring about metrics?
&lt;/h3&gt;

&lt;p&gt;You will not stop caring entirely, but you can reduce the frequency you check them and separate your daily mood from any single post's performance. Weekly reviews instead of per-post checks help.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is a low-effort way to keep building in public without burning out?
&lt;/h3&gt;

&lt;p&gt;Batch a few short, honest updates when you have energy, queue them, and let evergreen assets like blog posts and directory listings do additional distribution work in the background.&lt;/p&gt;

&lt;h2&gt;
  
  
  The honest summary
&lt;/h2&gt;

&lt;p&gt;Building in public works as a distribution channel precisely because it is real: real progress, real setbacks, real numbers. The moment it becomes a performance you cannot sustain, it stops being honest and starts being a second job you did not sign up for.&lt;/p&gt;

&lt;p&gt;Protect the building. Schedule the public. Detach your mood from the metrics. Set a floor, not a ceiling. Do that, and building in public becomes something you can keep doing for years, not something you burn out on in six months.&lt;/p&gt;

&lt;p&gt;If you want one low-effort distribution asset that works while you focus on building, &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;submit your startup to makers.page&lt;/a&gt; for a free profile and a shot at &lt;a href="https://youtube.com/@alexcloudstar" rel="noopener noreferrer"&gt;an honest review&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Related reading:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/first-100-users-without-marketing-budget" rel="noopener noreferrer"&gt;How to get your first 100 users without a marketing budget&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://makers.page/blog/how-to-get-your-indie-startup-featured" rel="noopener noreferrer"&gt;How to get your indie startup featured&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Originally published on &lt;a href="https://makers.page/blog/building-in-public-without-burning-out" rel="noopener noreferrer"&gt;makers.page&lt;/a&gt;. Want a free indie listing with human review? &lt;a href="https://makers.page/submit" rel="noopener noreferrer"&gt;Submit your product&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>startup</category>
      <category>indiehackers</category>
      <category>productivity</category>
      <category>career</category>
    </item>
    <item>
      <title>I Just Shipped My First Chrome Extension (And It Was Harder Than the Code)</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Mon, 27 Jul 2026 10:29:13 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/i-just-shipped-my-first-chrome-extension-and-it-was-harder-than-the-code-118e</link>
      <guid>https://dev.to/alexcloudstar/i-just-shipped-my-first-chrome-extension-and-it-was-harder-than-the-code-118e</guid>
      <description>&lt;p&gt;I just shipped my first Chrome extension.&lt;/p&gt;

&lt;p&gt;Not a tutorial toy. Not a "hello world" that never left &lt;code&gt;chrome://extensions&lt;/code&gt;. A real Manifest V3 product with Sign in with X, local XP tracking, cloud sync, a privacy policy, and a listing live on the Chrome Web Store.&lt;/p&gt;

&lt;p&gt;The product is called &lt;strong&gt;XPilot&lt;/strong&gt;. It turns your activity on X into a game: XP for posts, replies, likes, and reposts. Levels. Streaks. A popup that shows your progress in one click.&lt;/p&gt;

&lt;p&gt;And yes: &lt;strong&gt;it is free.&lt;/strong&gt; Add it from the Chrome Web Store, sign in with X, and start earning XP on the stuff you already do. No waitlist. No credit card.&lt;/p&gt;

&lt;p&gt;This post is the story of what I expected, what actually broke, and what I would tell myself on day one.&lt;/p&gt;

&lt;p&gt;If you are about to build your first extension, steal the lessons. Skip the landmines. If you just want the product: &lt;a href="https://chromewebstore.google.com/detail/xpilot/jnnegeiinddcfcphdbndilbllhgjkamd" rel="noopener noreferrer"&gt;install XPilot free&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why an extension (and not another web app)
&lt;/h2&gt;

&lt;p&gt;I care about growth on X. Most tools in that space try to write for you. That was never the itch.&lt;/p&gt;

&lt;p&gt;The real problem, for me and for a lot of founders I talk to, is consistency. You know you should reply more. You know streaks matter. You still flake when the day gets loud.&lt;/p&gt;

&lt;p&gt;So the bet was simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Make X feel like a game people already understand: XP, levels, streaks.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And the distribution bet was equally simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Put the product where the habit already happens. Inside Chrome. On x.com.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A dashboard you have to remember to open loses to a popup that opens when you are already posting.&lt;/p&gt;

&lt;p&gt;That is why XPilot is an extension first, website second.&lt;/p&gt;

&lt;h2&gt;
  
  
  The stack (keep it boring)
&lt;/h2&gt;

&lt;p&gt;I did not invent a framework.&lt;/p&gt;

&lt;p&gt;Extension: &lt;a href="https://wxt.dev/" rel="noopener noreferrer"&gt;WXT&lt;/a&gt; + TypeScript, Manifest V3.&lt;/p&gt;

&lt;p&gt;UI: plain HTML, CSS, and JS in the popup. Fast, no React tax for v0.1.&lt;/p&gt;

&lt;p&gt;Content script: detect my own activity on x.com and twitter.com.&lt;/p&gt;

&lt;p&gt;Backend: Next.js on Vercel.&lt;/p&gt;

&lt;p&gt;Auth: X OAuth 2.0 with PKCE, then an app JWT.&lt;/p&gt;

&lt;p&gt;DB: Postgres on Neon, Drizzle ORM.&lt;/p&gt;

&lt;p&gt;Sync: local-first, with a backup about every 12 hours.&lt;/p&gt;

&lt;p&gt;WXT was the right call. It handles the annoying MV3 packaging, hot reload in development, and zip for the store. If you are starting today, do not hand-roll Webpack for an extension unless you enjoy pain.&lt;/p&gt;

&lt;h2&gt;
  
  
  What "done" meant for v0.1
&lt;/h2&gt;

&lt;p&gt;I forced a tiny definition of done:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sign in with X works&lt;/li&gt;
&lt;li&gt;Popup shows XP, level, streak&lt;/li&gt;
&lt;li&gt;Activity on X awards XP&lt;/li&gt;
&lt;li&gt;Progress survives a reload&lt;/li&gt;
&lt;li&gt;Privacy + Terms exist (store requirement)&lt;/li&gt;
&lt;li&gt;A ZIP builds without &lt;code&gt;localhost&lt;/code&gt; host permissions&lt;/li&gt;
&lt;li&gt;A stranger can install from the store and log in&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Everything else was a later problem. Opportunity radar, AI coach, seasons: later. Shipping was the boss fight.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hard part 1: Manifest V3 is not "Chrome apps 2.0"
&lt;/h2&gt;

&lt;p&gt;If your last mental model of extensions is Manifest V2, throw it away.&lt;/p&gt;

&lt;p&gt;MV3 service workers go idle. You cannot assume a long-lived background page. Alarms exist for a reason. Persistent connections are not free.&lt;/p&gt;

&lt;p&gt;Permissions matter more than you think. Every host permission is a trust tax on the listing review and on users. I kept production hosts to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;x.com&lt;/code&gt; / &lt;code&gt;twitter.com&lt;/code&gt; (where the game runs)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;xpilot.so&lt;/code&gt; / &lt;code&gt;www.xpilot.so&lt;/code&gt; (where the API lives)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dev-only: &lt;code&gt;localhost:3000&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;That last detail almost bit me in production. More on that below.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hard part 2: Sign in with X inside Chrome
&lt;/h2&gt;

&lt;p&gt;Browser OAuth is familiar. Extension OAuth is a different animal.&lt;/p&gt;

&lt;p&gt;XPilot uses &lt;code&gt;chrome.identity.launchWebAuthFlow&lt;/code&gt;. The flow looks clean on a whiteboard:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Extension opens your site's &lt;code&gt;/api/auth/x&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Site redirects to X&lt;/li&gt;
&lt;li&gt;X redirects back to your callback&lt;/li&gt;
&lt;li&gt;Callback redirects to &lt;code&gt;https://&amp;lt;extension-id&amp;gt;.chromiumapp.org/?code=...&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Extension exchanges the code for a JWT&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;In practice, three things tried to murder me.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Callback URL must match &lt;code&gt;APP_URL&lt;/code&gt; exactly
&lt;/h3&gt;

&lt;p&gt;Our production site redirects &lt;code&gt;xpilot.so&lt;/code&gt; → &lt;code&gt;www.xpilot.so&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;If your OAuth &lt;code&gt;redirect_uri&lt;/code&gt; is registered as one host and your app builds the other, X shows a vague "you weren't able to give access to the App" page. No stack trace. No mercy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fix:&lt;/strong&gt; pick one canonical origin. Put it in &lt;code&gt;APP_URL&lt;/code&gt;. Register that exact callback on developer.x.com. Stop arguing with DNS.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Do not put the exchange code in a URL hash
&lt;/h3&gt;

&lt;p&gt;I originally returned the short-lived exchange code as a hash fragment (&lt;code&gt;#code=...&lt;/code&gt;). Fragments are cute until redirects strip them and &lt;code&gt;chrome.identity&lt;/code&gt; hands you an empty URL.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fix:&lt;/strong&gt; put the code in the query string (&lt;code&gt;?code=...&lt;/code&gt;). Parse query first, hash as fallback.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Host permissions and CORS will gaslight you
&lt;/h3&gt;

&lt;p&gt;Vercel logs told the truth:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;OPTIONS /api/auth/exchange&lt;/code&gt; → 204&lt;/li&gt;
&lt;li&gt;No &lt;code&gt;POST&lt;/code&gt; after it&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The store build talked to &lt;code&gt;www&lt;/code&gt;, while the manifest only allowed the apex. Chrome fell back to CORS. Preflight "succeeded." The real POST never flew. The popup still showed &lt;strong&gt;Sign in with X&lt;/strong&gt; like nothing happened.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fix:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Default the production API base to &lt;code&gt;https://www.xpilot.so&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Allow both apex and www in host permissions&lt;/li&gt;
&lt;li&gt;Add CORS for your published extension ID on the exchange and sync routes as a belt-and-suspenders layer&lt;/li&gt;
&lt;li&gt;Pin &lt;code&gt;ALLOWED_EXTENSION_IDS&lt;/code&gt; in production so random extensions cannot finish OAuth&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Also: the popup often closes when the auth window opens. Your background script must finish login even if the UI is gone. When the user reopens the popup, auth should already be in &lt;code&gt;chrome.storage&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hard part 3: Detecting activity on a hostile DOM
&lt;/h2&gt;

&lt;p&gt;X's frontend is not an API contract. It is a living organism.&lt;/p&gt;

&lt;p&gt;Content scripts that award XP for replies have to survive:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Timeline composers&lt;/li&gt;
&lt;li&gt;Modal composers&lt;/li&gt;
&lt;li&gt;Cmd/Ctrl+Enter submits&lt;/li&gt;
&lt;li&gt;Buttons that unmount before your observer finishes&lt;/li&gt;
&lt;li&gt;False positives when someone cancels&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I shipped a fail-closed version that broke real replies. Then a looser version that missed intermittent posts. Then a multi-signal version: busy state, clear state, dialog stack, keyboard submit.&lt;/p&gt;

&lt;p&gt;If you are building anything on top of a third-party SPA, budget time for "the UI changed and nothing is wrong in your TypeScript."&lt;/p&gt;

&lt;h2&gt;
  
  
  Hard part 4: Local-first is why a free tier can stay free
&lt;/h2&gt;

&lt;p&gt;I did not want a backend call on every like. I also did not want "free" to mean "runs my GPU bill into the ground."&lt;/p&gt;

&lt;p&gt;So XP lives in the extension first. Sync is a backup, not the gameplay loop.&lt;/p&gt;

&lt;p&gt;Rules that kept costs and complexity down:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Score actions locally&lt;/li&gt;
&lt;li&gt;Sync when due (about every 12 hours), on startup, and after login&lt;/li&gt;
&lt;li&gt;Cap what a sync can inflate on the server&lt;/li&gt;
&lt;li&gt;Never make the free product depend on continuous API traffic&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That architecture is why I can ship v0.1 as a free Chrome extension without feeling like every install is a liability. The game still feels instant when the network is sad. The expensive ideas (AI opportunity radar, deep coaching) can wait until people are actually addicted to the loop.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hard part 5: The Chrome Web Store is a product surface
&lt;/h2&gt;

&lt;p&gt;Shipping code is half the job. The listing is the other half.&lt;/p&gt;

&lt;p&gt;Things that mattered more than I wanted them to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Privacy policy URL (live on the site, not a Google Doc)&lt;/li&gt;
&lt;li&gt;Terms of service&lt;/li&gt;
&lt;li&gt;Clear permission justifications&lt;/li&gt;
&lt;li&gt;Screenshots that show the actual popup&lt;/li&gt;
&lt;li&gt;Category that matches how people browse (we used Social Networking)&lt;/li&gt;
&lt;li&gt;A ZIP built for production (no localhost permission leftovers)&lt;/li&gt;
&lt;li&gt;Version bumps when you fix auth (&lt;code&gt;0.1.0&lt;/code&gt; → &lt;code&gt;0.1.1&lt;/code&gt; was not vanity)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Also: trader verification and regional phone issues can block you in weird ways. Budget calendar time for account admin, not just engineering.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I would do differently next time
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Canonical domain on day one.&lt;/strong&gt; Decide www vs apex before OAuth.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ship the store ZIP earlier to a private tester.&lt;/strong&gt; Unpacked success is not store success.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Log the OAuth exchange path.&lt;/strong&gt; "Still signed out" usually means the token never landed, not that the UI is haunted.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Write privacy/terms while the product is small.&lt;/strong&gt; It is easier when the data story is short.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Keep v0.1 brutally small.&lt;/strong&gt; Gamification of real actions beat five AI features I did not ship.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The emotional part (because shipping is emotional)
&lt;/h2&gt;

&lt;p&gt;There is a specific moment when the listing flips from draft to public and the install link works for someone who is not you.&lt;/p&gt;

&lt;p&gt;That moment hit harder than any green CI check.&lt;/p&gt;

&lt;p&gt;I have shipped websites before. An extension feels different. It lives in the browser chrome. It asks for trust. It sits next to passwords and ad blockers. When someone clicks &lt;strong&gt;Add to Chrome&lt;/strong&gt;, they are not bouncing through a landing page. They are installing you into their daily toolbelt.&lt;/p&gt;

&lt;p&gt;That is terrifying. It is also the point.&lt;/p&gt;

&lt;h2&gt;
  
  
  If you want to try XPilot (it is free)
&lt;/h2&gt;

&lt;p&gt;XPilot is live on the Chrome Web Store. Free to install. Free to use for XP, levels, and streaks.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Add to Chrome (free):&lt;/strong&gt; &lt;a href="https://chromewebstore.google.com/detail/xpilot/jnnegeiinddcfcphdbndilbllhgjkamd" rel="noopener noreferrer"&gt;chromewebstore.google.com/detail/xpilot/jnnegeiinddcfcphdbndilbllhgjkamd&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Site: &lt;a href="https://xpilot.so" rel="noopener noreferrer"&gt;xpilot.so&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One minute setup:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;Add to Chrome&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Sign in with X&lt;/li&gt;
&lt;li&gt;Use X like you already do&lt;/li&gt;
&lt;li&gt;Open the popup when you want to see XP, level, and streak&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;No waitlist. No "book a demo." No paid wall in front of the core loop.&lt;/p&gt;

&lt;p&gt;I am building the game layer for people who are done growing on guilt. v0.1 is the foundation and it is free on purpose: if the habit is not sticky when it costs nothing, it will not be sticky when it costs €29.&lt;/p&gt;

&lt;h2&gt;
  
  
  Quick FAQ for builders
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Do I need React for a Chrome extension?
&lt;/h3&gt;

&lt;p&gt;No. For a small popup, plain HTML is fine. Use React when the UI complexity earns it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Should I use the official browser APIs or a framework?
&lt;/h3&gt;

&lt;p&gt;Use a framework like WXT unless you have a reason not to. Packaging and MV3 details are not where your product moat lives.&lt;/p&gt;

&lt;h3&gt;
  
  
  Is scraping a social network's DOM a good idea?
&lt;/h3&gt;

&lt;p&gt;It is fragile and you must stay on the right side of ToS and user expectations. Track the user's own actions in their session. Do not build a stealth scraper and call it a growth tool.&lt;/p&gt;

&lt;h3&gt;
  
  
  What blocks store approval most often?
&lt;/h3&gt;

&lt;p&gt;Missing privacy policy, unclear permissions, remote code, broken auth, and listings that do not match the binary.&lt;/p&gt;

&lt;h3&gt;
  
  
  How long did this take?
&lt;/h3&gt;

&lt;p&gt;Longer than the happy-path tutorial. Shorter than "rewrite everything because MV3." Most of the calendar time was OAuth, store packaging, and edge cases on X's UI, not the XP math.&lt;/p&gt;

&lt;h2&gt;
  
  
  Closing
&lt;/h2&gt;

&lt;p&gt;If you have been waiting to build your first Chrome extension, start.&lt;/p&gt;

&lt;p&gt;Pick a problem that only makes sense inside the browser. Keep the first version insultingly small. Assume OAuth and packaging will take longer than your ego wants. Ship anyway.&lt;/p&gt;

&lt;p&gt;I just did. The extension is free. The lessons above are free too.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://chromewebstore.google.com/detail/xpilot/jnnegeiinddcfcphdbndilbllhgjkamd" rel="noopener noreferrer"&gt;Add XPilot to Chrome&lt;/a&gt; and let the game begin.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Alex Cloudstar (&lt;a href="https://x.com/alexcloudstar" rel="noopener noreferrer"&gt;@alexcloudstar&lt;/a&gt;). Building &lt;a href="https://xpilot.so" rel="noopener noreferrer"&gt;XPilot&lt;/a&gt; — free on Chrome.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>typescript</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>I'm Starting a YouTube Series Where I Code With Zero AI. Here's Why That Feels Radical in 2026.</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Wed, 22 Jul 2026 15:21:36 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/im-starting-a-youtube-series-where-i-code-with-zero-ai-heres-why-that-feels-radical-in-2026-2c8f</link>
      <guid>https://dev.to/alexcloudstar/im-starting-a-youtube-series-where-i-code-with-zero-ai-heres-why-that-feels-radical-in-2026-2c8f</guid>
      <description>&lt;p&gt;A few months ago I caught myself staring at a merge conflict for a solid two minutes, completely stuck, before I remembered that resolving merge conflicts is not actually hard. I had just forgotten how to do it without a suggestion popping up first.&lt;/p&gt;

&lt;p&gt;That moment stuck with me. I've been a full-stack developer for years, running my own company, shipping products, writing code every single day. And somewhere in the last couple of years, a huge chunk of the actual thinking got outsourced without me really noticing. Autocomplete finishes the sentence. Autocomplete finishes the function. Autocomplete finishes the architecture decision. At some point you're not writing code anymore, you're proofreading someone else's.&lt;/p&gt;

&lt;p&gt;I'm not writing this to dunk on AI tools. I use them, I ship faster because of them, and I'm not going back to typing every line by hand as some kind of purity test. But I noticed a real erosion happening, and I don't think I'm the only one. Ask a developer under 30 to explain what's actually happening in a piece of generated code and you'll get a shrug more often than you'd expect. Not because they're not smart. Because the muscle never got built in the first place.&lt;/p&gt;

&lt;p&gt;The Bet&lt;/p&gt;

&lt;p&gt;So I'm running an experiment on my channel. The premise is simple: build real software, start to finish, with no AI involved anywhere in the process. Not for the writing, not for the planning, not even for a quick "what's this error mean" lookup. Just me, a text editor, and whatever documentation existed before 2022.&lt;/p&gt;

&lt;p&gt;A few ground rules I'm holding myself to:&lt;/p&gt;

&lt;p&gt;No AI, full stop. Planning, design, and code all come from scratch.&lt;br&gt;
No tooling lock-in. One day it might be Neovim, the next it might be Zed. The point isn't the editor, it's the thinking.&lt;br&gt;
Daily-ish uploads, but I'm treating this as a long run, not a sprint. Burnout kills more content series than bad ideas ever do.&lt;/p&gt;

&lt;p&gt;I'll be posting behind-the-scenes bits of each episode on X, and the full builds will go up on YouTube under the channel &lt;a href="https://www.youtube.com/@alexcloudstar" rel="noopener noreferrer"&gt;alexcloudstar&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Why This Matters Beyond Content&lt;/p&gt;

&lt;p&gt;Here's the thing I actually want to find out, and it's bigger than "can I still code." Programming skill has always been about holding a problem in your head long enough to see its shape. AI tools are incredible at generating solutions, but they're just as good at letting you skip the part where you actually understand the problem. That gap doesn't show up on a good day. It shows up when the tool is wrong, or down, or when you're debugging something novel at 2am with no clean pattern to match against.&lt;/p&gt;

&lt;p&gt;I don't have a tidy conclusion for this yet. That's kind of the point of running it as a series instead of writing a hot take. I want to see, honestly, whether a few months of deliberate no-AI building sharpens things back up, or whether it turns out the muscle is gone for good and has to be rebuilt from zero.&lt;/p&gt;

&lt;p&gt;If you're a developer who's felt that same low hum of "wait, could I actually still do this without the assist," I think you'll get something out of watching along. And if you've got a language or a project idea you want to see tackled the hard way, I'm taking requests in the comments.&lt;/p&gt;

&lt;p&gt;The trailer drops today, with the full series coming soon after. To catch it:&lt;/p&gt;

&lt;p&gt;Subscribe on YouTube: &lt;a href="https://www.youtube.com/@alexcloudstar" rel="noopener noreferrer"&gt;alexcloudstar&lt;/a&gt;&lt;br&gt;
&lt;a href="https://x.com/alexcloudstar" rel="noopener noreferrer"&gt;Follow me on X&lt;/a&gt; for behind-the-scenes of every episode&lt;/p&gt;

&lt;p&gt;Let's see how rusty I really am.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>webdev</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Claude Fable 5 Is Here: Mythos-Class Power for Everyone, and Whether It's Worth 2x the Price</title>
      <dc:creator>Alex Cloudstar</dc:creator>
      <pubDate>Wed, 10 Jun 2026 07:49:36 +0000</pubDate>
      <link>https://dev.to/alexcloudstar/claude-fable-5-is-here-mythos-class-power-for-everyone-and-whether-its-worth-2x-the-price-5498</link>
      <guid>https://dev.to/alexcloudstar/claude-fable-5-is-here-mythos-class-power-for-everyone-and-whether-its-worth-2x-the-price-5498</guid>
      <description>&lt;p&gt;When I reviewed &lt;a href="https://dev.to/blog/claude-opus-4-8-review-benchmarks-developer-guide-2026"&gt;Claude Opus 4.8&lt;/a&gt; two weeks ago, I flagged one sentence in the announcement as the most interesting thing in it. Anthropic said Mythos-class models were coming to all customers in the coming weeks, gated on safety work rather than capability. That was the tell. The gap between what these labs can build and what they choose to ship was loosening.&lt;/p&gt;

&lt;p&gt;Yesterday, June 9, the other shoe dropped. Claude Fable 5 shipped, and it is a Mythos-class model. Same release playbook as always. No waitlist, no staged rollout. It landed in the Claude API, on Bedrock, in GitHub Copilot, and on the consumer plans on the same day, with the model ID &lt;code&gt;claude-fable-5&lt;/code&gt; ready to drop into config.&lt;/p&gt;

&lt;p&gt;So I spent the day doing what I do with every release. I threw my hardest real tasks at it, dug through the announcement and the third-party benchmarks, and tried to separate what genuinely changed from the launch-day shine. This one is different from the last few. Not because the benchmarks moved a few points, but because Claude Fable 5 is the first time Anthropic has handed the public a model from the tier they previously decided was too capable to release.&lt;/p&gt;

&lt;p&gt;Here is what I found.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Fable 5 and Mythos 5 Actually Are
&lt;/h2&gt;

&lt;p&gt;The naming is doing a lot of work here, so it is worth slowing down. There are two models in this release, and they are the same model.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Claude Fable 5&lt;/strong&gt; is the Mythos-class model with safety classifiers turned on. This is the one you and I get. It is available right now through the API, the cloud providers, and the subscription plans.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Claude Mythos 5&lt;/strong&gt; is the identical underlying model with certain safeguards removed. It is not generally available. Right now it is restricted to cybersecurity professionals and infrastructure providers through something Anthropic is calling Project Glasswing, with a trusted-access program for biology researchers planned next.&lt;/p&gt;

&lt;p&gt;I wrote about &lt;a href="https://dev.to/blog/claude-mythos-anthropic-developer-analysis-2026"&gt;Claude Mythos&lt;/a&gt; back when it was a locked research preview, the model that scored absurdly high on coding and cyber benchmarks and that Anthropic explicitly chose not to ship. Fable 5 is the answer to the obvious question that post raised: what happens when they finally decide it is safe enough to release? The answer is that they release it with a set of classifiers bolted on, keep the unfiltered version behind a vetting process, and call the two halves by different names.&lt;/p&gt;

&lt;p&gt;That split matters more than it looks, and I will come back to it. But first, the part everyone actually wants to know.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Benchmarks That Matter
&lt;/h2&gt;

&lt;p&gt;Anthropic claims Fable 5 is state-of-the-art on nearly every capability benchmark they tested, and for once the third-party numbers back the marketing instead of softening it. The pattern from the &lt;a href="https://dev.to/blog/claude-opus-4-8-review-benchmarks-developer-guide-2026"&gt;Opus 4.8 release&lt;/a&gt;, where the gains were real but incremental, does not hold here. These are step changes.&lt;/p&gt;

&lt;p&gt;Here are the numbers worth knowing.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Benchmark&lt;/th&gt;
&lt;th&gt;What it measures&lt;/th&gt;
&lt;th&gt;Fable 5&lt;/th&gt;
&lt;th&gt;For comparison&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;SWE-Bench Pro&lt;/td&gt;
&lt;td&gt;Real-world software engineering&lt;/td&gt;
&lt;td&gt;80.3%&lt;/td&gt;
&lt;td&gt;Opus 4.8: 69.2%, GPT-5.5: 58.6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;FrontierCode&lt;/td&gt;
&lt;td&gt;Production-grade code quality&lt;/td&gt;
&lt;td&gt;29.3%&lt;/td&gt;
&lt;td&gt;Opus 4.8: 13.4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GDP.pdf&lt;/td&gt;
&lt;td&gt;Vision reasoning over documents, no tools&lt;/td&gt;
&lt;td&gt;29.8%&lt;/td&gt;
&lt;td&gt;GPT-5.5: 24.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ExploitBench (Mythos 5)&lt;/td&gt;
&lt;td&gt;Cybersecurity, guardrails off&lt;/td&gt;
&lt;td&gt;78.0%&lt;/td&gt;
&lt;td&gt;Opus 4.8: 40.0%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Core analytics&lt;/td&gt;
&lt;td&gt;Complex analytical tasks&lt;/td&gt;
&lt;td&gt;First model over 90%&lt;/td&gt;
&lt;td&gt;Previous frontier under the line&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The SWE-Bench Pro jump is the one that stopped me. Going from 69% to 80% does not sound like much until you remember what that benchmark is. It is not toy problems. It is real engineering tasks pulled from real repositories, the kind where the model has to understand a codebase, make a change that spans multiple files, and not break anything else. An eleven-point gain at that altitude is the difference between a model that gets most things right and one that gets the hard things right too.&lt;/p&gt;

&lt;p&gt;FrontierCode is the other eye-opener. More than doubling Opus 4.8's score on a benchmark designed to test whether code meets production standards, not just whether it runs, lines up with what I felt in actual use. The output reads less like generated code and more like code a careful engineer wrote.&lt;/p&gt;

&lt;p&gt;The ExploitBench number belongs to Mythos 5, the unfiltered sibling, which is why it nearly doubles Opus 4.8. That gap is the entire reason the unfiltered version is locked behind Project Glasswing. A model that scores 78% on offensive security tasks is exactly the dual-use capability that makes a lab nervous, and it is worth holding that number in your head when we get to the safety section.&lt;/p&gt;




&lt;h2&gt;
  
  
  What 80% on SWE-Bench Pro Feels Like in Practice
&lt;/h2&gt;

&lt;p&gt;Benchmarks tell you the model is capable. They do not tell you what the capability feels like when you are the one driving. So I gave it the work I actually do.&lt;/p&gt;

&lt;p&gt;The first test was a refactor I had been avoiding. A tangled service layer in one of my projects, about a dozen files, with state management that had grown organically and badly over a year. The kind of thing where the &lt;a href="https://dev.to/blog/agentic-coding-2026"&gt;agentic coding&lt;/a&gt; loop usually drifts. One agent, one file at a time, me re-explaining the convention every few files as context slips.&lt;/p&gt;

&lt;p&gt;Fable 5 handled it in a way that felt qualitatively different. It read the whole service layer, identified the actual structural problem rather than just the surface symptoms, and proposed a refactor that I would have been happy to write myself. Not every choice was mine. But the reasoning was sound enough that the disagreements were about taste, not correctness.&lt;/p&gt;

&lt;p&gt;The claim Anthropic leans on hardest is sustained reasoning. The line in the announcement is that the longer and more complex the task, the larger Fable 5's lead. Early testers reported that apps which needed a hundred prompts a year ago now one-shot. I cannot fully verify the hundred-prompt claim, but the direction is right. The model holds focus across a long task better than anything I have used. It does not lose the thread halfway through a migration the way every previous model eventually does.&lt;/p&gt;

&lt;p&gt;The headline customer story is Stripe, who said Fable 5 compressed months of engineering into days, completing a 50-million-line Ruby codebase migration in a single day that would normally take a team two months. I cannot test a 50-million-line migration. But having watched it chew through my own multi-file refactor without me babysitting context, I find the shape of that claim plausible in a way I would have rolled my eyes at six months ago.&lt;/p&gt;

&lt;p&gt;This is where the &lt;a href="https://dev.to/blog/ai-code-review-bottleneck-2026"&gt;self-correction work from Opus 4.8&lt;/a&gt; compounds. Fable 5 inherits the honesty improvements and pairs them with raw capability. It catches its own mistakes more reliably and the mistakes it makes are rarer to begin with.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Price Doubled, and That Changes the Math
&lt;/h2&gt;

&lt;p&gt;Here is the part that is going to reshape how you use it. Claude Fable 5 costs $10 per million input tokens and $50 per million output tokens. That is double Opus 4.8, which sits at $5 and $25.&lt;/p&gt;

&lt;p&gt;For the last several releases, the story was capability going up while price held flat. I made a whole point of it in the Opus 4.8 review, because flat pricing is the quiet engine behind the improving economics of &lt;a href="https://dev.to/blog/pricing-ai-features-2026"&gt;building AI features&lt;/a&gt;. Fable 5 breaks that pattern. The price went up because the model is genuinely more expensive to run, and Anthropic is not hiding it.&lt;/p&gt;

&lt;p&gt;To be fair, they frame it as a discount. Fable 5 is less than half the price of the old Mythos Preview, so relative to the Mythos tier this is a price cut. But relative to your actual bill, the one you pay today on Opus 4.8, it is a doubling.&lt;/p&gt;

&lt;p&gt;So the calculus is no longer "use the best model for everything." It is back to routing.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Input (per 1M)&lt;/th&gt;
&lt;th&gt;Output (per 1M)&lt;/th&gt;
&lt;th&gt;Use it for&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Opus 4.8&lt;/td&gt;
&lt;td&gt;$5&lt;/td&gt;
&lt;td&gt;$25&lt;/td&gt;
&lt;td&gt;Daily coding, most agent work, anything high-volume&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Fable 5&lt;/td&gt;
&lt;td&gt;$10&lt;/td&gt;
&lt;td&gt;$50&lt;/td&gt;
&lt;td&gt;The hard tasks where the extra capability pays for itself&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The honest framing is that Fable 5 is not a replacement for your default model. It is a tool for the top of the difficulty curve. The gnarly migration, the architecture decision with real tradeoffs, the debugging session that spans three systems and has resisted every cheaper attempt. For those, paying double is trivial against the time saved. For your everyday loop of small edits and lookups, you are lighting money on fire if you route all of it through Fable 5.&lt;/p&gt;

&lt;p&gt;If you are mapping out spend across plans and API usage, my &lt;a href="https://dev.to/blog/claude-june-2026-pricing-survival-guide"&gt;Claude pricing survival guide&lt;/a&gt; walks through how to think about the tradeoffs, and this release adds a new top tier to that decision. It also makes a strong case for getting serious about &lt;a href="https://dev.to/blog/ai-agent-token-costs-developer-guide-2026"&gt;token cost management&lt;/a&gt; if you have not already, because the cost of being lazy about model selection just doubled.&lt;/p&gt;

&lt;p&gt;On the plans side, Anthropic is doing the usual launch promotion. Fable 5 is included at no extra cost on Pro, Max, Team, and Enterprise through June 22, after which usage credits kick in pending capacity. So you have about two weeks to hammer on it for free before the meter starts.&lt;/p&gt;




&lt;h2&gt;
  
  
  Mythos 5: The Same Brain With the Guardrails Off
&lt;/h2&gt;

&lt;p&gt;The most genuinely novel thing in this release is not Fable 5. It is the decision to ship its unfiltered twin at all, even to a restricted group.&lt;/p&gt;

&lt;p&gt;Mythos 5 is Fable 5 with the safety classifiers removed. Same weights, same intelligence, none of the blocking. Anthropic is only giving it to cybersecurity professionals and infrastructure providers through Project Glasswing right now, with a biology-researcher program coming that will lift the bio safeguards while keeping the cyber ones in place.&lt;/p&gt;

&lt;p&gt;The reasoning is straightforward once you look at the ExploitBench number. The unfiltered model scores 78% on offensive security work, nearly double Opus 4.8. That is a capability you want defenders to have and attackers not to. Gating it behind a vetted program is Anthropic trying to thread that needle, putting the sharp version in the hands of people who use it to harden systems while keeping it away from everyone else.&lt;/p&gt;

&lt;p&gt;For the security testing I am authorized to do, the existence of a model this capable on the defensive side is a real shift. The flip side is the one I keep thinking about. If the only thing standing between the public model and the offensive model is a set of classifiers, then the safety of the whole arrangement rests entirely on how good those classifiers are. Which brings us to the part of this release that should bother you a little.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Safeguards, and the Part That Should Bother You
&lt;/h2&gt;

&lt;p&gt;Fable 5 ships with three classifier systems. One blocks offensive cybersecurity and exploitation tasks. One blocks dual-use biology and chemistry research. One prevents distillation, the extraction of the model's capabilities into a smaller model.&lt;/p&gt;

&lt;p&gt;The implementation is interesting. When a safeguard triggers, Fable 5 does not refuse. It silently falls back to Opus 4.8 and answers from there. Anthropic says this happens in less than 5% of sessions on average, and that the system is tuned conservatively, so it sometimes blocks benign requests. External red-teaming reportedly found zero successful harmful single-turn requests against 30 public jailbreak techniques, which is a strong result if it holds up.&lt;/p&gt;

&lt;p&gt;So far, so reasonable. A model that downgrades instead of refusing is a better user experience than a hard wall, and a transparent classifier that tells you when it fired is fine.&lt;/p&gt;

&lt;p&gt;The problem, and Nathan Lambert at Interconnects laid this out sharply, is that not all of the downgrading is transparent. He distinguishes between the disclosed safeguards, cyber and bio and distillation, which notify you when they kick in, and undisclosed modifications around frontier AI research that change the model's behavior without telling you. His line is worth quoting directly: "An AI model that gets less intelligent automatically without notifying me is categorically misaligned AI."&lt;/p&gt;

&lt;p&gt;I think he is right to be annoyed, and the reason cuts straight to how I work. If I am using a model for serious engineering and it can quietly become a different, dumber model mid-session without telling me, my &lt;a href="https://dev.to/blog/ai-evals-solo-developers-2026"&gt;eval suite&lt;/a&gt; cannot account for it. The model I tested is not reliably the model I am running. Lambert goes further and says he cannot trust Fable 5 for frontier ML development work for exactly this reason, and reads the opacity as more about protecting Anthropic's competitive position than about safety.&lt;/p&gt;

&lt;p&gt;Whether or not you buy the competitive-entrenchment read, the practical takeaway for developers is concrete. If you are building on Fable 5, assume a small fraction of your requests may be answered by Opus 4.8 instead, and assume you may not always be told. Build your &lt;a href="https://dev.to/blog/ai-evals-solo-developers-2026"&gt;evals&lt;/a&gt; and your &lt;a href="https://dev.to/blog/ai-generated-code-security-risks-2026"&gt;output validation&lt;/a&gt; to be robust to that, because the model behind the API is not a fixed quantity. This is the first frontier release where I would call non-determinism in which model answers a first-class concern rather than a footnote.&lt;/p&gt;

&lt;p&gt;One more operational detail: Mythos-class traffic now carries a mandatory 30-day data retention policy. Anthropic says the data is not used for training or non-safety purposes and is deleted after 30 days in most cases, with human access logged. If you work under strict data-handling requirements, read that policy before you route production traffic through Fable 5.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Science Results Are the Real Story
&lt;/h2&gt;

&lt;p&gt;The coding numbers will get the headlines because that is what most of us buy these models for. But the results that actually made me sit up are in science, and they came from Mythos 5.&lt;/p&gt;

&lt;p&gt;On molecular biology, the model generated novel hypotheses that scientists preferred about 80% of the time over Opus-class models. In genomics, it ran a research task largely on its own for over a week, analyzing millions of cells across 138 animal species, and reportedly outperformed a recent Science journal publication despite being a fraction of the size. In drug design, internal protein experts said it accelerated their work by roughly ten times, with nine of fourteen protein targets yielding strong candidates.&lt;/p&gt;

&lt;p&gt;I am not a biologist and I cannot evaluate those claims on the merits. But the pattern is the one worth noticing. The thing that separates Fable 5 from the models before it is not that it writes slightly better code. It is that it can sustain genuinely autonomous work over long horizons. A week of unsupervised genomics research is a different category of capability than a clever answer to a single prompt.&lt;/p&gt;

&lt;p&gt;That same capability is what powers the coding story. The reason the migrations work is the same reason the genomics works. The model holds the thread. If you have wrestled with &lt;a href="https://dev.to/blog/durable-ai-workflows-orchestration-2026"&gt;agent reliability over long-running tasks&lt;/a&gt;, this is the first model where the long-horizon part feels solved enough to lean on rather than babysit.&lt;/p&gt;




&lt;h2&gt;
  
  
  Should You Switch From Opus 4.8?
&lt;/h2&gt;

&lt;p&gt;Here is how I would think about it depending on where you sit.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you do daily coding on a Pro or Max plan:&lt;/strong&gt; Try Fable 5 on your hardest current task in the next two weeks while it is free on the plans. The capability jump is real and you should feel it on genuinely difficult work. But do not make it your default. When the credits kick in after June 22, the doubled price means Opus 4.8 should stay your workhorse and Fable 5 should be the tool you reach for when the cheaper model is struggling.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you run Opus 4.8 in production via the API:&lt;/strong&gt; Do not flip the model ID blindly. The price doubling alone means you need to be deliberate about which paths justify it, and the silent-fallback behavior means your outputs are now non-deterministic in a new way. Run your eval suite, then route only the high-value, hard tasks to &lt;code&gt;claude-fable-5&lt;/code&gt; while keeping volume traffic on Opus 4.8. This is a routing decision, not a swap.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you are on GPT-5.5 or Gemini for primary work:&lt;/strong&gt; The gaps in coding, vision, and agentic work just widened in Claude's favor, and by more than the Opus 4.8 release did. When I last did a full &lt;a href="https://dev.to/blog/claude-opus-vs-gpt5-vs-gemini-2026"&gt;Claude vs GPT vs Gemini breakdown&lt;/a&gt;, the models converged on baseline and diverged on strengths. Fable 5 stretches Claude's lead in its strong areas rather than reshuffling the board. If you have been on the fence about Claude for serious engineering, this is the strongest case yet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you do authorized security or scientific research:&lt;/strong&gt; Look into whether you qualify for Project Glasswing or the upcoming trusted-access programs. The unfiltered Mythos 5 is a meaningfully different tool than the public Fable 5, and for defensive security and research work that is exactly the point.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Bigger Picture
&lt;/h2&gt;

&lt;p&gt;What strikes me about Claude Fable 5 is not the SWE-Bench number, impressive as it is. It is what the release tells you about where the constraint now sits.&lt;/p&gt;

&lt;p&gt;For the last year, the story was capability rising while price held flat, and the binding question was how much smarter the next model would be. Fable 5 flips both halves of that. The price went up, and the binding question is no longer capability. It is safety and trust. Anthropic built a model good enough that they split it in two, shipped the filtered half to everyone, locked the unfiltered half behind a vetting program, and bolted on classifiers that can quietly swap in a weaker model behind your back.&lt;/p&gt;

&lt;p&gt;That is a different kind of release. The capability is so far ahead that the interesting decisions are now about governance, access, and disclosure rather than raw benchmarks. The most important sentence in the Opus 4.8 announcement was the one teasing Mythos-class availability. The most important fact about Fable 5 is not how smart it is. It is that "how smart is it" stopped being the hard question.&lt;/p&gt;

&lt;p&gt;For the work I do every day, Fable 5 is the most capable tool I have ever pointed at a hard problem, and I will be reaching for it exactly when a problem is hard enough to earn the price. For everything else, Opus 4.8 is still my default. And the part I will be watching most carefully is not the next benchmark. It is whether the model answering my request is actually the model I think it is.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>devtools</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
