Add seo-playbook research topic

Fetched and analyzed SEO playbook from madebyaris/rankmyseo repo.
Covers on-page parameters, off-page signals, Core Web Vitals (2026),
and GEO/AEO for AI answer engines. Includes sources.md with full
reference list, audit check ID mapping, and toolkit overview.
This commit is contained in:
hermes 2026-07-29 12:02:25 +00:00
commit 474316a453
2 changed files with 162 additions and 0 deletions

72
seo-playbook/index.md Normal file
View file

@ -0,0 +1,72 @@
---
title: SEO Playbook — On-Page, Off-Page, and GEO/AEO Ranking Factors
description: Comprehensive SEO reference covering on-page parameters, off-page signals, Core Web Vitals, and GEO/AEO for AI answer engines. Source: madebyaris/rankmyseo OSS toolkit.
status: active
category: technical
tags: [seo, web-vitals, geo, aeo, structured-data, content-strategy, rankmyseo]
draft: true
created: 2026-07-29
updated: 2026-07-29
origin: buzz://d8a718be-031f-4a6e-9f5c-a55466641654/efbe934206e056b0ada5fc080f0d64947c32d42999d08ded8e69a19b78969161
---
# SEO Playbook — On-Page, Off-Page, and GEO/AEO
## Summary
A practitioner reference for what makes a site rank, covering on-page SEO parameters, off-page authority signals, Core Web Vitals thresholds, and the emerging frontier of GEO/AEO (being cited by AI answer engines). Sourced from the RankMySEO open-source toolkit by Aris Setiawan (@madebyaris), an Indonesian developer from Sidoarjo.
## Research Question
What are the concrete, measurable SEO parameters that affect search ranking, and how do they map to an audit tool?
## Scope
- On-page SEO: metadata, content quality, HTML structure, media
- Off-page SEO: backlinks, brand signals, local SEO, digital PR
- Core Web Vitals: LCP, INP, CLS thresholds (2026)
- GEO/AEO: optimization for AI Overviews, ChatGPT Search, Perplexity
- Not covered: PPC/paid search, social media marketing, content writing tips
## Key Findings
- **SEO has five pillars**: Technical SEO (foundation), On-Page (content & HTML), Off-Page (authority & trust), UX/Core Web Vitals, and GEO/AEO (AI answer engines)
- **On-page audit parameters are concrete**: title length (50-60 chars), meta description (70-160 chars), single H1, heading structure, Open Graph tags, JSON-LD structured data, image alt text, content depth (≥250 words), html lang, mobile viewport, HTTPS, indexability
- **Core Web Vitals (2026)**: LCP < 2.5s, INP < 200ms (replaced FID in March 2024), CLS < 0.1
- **Off-page is out of scope for the OSS audit engine** (no backlink crawling in v1) but documented as practitioner reference
- **GEO/AEO is the 2026 frontier**: being the cited source inside AI Overviews, ChatGPT Search, Perplexity, Gemini — the same fundamentals (clear, factual, well-structured, trustworthy content) win here
- **Meta-principle**: Google rewards demonstrable expertise, trust, and genuinely good UX — not tricks
- **RankMySEO maps each parameter to a check ID** (e.g. `title-length`, `meta-description`, `cwv-lcp`) enabling automated regression testing
## Sources
- [SEO Playbook (raw markdown)](https://raw.githubusercontent.com/madebyaris/rankmyseo/refs/heads/main/docs/seo-playbook.md) — the primary document analyzed
- [RankMySEO GitHub repo](https://github.com/madebyaris/rankmyseo) — OSS toolkit, Apache-2.0, npm `@rankmyseo` scope, 5 stars
- [Google Search Central](https://developers.google.com/search/docs) + Search Quality Rater Guidelines (E-E-A-T definition)
- [web.dev](https://web.dev/vitals/) — Core Web Vitals source of truth
- [Schema.org](https://schema.org/) — structured data vocabulary
- Author: Aris Setiawan (@madebyaris), Sidoarjo, Indonesia — [madebyaris.com](https://madebyaris.com)
## Detail Files
- [[seo-playbook/sources|Sources]] — full reference list with links
## Related Research
- (none yet)
## Discussion
User asked to fetch and research the SEO playbook from the RankMySEO repo. The document is the knowledge base behind the on-page checks in the RankMySEO audit engine. It covers both on-page and off-page SEO comprehensively, with mermaid diagrams and parameter tables that map directly to check IDs in the codebase.
Origin thread: buzz://d8a718be-031f-4a6e-9f5c-a55466641654/efbe934206e056b0ada5fc080f0d64947c32d42999d08ded8e69a19b78969161
## Next Steps
- [ ] Evaluate RankMySEO as a tool for our own projects (job aggregator, law retrieval, research site)
- [ ] Apply SEO parameters to research.rasyidanaf.com when publishing via Quartz
- [ ] Investigate GEO/AEO optimization for being cited in AI answer engines
## Conclusion
The SEO playbook is a solid practitioner reference covering the full spectrum of ranking factors. The RankMySEO toolkit itself is a mature OSS project (M0-M5 implemented, 20+ packages, multi-framework support) that could be useful for SEO auditing of our own sites. The GEO/AEO section is particularly relevant as AI search engines become more prominent.

90
seo-playbook/sources.md Normal file
View file

@ -0,0 +1,90 @@
# Sources — SEO Playbook Research
## Primary document
- [SEO Playbook (raw markdown)](https://raw.githubusercontent.com/madebyaris/rankmyseo/refs/heads/main/docs/seo-playbook.md) — the document analyzed in this research topic
## Toolkit
- [RankMySEO GitHub repo](https://github.com/madebyaris/rankmyseo) — OSS SEO toolkit, Apache-2.0
- [RankMySEO Wiki](https://github.com/madebyaris/rankmyseo/wiki) — architecture, roadmap, design decisions
- npm scope: [@rankmyseo](https://www.npmjs.com/org/rankmyseo) (v0.3.x)
- Author: Aris Setiawan (@madebyaris), Sidoarjo, Indonesia — [madebyaris.com](https://madebyaris.com)
## Authoritative SEO sources (referenced in the playbook)
- [Google Search Central](https://developers.google.com/search/docs) — official Google search documentation
- [Google Search Essentials](https://developers.google.com/search/docs/essentials) — formerly Webmaster Guidelines
- [Search Quality Rater Guidelines](https://developers.google.com/search/blog/2024/11/rater-guidelines-update) — definition of E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness)
- [web.dev Core Web Vitals](https://web.dev/vitals/) — source of truth for LCP, INP, CLS
- [Schema.org](https://schema.org/) — structured data vocabulary
- [Bing Webmaster Guidelines](https://www.bing.com/webmasters/help/webmaster-guidelines-30fba232) — now relevant for ChatGPT Search
## Practitioners and publications (referenced in the playbook)
- *The Art of SEO* (Enge et al.) — book
- [Backlinko](https://backlinko.com/) — blog
- [Ahrefs Blog](https://ahrefs.com/blog/) — blog
- [Moz Blog](https://moz.com/blog) — blog
- Aleyda Solís — international SEO consultant
- Lily Ray — E-E-A-T and algorithm update analysis
- Marie Haynes — algorithm updates and quality rater perspectives
## RankMySEO on-page audit checks (parameter → check ID)
| Parameter | Target | Check ID |
|-----------|--------|----------|
| Title length | 50-60 chars, keyword front | `title-length` |
| Meta description | 70-160 chars | `meta-description` |
| Canonical URL | self-referencing / preferred URL | `canonical` |
| Single H1 | exactly one | `single-h1` |
| Subheading structure | ≥1 H2 | `heading-structure` |
| Open Graph | og:title/description/image | `og-tags` |
| Structured data | valid JSON-LD | `json-ld` |
| Image alt text | every meaningful image | `image-alt` |
| Content depth | not thin (≥ ~250 words) | `content-depth` |
| HTML lang | declared | `lang-attribute` |
| Mobile viewport | `<meta name=viewport>` | `viewport-meta` |
| Indexable | no `noindex` | `robots-indexable` |
| HTTPS | served over TLS | `https` |
| LCP | < 2.5s | `cwv-lcp` |
| INP | < 200ms | `cwv-inp` |
| CLS | < 0.1 | `cwv-cls` |
## Core Web Vitals thresholds (2026)
| Metric | Good | Measures |
|--------|------|----------|
| LCP | < 2.5s | loading |
| INP | < 200ms | responsiveness (replaced FID, March 2024) |
| CLS | < 0.1 | visual stability |
## Off-page parameters (practitioner reference, not in OSS v1)
| Parameter | What good looks like |
|-----------|---------------------|
| Referring domains | steady growth of unique, relevant domains |
| Link quality | high-authority, topically relevant sources |
| Anchor text profile | mostly branded/natural; small exact-match % |
| dofollow/nofollow mix | natural blend |
| Link velocity | organic pace, no spikes |
| Toxic links | monitored; disavow only clear spam |
| Branded search | rising brand queries |
| Brand mentions | linked + unlinked |
| Google Business Profile | complete, verified, active |
| Reviews | volume + rating + recency + responses |
| NAP consistency | identical across citations |
| Digital PR | earned coverage in authoritative media |
## RankMySEO toolkit overview
- **License**: Apache-2.0
- **Status**: M0-M5 implemented, published on npm under `@rankmyseo` scope (v0.3.x)
- **Stars**: 5 (as of 2026-07-29)
- **Commits**: 24
- **Created**: 2026-06-24
- **Architecture**: Monorepo (pnpm + Turborepo), headless core + framework adapters
- **Supports**: Node.js ≥ 20, Hono/Express/Next/Nitro/SvelteKit/Astro, SQLite + Postgres (Drizzle/Prisma/Kysely)
- **Multi-tenant**: every row scoped by `tenantId` + `projectId`
- **AI layer**: AI SDK tools + MCP server for dashboard customization (approval-gated)
- **20+ packages** under `@rankmyseo` scope (core, storage, server adapters, react/vue/svelte, ui, cli, agent, scanner, collector, datasource, scheduler)