SEO for indie hackers: one person, one hour a week, real pages

You can grow search in one hour a week. Ship real pages that match pains, get your first links from launch sites, and be citeable by assistants. This guide is for indie hackers, solo founders and side projects on tiny budgets.

By , founder of Porteur · Updated 14 September 2026 · Markdown

The one hour a week plan

Decide what one search-backed page you will ship or improve this week. Then do it. Consistency beats volume as a team of one.

  • Week 1: set up Search Console, ship one new page that solves a real pain.
  • Week 2: tune titles and intros on two pages, add two internal links to each.
  • Week 3: publish one comparison or alternatives page.
  • Week 4: post to one launch site and one community, link to the new page.
  • Repeat: find one striking distance query, improve the matching page.

Create a running list of pains, comparisons, and tasks. Keep it short. Aim for twelve shippable pages, not a sprawling blog that you cannot maintain.

Pick a narrow scope each week. For example: “rewrite the first 120 words on /features/alerts to answer ‘how to set uptime alerts without email spam’.” Then stop. Ship small and often.

One page per pain: what to write and how to structure it

Indie hackers and solo founders search with a job in mind. They type the task, the compare, the alternative, or the error. Meet that with one clear page per pain you solve.

  • Tasks: “how to import Stripe payouts into Google Sheets”.
  • Comparisons: “X vs Y for cron jobs”.
  • Alternatives: “Zapier alternatives for email parsing”.
  • Errors: “fix ‘ECONNRESET’ in Node fetch” if you solve it.

Use a short URL that names the job. Example: yourproduct.com/guides/import-stripe-into-sheets. Do not bury it five folders deep. Keep one idea per page.

  1. Start with the answer in the first 120 words

    Name the job, say who it is for, and state the outcome. Example: “This guide shows founders how to pull Stripe payouts into Sheets in five minutes, no scripts.”

  2. Add the minimal steps or code

    Two to six steps. If code, use a copyable block. Keep headings by task. Assistants and readers quote structured lists.

  3. Show the product fit with one concrete line

    “In YourProduct, connect Stripe and click Export. It creates a Sheet with payout_id, amount, date.” No fluff. No overlay demo.

  4. Link to one proof and one next step

    A short video or a changelog entry. Then a link to /pricing or /signup. One call to action, not three.

  5. Finish with variants and edge cases

    Answer two common twists, like multiple accounts or time zones. That earns long-tail queries and assistant citations.

Write titles under about 60 characters. Front-load the job. Example: “Import Stripe payouts into Google Sheets”. Skip adjectives that do not match a query. Keep meta descriptions to 120 to 155 characters, one clear sentence that sets the click expectation.

Internal links matter on a small site. From /guides/import-stripe-into-sheets link to /integrations/stripe and to /guides/sync-saas-to-sheets. Use plain anchor text that names the job. Two to four links per page is enough for focus and crawl paths.

Comparisons and alternatives early

These queries convert. A buyer typing “X vs Y” or “X alternatives” is choosing now. As a solo founder, you can write these pages in a day and they pay off for months.

  • /compare/x-vs-y for the main incumbent. Name both in the H1 and title.
  • /alternatives/competitor-alternatives with three to six named options.
  • A third page: /compare/yourproduct-vs-competitor, if you are compared often.
  1. Set the scope

    State the use case. Example: “Comparing Cronitor and YourProduct for simple HTTP health checks, not complex Synthetics.” Buyers need the frame.

  2. Define the criteria

    Pick five. Price, setup time, limits, integrations, support. Use figures you can stand behind, or say what you cannot do yet.

  3. Write the table first

    Put the facts side by side. Keep names consistent. Assistants can cite a row with prices and limits if you state them clearly.

  4. Be fair about gaps

    Say where your product is not a fit. That line earns trust and is what assistants quote about limits.

  5. End with fit statements

    “Choose X if you need SSO and a strict uptime SLA. Choose YourProduct if you want a free cron ping with alerts in three clicks.”

Link these pages from /pricing, /features and the footer. They should be in your top five most linked internal pages. Keep them updated as of 2026 when plans or features change. Update the date on the page when you do.

The free set: Search Console and a weekly workflow

