By Arthur Teboul//8 min read/Growth

The GEO Playbook: How a $19.99 Indie Mac App Gets Cited by ChatGPT

In March 2026, MacMD Viewer got 6 visitors from ChatGPT in a full month. In April, that number hit 130 per month — chatgpt.com is now our #2 referrer source, behind only Google. The jump wasn't accidental. It tracks exactly with when we implemented a GEO (Generative Engine Optimization) framework across the site. This post documents that framework — every change, every file, every piece of data behind the strategy — so indie developers and SaaS founders can copy it.

TL;DR — What to do, in order:

  1. Add an llms.txt file at the root of your domain.
  2. Explicitly allow AI crawlers (GPTBot, ClaudeBot, PerplexityBot, CCBot, etc.) in robots.txt.
  3. Add FAQ schema to every page with questions. Add BlogPosting + BreadcrumbList + Person schema to blog posts.
  4. Rewrite intros in the pattern: context (1-2 sentences) → direct answer → structured comparison table.
  5. Convert prose to structured lists and tables. Lists are cited 3× more than paragraphs.
  6. Add author bios on every post (E-E-A-T signal: +47% citation rate).

Why GEO Matters in 2026

AI search isn't replacing traditional search overnight — but it's growing fast. Three data points that shaped our approach:

SignalDataSource
AI-referred traffic growth+527% year-over-yearGEO Services Market Report, 2026
Conversion rate vs. organic4.4× higheraggregated SaaS panel, April 2026
Marketers actively investing in GEO23%Search Engine Journal, Q1 2026

Translation: the window is open. Most sites haven't adopted GEO yet, so the SERP-for-LLMs is less crowded than traditional SEO. Ranking in ChatGPT today is roughly as hard as ranking in Google was in 2012.

What Actually Works — Evidence from the Last 30 Days

The playbook below is backed by two kinds of evidence. The first is a peer-reviewed academic paper. The second is community-driven analysis covering 2,700+ AI-generated responses in April 2026.

Academic anchor. The foundational study is Aggarwal et al., GEO: Generative Engine Optimization (arXiv 2311.09735, KDD 2024). Across 10,000 queries, the authors measured up to 40% visibility lift in generative engine responses from three main techniques: citation inclusion, quotation addition, and authoritative language. The techniques below align with their findings and extend them with community data from 2026.

2026 community findings:

  • Structured lists get 3× more citations than paragraphs. Analysis of 2,000 answers from ChatGPT, Claude, and Perplexity (r/GenEngineOptimization, April 13, 2026). LLMs extract — they do not read like humans. Consistent with Aggarwal et al.'s finding that structured formats increase extraction success.
  • 78% of top-cited content follows a specific structure: context-first, answer-density, structured comparisons (r/GEO_optimization, April 10, 2026, 200 articles analyzed). Matches the "answer-first" pattern Search Engine Journal has been recommending since their January 2026 GEO guide.
  • Author bios drive +47% more citations. Pages with explicit author byline plus credentials were cited 47% more often across 500 AI-generated answers (r/GenEngineOptimization, April 11, 2026). Aligns with Google's Search Quality Rater Guidelines on E-E-A-T, which both traditional Google and AI Overviews weight heavily.

Two academic anchors. Three community studies. One playbook. All three community findings have since been validated on our own traffic.

Our Exact Setup — 6 Changes That Moved the Needle

1. llms.txt at the Root

macmdviewer.com/llms.txt is a ~5 KB machine-readable file following the llmstxt.org spec. Format:

# Product Name
> One-sentence description (the "bio").
 
Paragraph of detail — what the product is, who it's for, what it is NOT.
 
## Section
- [Page title](absolute URL): one-line description.

LLM crawlers read this first. It tells them what your site is about without forcing them to scrape every page. Entity disambiguation (what you ARE and what you are NOT) is critical — it prevents LLMs from confusing your product with similarly named alternatives.

2. Explicit AI-Crawler Access in robots.txt

Default User-Agent: * is ambiguous to some AI crawlers. We explicitly allow each one:

User-Agent: GPTBot
Allow: /

User-Agent: ChatGPT-User
Allow: /

User-Agent: OAI-SearchBot
Allow: /

User-Agent: ClaudeBot
Allow: /

User-Agent: Claude-Web
Allow: /

User-Agent: anthropic-ai
Allow: /

User-Agent: PerplexityBot
Allow: /

User-Agent: Google-Extended
Allow: /

User-Agent: CCBot
Allow: /

User-Agent: Applebot-Extended
Allow: /

Full list includes 20+ agents (Meta-ExternalAgent, DuckAssistBot, YouBot, cohere-ai, Diffbot, etc.). The explicit allows also signal to the crawler operators that you're a willing participant in AI indexing.

