Files
2nd/10_Wiki/Topics/AI_and_ML/AI-Answer-Engine-Optimization.md
T
Antigravity Agent f8b21af4be Wiki cleanup: error-doc removal, dedup merge, link normalization
10_Wiki/Topics 대규모 정리:
- 오류 캡처/미완성 stub 문서 227개 제거
- 교차폴더 중복 43클러스터 병합 (63파일 → redirect)
- 링크명 정규화: 깨진 링크 수정·redirect 직결·개념 매핑 ~2,400건
- 카테고리 MOC 6개 신규 생성
- Graph 섹션 미해결 related-keyword 링크 10,058건 제거

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 23:52:15 +09:00

210 lines
5.2 KiB
Markdown

---
id: wiki-2026-0508-ai-answer-engine-optimization
title: AI Answer Engine Optimization (AEO)
category: 10_Wiki/Topics
status: verified
canonical_id: self
aliases: [AEO, GEO, generative engine optimization, AI search SEO, citation optimization]
duplicate_of: none
source_trust_level: B
confidence_score: 0.85
verification_status: conceptual
tags: [aeo, geo, seo, llm-search, structured-data, ssr, json-ld, content-strategy]
raw_sources: []
last_reinforced: 2026-05-09
github_commit: pending
inferred_by: Claude Opus 4.7 (manual cleanup 2026-05-09)
tech_stack:
language: HTML / JSON-LD
framework: Next.js / Astro / SSR
---
# AI Answer Engine Optimization (AEO)
## 📌 한 줄 통찰
> **"Search 의 click → AI answer 의 citation"**. ChatGPT / Perplexity / Google AI Overviews 의 매 brand 의 source 의 selection. **SSR + JSON-LD + semantic HTML + Q&A format**.
## 📖 핵심
### 매 search engine 의 evolution
- **옛 SEO**: keyword + ranking → click.
- **AEO**: AI 의 answer 의 citation source.
- **GEO** (Generative Engine Optimization): same idea.
### 매 AI bot 의 behavior
- **GPTBot, Claude-Web, PerplexityBot**: crawl + summarize.
- **JS execution X**: cost. 매 SSR / SSG 의 essential.
- **Cite recent sources**: freshness.
- **Trust signal**: domain authority, structured data.
### Core technique
#### 1. SSR / SSG (JS Execution Wall 제거)
- 매 SPA 의 JS-only render = bot 의 invisible.
- 매 SSR (Next, Astro) = HTML 의 first paint.
#### 2. Semantic HTML
```html
<article>
<h1>Topic</h1>
<main>
<p>Direct answer in first paragraph.</p>
<h2>Question 1?</h2>
<p>Answer.</p>
</main>
</article>
```
#### 3. JSON-LD structured data
```html
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "...",
"author": { "@type": "Person", "name": "..." },
"datePublished": "2026-05-09",
"mainEntity": {
"@type": "FAQPage",
"mainEntity": [{
"@type": "Question",
"name": "How to X?",
"acceptedAnswer": { "@type": "Answer", "text": "..." }
}]
}
}
</script>
```
#### 4. Q&A format
- H2 = question.
- 매 H2 직후 = direct answer.
- 매 paragraph 의 self-contained.
#### 5. Direct answer in lead
- 매 first 50 word 의 answer.
- 매 inverted pyramid (journalism).
#### 6. Citation-friendly
- 매 specific number / fact.
- 매 source 의 explicit.
- 매 author 의 expertise.
#### 7. llm.txt / robots.txt control
```txt
# llm.txt (proposal)
# Allow ChatGPT, Claude, Perplexity to cite.
User-agent: *
Allow: /
```
### 매 platform 의 difference
#### Google AI Overviews (SGE)
- 매 YMYL (Your Money Your Life) 의 strict.
- 매 E-E-A-T (Experience, Expertise, Authority, Trust).
- 매 traditional SEO 의 baseline.
#### ChatGPT / Claude / Perplexity
- Real-time web search.
- 매 cite source.
- Domain trust signal.
#### Bing Chat / Copilot
- Edge integration.
- 매 enterprise 친화.
## 💻 Code
### Next.js SSR
```tsx
// app/article/[slug]/page.tsx
export default async function ArticlePage({ params }) {
const article = await fetchArticle(params.slug);
return (
<>
<script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify({
'@context': 'https://schema.org',
'@type': 'Article',
headline: article.title,
author: { '@type': 'Person', name: article.author },
datePublished: article.publishedAt,
})}} />
<article>
<h1>{article.title}</h1>
<p>{article.lead}</p>
<main>{article.content}</main>
</article>
</>
);
}
```
### FAQ 의 schema
```tsx
function FAQ({ items }: { items: { q: string; a: string }[] }) {
return (
<>
<script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify({
'@context': 'https://schema.org',
'@type': 'FAQPage',
mainEntity: items.map(({ q, a }) => ({
'@type': 'Question',
name: q,
acceptedAnswer: { '@type': 'Answer', text: a },
})),
})}} />
<section>
{items.map(({ q, a }) => (
<>
<h2>{q}</h2>
<p>{a}</p>
</>
))}
</section>
</>
);
}
```
## 🤔 결정 기준
| 작업 | 추천 |
|---|---|
| Blog / docs | SSG + JSON-LD |
| 매 product page | SSR + Product schema |
| FAQ | FAQPage schema |
| 매 SPA | SSR fallback 추가 |
| 매 SaaS | E-E-A-T content |
**기본값**: SSR/SSG + JSON-LD + Q&A format + direct answer in lead.
## 🔗 Graph
- 부모: [[SEO]] · [[Generative-AI]]
- 변형: [[GEO]]
## 🤖 LLM 활용
**언제**: 매 content site 의 AI traffic 의 capture. 매 documentation site 의 visibility.
**언제 X**: 매 internal app. 매 content gating (paywalled).
## ❌ 안티패턴
- **SPA + no SSR**: bot 의 invisible.
- **JSON-LD 의 fake**: penalty.
- **Click-bait title + AI 의 misalign**: low citation rate.
- **모든 page 의 same FAQ**: spam.
## 🧪 검증 / 중복
- **Verified** (concept).
- 신뢰도 B (Search Engine Journal, Schema.org docs).
- Related: [[AI-Search-Optimization]], [[AI-Overviews-and-SGE]].
## 🕓 Changelog
| 날짜 | 변경 | 처리 | 신뢰도 |
|---|---|---|---|
| 2026-05-08 | Phase 1 정규화 | UPDATE | A |
| 2026-05-09 | Manual cleanup — code + technique + 결정 + 안티패턴 | UPDATE | B |