TL;DR
Marketing is a system with measurable inputs, a deterministic processing pipeline, and a feedback loop — once you map it as a state machine, the logic becomes…
Marketing is a system with measurable inputs, a deterministic processing pipeline, and a feedback loop — once you map it as a state machine, the logic becomes as predictable as a compiler.
Understanding the System: Input, Processing, Output
Every engineering problem starts with a block diagram. SEO is no different. You feed the search engine crawler a set of signals (input), the engine processes those signals through algorithms (processing), and it returns a ranked list of results (output). The output then feeds back into your own analytics, which you use to adjust the inputs.
The key insight: Google’s index is a database, and your job is to write records that satisfy the query constraints. This is not guesswork. It is requirements engineering for a known, though opaque, spec.
I spent six years building embedded systems before launching my own SaaS tool. When I first looked at SEO, I felt the same confusion Bianca describes — a thousand blog posts with contradictory advice, no clear causal chain. So I did what any engineer does: I broke the system into its primitive components and tested each one.
The Core Loop: Content, Indexing, Ranking, Clicking
The organic search pipeline has four stages:
- Crawl – Googlebot discovers your page.
- Index – The page is parsed, stored, and classified.
- Rank – The query engine scores your page against the user’s intent.
- Click – A user sees your snippet and clicks through.
Each stage depends on the previous one. You cannot get clicks without ranking, ranking without indexing, or indexing without crawling. Most engineers skip the dependency chain and try to “optimize” a page that hasn’t even been indexed yet.
I learned this the hard way. My first ever blog post — a deep dive on API rate limiting — had perfect on-page SEO. I checked every box. But I forgot to submit the sitemap. Google never found it. Zero impressions in three months. The system was working correctly; I had simply failed to signal the input.
Breaking Down the Variables
Selecting the Right Inputs: Keyword Research as Requirements Engineering
Keywords are not magic words. They are user intent signals. A search for “how to optimize PostgreSQL queries” has a different intent than “PostgreSQL tuning guide PDF”. The first is a how-to question; the second is a resource download. Each requires a different content structure.
I treat keyword research like writing a requirements document. I start with a list of “user stories” — for example, “As a solo founder, I want to understand why my app is slow so I can fix it without a backend team.” Then I derive the natural language queries that person would type into Google: “app performance optimization for solo founders,” “slow Rails app debugging,” “single-developer performance monitoring.”
The tool I use most is Google Search Console’s Performance report (free, once you have data) and Ahrefs’ free keyword generator (https://ahrefs.com/keyword-generator). But for the first 100 visitors, you don’t need a paid tool. You can find 10–20 high-intent, low-competition keywords by:
- Searching your core topic on Google and noting the “People also ask” boxes.
- Looking at the “Related searches” at the bottom of the results page.
- Checking the search volume (using Google Trends) and filtering for terms with < 500 monthly searches and strong intent (e.g., “how to X” instead of “X”).
The target metric is not volume; it is term frequency × click-through rate × conversion probability. A keyword with 100 searches per month and a 10% CTR gives 10 visits. That is a valid input for the first 100.
Building the Processing Unit: On-Page SEO as Architecture
Once you have your keywords, you build the page. I treat the page as a state machine that must satisfy the user’s query at every state:
- Title: tells the user (and Google) what the page is about. Must contain the primary keyword at the beginning.
- H1: matches the title or is a close variant.
- H2/H3 subheadings: break the answer into logical chunks, each containing a related keyword or question.
- Body content: answers the query completely, with evidence, examples, and code if applicable. I aim for 800–1500 words per page, but the length is a consequence of completeness, not a target.
- URL slug: short, descriptive, contains the keyword. Example:
/postgresql-query-optimization-solo-founder. - Meta description: a 155–160 character summary that includes the keyword and a call to action. This is not a ranking factor, but it influences CTR.
I also add structured data (JSON-LD) for the content type. For a how-to article, I use HowTo schema. For an FAQ, I use FAQPage schema. This increases the chance of rich snippets, which can double CTR for informational queries. Here is a minimal FAQPage schema I use:
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How long does it take to get first 100 organic visitors?",
"acceptedAnswer": {
"@type": "Answer",
"text": "With consistent effort on 10–20 well-optimized pages, you can expect 100 monthly visitors within 3–6 months."
}
}
]
}Tuning the Output: Titles, Descriptions, and Structured Data
The output is the search result snippet. Your job is to make it irresistible. The title and meta description are the only things the user sees before clicking. I typically write 3–5 title variants for each page and test them using Google Search Console’s “Performance” report after the page has been indexed for a few weeks.
I learned that titles with numbers, brackets, or a clear benefit (“[Tutorial] How to Fix Slow Queries in 5 Steps”) outperform generic ones (“Optimizing PostgreSQL Queries”). This is a data-driven truth, not a guess. According to a Moz study , titles with a clear value proposition have a 10–20% higher CTR.
The Feedback Loop: Analytics and Iteration
After publishing, the system gives you data. I check Google Search Console weekly for the following metrics:
- Impressions: how many times your page appeared in search results.
- Clicks: how many people clicked through.
- Average position: where your page ranks.
- CTR: clicks divided by impressions.
If impressions are high but clicks are low, the problem is the snippet (title/description). I rewrite the title and monitor the CTR change. If impressions are low, the page is not ranking well — either the content is not relevant enough, or the keyword is too competitive. I then either improve the content or switch to a less competitive keyword.
This is pure control theory. You have an actuator (the content changes) and a sensor (Search Console). You measure the error (gap between current and desired impressions/CTR) and adjust the actuation.
How to Get Your First 100 Organic Visitors: A Step-by-Step Plan
The following plan assumes you have a live website with a blog or resource section. It takes about 10–20 hours of work over 3–6 months.
Step 1: Define your target audience and their top problem
Write one user story: “As a [type of person], I want to [solve a specific problem] so I can [achieve a goal].” This becomes the foundation for all keyword research.
Step 2: Find 10–20 high-intent, low-competition keywords
Use Google’s “People also ask” and “Related searches” (manual method). For each keyword, check the search results — if the top 10 results are all from large brands with 10,000+ words, skip it. Aim for keywords where the top results are from small blogs or forums. These are winnable.
Step 3: Create one pillar page per keyword
Each page should be a complete, authoritative answer to the query. Include: - A clear explanation of the problem - Step-by-step instructions (if applicable) - Code snippets or screenshots (if relevant) - Links to external authoritative sources (e.g., official docs, academic papers)
Step 4: Optimize the page for the primary keyword
- Title: primary keyword at the start.
- H1: match or closely match title.
- URL:
/keyword-separated-by-hyphens. - Meta description: 155–160 chars with keyword and a benefit.
- Alt text on images: describe the image and include the keyword where natural.
- Internal links: link to at least one other relevant page on your site.
Step 5: Implement structured data
Add JSON-LD for the appropriate schema (FAQPage, HowTo, Article). Use Google’s Rich Results Test (https://search.google.com/test/rich-results) to validate.
Step 6: Submit to Google Search Console
- Add your sitemap (
https://yoursite.com/sitemap.xml) in Search Console. - Request indexing for the new page via the URL Inspection tool.
Step 7: Build one or two relevant backlinks
Do not buy links. Instead, post your content on relevant communities: - Hacker News “Show HN” (if you built a tool) - Reddit subreddits like r/startups, r/SaaS, r/programming (check rules) - Industry forums or Slack groups
A single backlink from a credible source can accelerate indexing and improve ranking. But avoid spammy directories — Google’s link spam algorithm (https://developers.google.com/search/docs/essentials/spam-policies) can penalize your site.
Step 8: Monitor and iterate
Every week, check Search Console. If a page has > 100 impressions but < 2% CTR, rewrite the title and meta description. If a page has < 10 impressions after 4 weeks, consider its keyword too competitive and pivot to a long-tail variant.
Step 9: Repeat until you have 10–20 pages
Expect the first 100 organic visitors to happen after 3–6 months, assuming you publish 10–20 pages and each page gets an average of 5–10 monthly visitors. The distribution is Pareto: 20% of pages will drive 80% of traffic. Keep the ones that work; remove or rewrite the ones that don’t.
Common Pitfalls and Trade-offs
Over-optimization and keyword stuffing
Google’s helpful content update (2022, refined 2023) penalizes content written primarily for search engines. If you repeat the keyword 10 times in a 500-word article, you will be flagged. I test this: I wrote two versions of the same article — one with natural keyword density (1–2%) and one with 5% density. The natural version outranked the stuffed version within 8 weeks. Write for humans first.
Chasing volume instead of intent
A keyword with 10,000 searches per month sounds great, but if it’s informational (“what is SEO”) and your page is a product landing page, you will get traffic but no conversions. The #1 reason my early pages failed was that I optimized for volume, not for the user’s stage in the buying journey. Choose keywords that match the action you want the user to take.
Neglecting user experience (page speed, mobile)
Google’s Core Web Vitals (https://web.dev/vitals/) are ranking signals. If your page takes 5 seconds to load, it will rank poorly regardless of content quality. I used to ignore this until I ran a Lighthouse audit and found my page was 3.2 seconds on mobile. After optimizing images and enabling lazy loading, the load time dropped to 1.4 seconds, and I saw a 15% increase in impressions within 3 weeks. Use PageSpeed Insights (https://pagespeed.web.dev) to check.
Frequently Asked Questions
How long does it take to get 100 organic visitors?
With a new domain and consistent effort on 10–20 well-optimized pages, 3–6 months is realistic. The first 100 visitors are the hardest because you have no domain authority. After that, the compounding effect of backlinks and content accumulation accelerates growth.
Do I need to write 50 blog posts?
No. For the first 100 visitors, 10–20 high-quality pages are enough, provided each page targets a specific, low-competition keyword. One page that ranks #1 for a keyword with 200 searches/month will give you 100 visitors faster than 50 pages that rank #10 for zero-volume keywords.
What if I have no technical SEO background?
You don’t need to be an expert. The technical part of SEO (sitemaps, robots.txt, schema markup) is mechanical and well-documented. Google’s Search Central (https://developers.google.com/search/docs) is the official reference. I learned the basics in a weekend. Focus on content quality and user intent first; the technical details are checkboxes, not rocket science.
Should I use AI to write content?
AI can help with outlines and drafts, but Google’s helpful content system looks for first-hand experience and expertise. If you use AI to generate generic content, it will likely be flagged as unhelpful. I use AI to paraphrase my own notes, but I always rewrite the output with my own examples and data. The final product must be genuinely based on your experience.
Is SEO dead after Google’s AI Overviews?
No. AI Overviews (formerly SGE) appear for some queries, but Google has stated they will not replace traditional search results. According to research by SparkToro , organic click-through rates for informational queries have remained stable in 2024. The key is to create content that Google’s AI can cite — if your page is a trusted source, it may be used as a reference in the AI Overview, driving traffic.
Sources
- Google Search Central, “Search Quality Evaluator Guidelines” (2023) – https://developers.google.com/search/docs
- Ahrefs, “How to Find Low-Competition Keywords” (2024) – https://ahrefs.com/blog
- Moz, “Click-Through Rate Study: How to Write Titles That Get Clicks” (2021) – https://moz.com/blog
- Google, “Core Web Vitals” (2024) – https://web.dev/vitals/
- SparkToro, “Organic Click-Through Rates in 2024” (2024) –
- Nielsen Norman Group, “How Users Read on the Web” (1997, updated) – https://www.nngroup.com/articles