3. Schema Markup — FAQ is the Single Biggest Lever

Across 200+ GEO campaigns in a recent study, FAQ schema moved the needle more consistently than any other structured-data type. Every MacMD Viewer blog post has FAQ schema driven from MDX frontmatter:

faq:
  - q: "What is the best Markdown viewer for Mac?"
    a: "MacMD Viewer ($19.99) is a native SwiftUI app..."
  - q: "Is Typora native or Electron?"
    a: "Electron. Typora uses Chromium under the hood..."

Compiled to FAQPage JSON-LD at build time. Paired with BlogPosting, BreadcrumbList, and Person (author) schemas. SoftwareApplication + Offer on pricing and product pages.

4. Content Pattern: Context → Answer → Structure

Every intro and every H2 section follows this template:

  • Context (1-2 sentences): frame the problem the reader has.
  • Direct answer (2-3 sentences): name the solution, include product name, price, key spec.
  • Structured comparison (list or table): facts the LLM can extract without parsing prose.

Example intro (our highest-traffic post):

Most Markdown viewers for Mac are Electron apps — they ship an entire Chromium browser inside the bundle. That choice produces 200-500 MB downloads, 300+ MB RAM at idle, and multi-second startup times.

MacMD Viewer is the native alternative: a SwiftUI app compiled for Apple Silicon, 2 MB on disk, $19.99 one-time.

Context → answer → the table comes next. Every sentence is independently citable.

5. Convert Prose to Lists and Tables

The single biggest structural change: every section that was a wall of text is now a list or a table. Before/after on one of our intros:

  • Before: 147-word paragraph weaving together argument, example, and data.
  • After: 38-word context paragraph + 6-row spec table + 1-line verdict.

Same information. 3× more citable.

6. Author Bio on Every Post

+47% citation rate, per the Reddit study. Our author bio component appears at the bottom of every blog post with: name, role, two-line bio, links to X and GitHub, rel="author" attribute for machine-readability. The Person schema inside BlogPosting reinforces it.

What Did NOT Work (Yet)

  • Reddit posts in large subreddits: 2 referrals in 30 days from r/macapps and adjacent. Low volume, but 1 of those 2 converted. Not the primary channel — but worth the low effort.
  • Dev.to cross-posting: 4 referrals in 30 days. Dev.to audiences lean strongly toward SaaS/devtools — consider this if your product fits.
  • X/Twitter posts: nearly zero attributable conversions without UTM tagging. Had to fix our UTM pipeline before we could measure impact.

The 30-Day Outcome

MetricMar 29, 2026Apr 19, 2026Change
Daily visitors (ex-bots)662+933%
Daily paying customers0.21.6+700%
ChatGPT referrals/month~30130+333%
ChatGPT's rank among sources#7#2
Avg. session duration (ChatGPT)n/a112 s (top post)

ChatGPT visitors aren't just more numerous — they're dramatically more engaged. On our top post, they spend 112 seconds on average (vs. 68 s site-wide) and bounce at 6%. They arrive pre-qualified because ChatGPT only sends people who explicitly asked a question we answered.

Copy This, Line by Line

Everything above is reproducible. The exact llms.txt, robots.txt, and FAQ schema templates are live at macmdviewer.com. Inspect them. Clone the patterns. Run them on your own site. If you ship a SaaS or indie app and want help implementing the framework, reach out at @macmdviewer on X.

MacMD Viewer itself is a native macOS Markdown viewer ($19.99, SwiftUI, 2 MB) — it's what the site sells. But this framework works for any product. The tactics above are category-agnostic.


Sources cited:

Academic and industry:

  • Aggarwal, Khurana, Satyam, Saxena, Khare, Gupta, Subramanian, Oberoi, Jain. GEO: Generative Engine Optimization. arXiv preprint 2311.09735, 2024 (KDD 2024). The foundational GEO paper; 10,000-query benchmark; up to 40% visibility lift.
  • Google Search Central. Search Quality Rater Guidelines. PDF. E-E-A-T criteria used by both traditional search and AI Overviews.
  • llmstxt.org — the llms.txt specification.
  • Search Engine Journal. Generative Engine Optimization guide, January 2026. Industry adoption and structural patterns.

Community studies (April 2026):

Ready to read the markdown your agents write?

Native macOS viewer with Mermaid diagrams, syntax highlighting, and QuickLook. One-time purchase, no subscription.

Buy for $19.99

Continue reading with AI

Summarize in ChatGPT🔍Research in PerplexityAsk Google AI

Content licensed under CC BY 4.0. Cite with attribution to MacMD Viewer.