Settingan Wajib Website di Era AI untuk Optimasi SEO & GEO

Daftar Isi Panduan
- Mengenal GEO (Generative Engine Optimization) dan bedanya dengan SEO tradisional
- 1. Konfigurasi robots.txt selektif: izinkan AI Search, batasi training scraper
- 2. Memasang /llms.txt dan /llms-full.txt di root domain
- 3. Memperkuat konteks entitas dengan JSON-LD Schema Markup
- 4. Arsitektur HTML semantik: SSG atau SSR membuat isi utama tersedia sejak respons pertama
- FAQ seputar settingan website untuk SEO dan GEO
- Rujukan teknis
Mengenal GEO (Generative Engine Optimization) dan bedanya dengan SEO tradisional
Mesin pencari tidak lagi selalu berhenti di daftar sepuluh tautan biru. Sistem jawaban dapat mengambil beberapa halaman, memilih bagian yang paling relevan, lalu menyusun ringkasan dengan tautan pendukung. Proses retrieval-augmented generation (RAG) ini membuat struktur informasi, bukti, dan keterbacaan menjadi penting. Namun GEO dan AEO adalah istilah kerja, bukan sistem peringkat terpisah yang bisa diaktifkan dengan satu file. Untuk Google AI Overviews dan AI Mode, fondasinya tetap SEO: halaman harus dapat diindeks, layak mendapat snippet, dan memberi isi yang berguna bagi manusia.
| Fokus | Tujuan utama | Implementasi yang bisa diuji |
|---|---|---|
| SEO klasik | Ditemukan, diindeks, dan dipahami mesin pencari | URL kanonis, sitemap.xml, konten orisinal, performa, dan internal link |
| AEO | Menjawab pertanyaan pengguna dengan cepat | Jawaban langsung, heading berbasis pertanyaan, daftar dan tabel yang jelas |
| GEO | Membuat konteks halaman mudah dipilih sistem jawaban generatif | Fakta terverifikasi, entitas konsisten, structured data, dan halaman crawlable |
1. Konfigurasi robots.txt selektif: izinkan AI Search, batasi training scraper
robots.txt adalah instruksi perayapan di root domain, bukan firewall. Ia tidak melindungi halaman rahasia; dashboard, API, dan data privat tetap harus memakai autentikasi atau kontrol akses server. Untuk konten publik, pisahkan tujuan bot. Dokumentasi OpenAI membedakan OAI-SearchBot untuk hasil pencarian ChatGPT dari GPTBot untuk konten yang dapat dipakai melatih model fondasi. ChatGPT-User berbeda lagi: aksesnya dapat dipicu tindakan pengguna dan aturan robots dapat tidak berlaku.
Mulailah dari kebijakan yang benar-benar sesuai izin konten Anda. Contoh berikut mengizinkan crawler pencarian yang dipilih, membatasi jalur operasional, dan menolak training OpenAI. Tambahkan PerplexityBot, ClaudeBot, Applebot-Extended, atau token lain hanya setelah memeriksa dokumentasi resmi serta IP atau mekanisme verifikasinya; nama user-agent saja bukan bukti identitas bot.
User-agent: OAI-SearchBot
Allow: /
Disallow: /admin/
Disallow: /api/
Disallow: /dashboard/
User-agent: PerplexityBot
Allow: /
Disallow: /admin/
Disallow: /api/
Disallow: /dashboard/
User-agent: GPTBot
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /api/
Disallow: /dashboard/
Sitemap: https://namamu.aiclub.ai.id/sitemap.xml
Contoh tersebut adalah pilihan kebijakan, bukan resep universal. Memblokir GPTBot tidak sama dengan memblokir OAI-SearchBot; keduanya independen. Demikian pula Google-Extended adalah kontrol produk Google terpisah, bukan pengganti Googlebot. Jangan menghapus Googlebot atau Bingbot bila Anda tetap ingin SEO biasa. Jika masalahnya “website tidak terbaca ChatGPT”, uji dulu respons publik /robots.txt, /sitemap.xml, halaman kanonis, dan status HTTP sebelum mengubah aturan bot.
2. Memasang /llms.txt dan /llms-full.txt di root domain
llms.txt dapat menjadi indeks Markdown ringkas bagi pembaca manusia maupun alat yang memilih untuk menggunakannya: jelaskan proyek, halaman utama, dokumentasi, dan batasan informasi. llms-full.txt dapat memuat versi yang lebih lengkap bila Anda sanggup menjaganya tetap akurat. Keduanya bukan persyaratan Google, bukan pengganti sitemap.xml, dan tidak menjamin ChatGPT, Perplexity, Claude, Gemini, atau sistem lain akan mengutip situs Anda. Google bahkan mengingatkan agar pemilik situs tidak membuat file AI yang tidak diperlukan hanya demi mengejar visibilitas.
# Portofolio Raka Pratama
> Backend developer Indonesia. Membangun API Go, otomasi, dan dokumentasi teknis.
## Halaman utama
- [Tentang](https://raka.aiclub.ai.id/about/): profil dan keahlian.
- [Proyek](https://raka.aiclub.ai.id/projects/): studi kasus dengan source code.
- [Catatan API](https://raka.aiclub.ai.id/docs/): dokumentasi endpoint publik.
## Batasan
- Tidak ada layanan berbayar atau data pelanggan pada situs ini.
- Untuk pertanyaan keamanan, gunakan halaman kontak.
Di GitHub Pages, letakkan file di root artefak publik sehingga tersedia sebagai /llms.txt. Di Vercel atau framework modern, simpan di folder publik yang dipetakan ke root. Di Cloudflare Pages, taruh file dalam direktori publish. Setelah deploy, buka URL final langsung dan pastikan responsnya 200 serta text/plain atau teks yang mudah dibaca. Jangan mengandalkan tautan lokal yang hanya bekerja di mesin pengembang.
3. Memperkuat konteks entitas dengan JSON-LD Schema Markup
JSON-LD Schema.org memberi mesin pembaca petunjuk eksplisit tentang isi halaman. Untuk Google, JSON-LD adalah format yang direkomendasikan karena lebih mudah dirawat; tetapi markup harus menggambarkan konten yang benar-benar terlihat. Schema bukan jalan pintas ke AI Overviews dan tidak boleh dipakai untuk menciptakan rating, FAQ, organisasi, atau produk fiktif. Pilih tipe yang sesuai: Person untuk portofolio, SoftwareApplication untuk aplikasi, Article untuk tulisan, dan FAQPage hanya bila pertanyaan dan jawaban memang tampil pada halaman.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Person",
"name": "Raka Pratama",
"url": "https://raka.is-a.cv/",
"jobTitle": "Backend Developer",
"sameAs": ["https://github.com/rakapratama"],
"knowsAbout": ["Go", "REST API", "PostgreSQL"]
}
</script>
4. Arsitektur HTML semantik: SSG atau SSR membuat isi utama tersedia sejak respons pertama
Website React CSR murni sering gagal bukan karena React buruk, tetapi karena HTML awal hanya berisi root kosong lalu isi muncul setelah JavaScript, API, dan hydration selesai. Google dapat memproses JavaScript jika tidak diblokir, tetapi alur JavaScript SEO tetap lebih kompleks. Bot lain dapat memiliki kemampuan, waktu tunggu, atau kebijakan yang berbeda. Static Site Generation (SSG) dan Server-Side Rendering (SSR) mengurangi ketergantungan itu dengan mengirim judul, paragraf, link, dan schema pada HTML awal.
<main>
<article>
<h1>Cara deploy API Go</h1>
<p>Panduan ini menjelaskan deploy API Go ke VPS dengan HTTPS.</p>
<h2>Prasyarat</h2>
<ul><li>Server Linux</li><li>Nama host publik</li></ul>
</article>
</main>
Gunakan satu h1, heading berurutan, main, article, tabel data yang benar, teks alternatif gambar yang deskriptif, dan tautan dengan tujuan jelas. Hosting statis seperti GitHub Pages, Vercel, atau Cloudflare Pages cocok untuk pola ini. Hubungkan proyek ke alamat yang mudah dibaca melalui CNAME dari AICLUB.AI.ID; platform AICLUB saat ini menyediakan 13 pilihan subdomain tematik, termasuk .aiclub.ai.id, .std.ai.id, .is-a.cv, .promptku.web.id, .dataset.web.id, dan .kripto.web.id. Pilih ekstensi sesuai proyek, lalu tetap utamakan konten dan operasi situs yang rapi.
Dengan fondasi ini, Anda tidak sedang “memaksa” model mengutip situs. Anda membuat situs lebih mudah ditemukan, dibaca, dan dievaluasi. Lihat pilihan ekstensi di katalog domain AICLUB, gunakan Badge Builder AICLUB untuk memasang badge proyek dan memperoleh tambahan slot bila memenuhi syarat, lalu bagikan eksperimen Anda di komunitas Telegram AICLUB.
FAQ seputar settingan website untuk SEO dan GEO
Apa bedanya file robots.txt, sitemap.xml, dan llms.txt?
robots.txt memberi arahan perayapan untuk user-agent tertentu. sitemap.xml mendaftarkan URL kanonis yang ingin ditemukan mesin pencari. llms.txt adalah ringkasan Markdown opsional; ia bukan standar pengindeksan Google dan tidak menggantikan sitemap, canonical, atau konten halaman.
Apakah memblokir GPTBot membuat website hilang dari pencarian ChatGPT?
Tidak selalu. OpenAI memisahkan GPTBot untuk konten yang dapat digunakan melatih model fondasi dari OAI-SearchBot untuk hasil pencarian ChatGPT. Jika ingin tetap memenuhi syarat untuk Search, evaluasi izin OAI-SearchBot secara terpisah dan periksa kebijakan terbaru OpenAI.
Apakah website statis dengan subdomain gratis bisa masuk Google atau dikutip AI?
Bisa memenuhi syarat untuk dirayapi dan diindeks jika memenuhi persyaratan teknis, menyediakan konten bermanfaat, dan tidak terhalang akses. Subdomain atau hosting statis bukan jaminan peringkat maupun kutipan AI. Kualitas, relevansi, dan keteraksesan halaman tetap menentukan hasil.
Bagaimana memasang /llms.txt di GitHub Pages, Vercel, atau Cloudflare Pages?
Letakkan berkas teks itu di root artefak publik: root output GitHub Pages, folder public pada Vercel atau framework Anda, atau direktori publish Cloudflare Pages. Deploy, lalu buka URL domain final /llms.txt. Pastikan berkas dapat dibaca publik dan selalu sinkron dengan halaman kanonis.
Rujukan teknis
- OpenAI: Overview of OpenAI Crawlers
- Google Search Central: Optimizing for generative AI features
- Google Search Central: Structured data and JSON-LD
- Google Search Central: JavaScript SEO basics
Sudah rapi di dalam website?
Settingan kode sudah beres. Tahap berikutnya adalah memastikan firewall atau challenge tidak menghalangi crawler yang Anda izinkan.
Lanjutkan ke Bagian 2: cara menahan scraper yang merugikan tanpa salah memblokir crawler pencarian yang memang Anda izinkan.