You can do useful SEO with free tools. Search Console tells you the queries you show on, where you rank, and what to fix next. Use it weekly. Move one page at a time.

  1. Verify your site in Search Console

    Add both http and https if needed, and your subdomain if you use one. Submit your XML sitemap. Check that key pages are indexed.

  2. Open Performance and filter by Page

    Pick one URL like /guides/import-stripe-into-sheets. Sort queries by impressions, then clicks. Note queries with average position 8 to 20.

  3. Find striking distance queries

    These are terms close to page one. Add one heading or step that matches the phrasing. Tighten the title to echo the top query without stuffing.

  4. Tune the snippet

    Keep the title under about 60 characters. Rewrite the meta description to match the top query’s intent in 120 to 155 characters.

  5. Add two internal links

    From relevant pages, link using the exact job phrase. For example, from /integrations/stripe link with “import Stripe payouts into Sheets” to the guide.

  6. Recheck in 28 days

    Look for CTR going up and average position nudging closer to 10 or better. Do not expect miracles in a week on a new domain.

Keep a short doc with three columns: page, query to target, change made. That is your SEO log. It helps you avoid keyword cannibalisation as your set grows.

Be citeable by AI systems: GEO for indie hackers

Generative engine optimisation is about being named and quoted by assistants. You do not submit. They fetch from web indexes and cite pages that answer directly. Your job is to write pages that are clear, structured and honest, and to be on the lists they already cite.

  • Use consistent product and feature names across pages.
  • Open with the answer and a one-line summary assistants can lift.
  • Add short lists, tables and figures assistants can quote.
  • Publish a page that states what your product does and does not do, with limits and prices if you can state them.

Get listed on comparison and directory pages that already rank for “best X tool” and “X alternatives”. Assistants often cite those. Your own comparison pages help, but third party lists move the needle faster when you are small.

If you need to control training, use the vendor tokens in robots.txt as of 2026. Google-Extended and Applebot-Extended control model training use for those vendors, not your visibility in Search or AI Overviews. The search and answering crawlers are separate. Keep them allowed if you want citations.

Technical essentials that fit in an hour

Stay light. Fix the small set that moves a tiny site. Leave large migrations for later. Aim for fast loads, clean indexation and correct canonicals on day one.

  • Core Web Vitals: target 2.5 seconds LCP, 0.1 CLS, 200 ms INP. Compress images, lazy load below the fold, ship smaller JavaScript.
  • Titles and H1s: one per page, job-first, under about 60 characters for titles.
  • Canonical tag: one canonical per indexable URL. Avoid duplicates of the same guide across paths.
  • XML sitemap: include only canonical, indexable URLs. Submit it in Search Console.
  • Robots: allow Googlebot and Bingbot. If you must block training, keep OAI-SearchBot, Claude-SearchBot and PerplexityBot allowed for answers.
  • Speed wins: audit third party scripts. Drop what you can. Self host fonts or preload them. Keep TTFB low by using a CDN close to users.

For a fixed page example: /guides/import-stripe-into-sheets loads in under 2.5 seconds, has one H1 with the job, one canonical URL, and no layout shift on the first scroll. The title matches the top query from Search Console.

What to skip as a team of one

Skip anything that creates pages with no unique value. It is a trap for time and can harm you under spam policies updated in March 2024. Keep your set small and useful instead.

  • Programmatic SEO at scale without data. Do not generate 500 city pages for a SaaS with no local service.
  • Thin roundup blogs with no hands-on. One honest comparison beats ten affiliate listicles.
  • Keyword stuffing or doorway pages. One page per intent is cleaner and safer.
  • Chasing head terms that do not match your product. Own the long tail you can serve now.
  • Buying links. Focus on launch sites, community mentions and contributor pages instead.

Measure progress: clicks, not just impressions

Your goal is signups and usage, not traffic for its own sake. Track the few numbers that tie to value. Review them monthly. Adjust your next four weeks from them.

  • In Search Console, watch the Performance report. For each target page, track impressions, clicks, average position and click through rate.
  • Find pages with impressions but few clicks. Fix titles and intros to match the top query. Add one internal link from a related page.
  • In product analytics, tag the same pages. Track signups started and completed from them. Use UTM parameters on launch posts so you can see which communities send signups.
  • Set one page goal per month. Example: move /compare/yourproduct-vs-competitor from position 18 to 12 and increase CTR by two points. Then revisit the snippet.

Expect a slow start. New domains need links and time to be seen. Publishing honest pages and earning a few links from launch sites is the way through that stage. Keep shipping one page per pain, and let compounds do their work.

Questions

Check my site, free

Drop in your URL for a free check: in about thirty seconds it reads your site, the searches around it and the rivals on them, and shows three findings you can ship next.

  • Free check, no card
  • Read-only, your own accounts
  • Readable by your agent

Read next