JavaScript SEO
JavaScript SEO là phần việc của SEO kỹ thuật (technical SEO) bảo đảm Google và bot AI đọc được nội dung trên website dùng JavaScript. Mấu chốt: chữ, link và thông tin sản phẩm phải có sẵn trong HTML máy chủ trả về, không đợi trình duyệt chạy JavaScript mới hiện.
JavaScript SEO là gì: ba cách render trang
Cách website render (dựng trang) quyết định bot nhận được gì ở lần tải đầu.
| Cách render | HTML ban đầu có nội dung? | Thường gặp ở |
|---|---|---|
| Client-side rendering (CSR, dựng ở trình duyệt) | Thường chỉ có khung trống | App React, Vue dạng single-page |
| Server-side rendering (SSR, dựng ở máy chủ) | Có | WordPress, theme Shopify, Next.js, Nuxt |
| Static rendering (dựng sẵn lúc build) | Có | Blog, landing page ít đổi |
Với CSR, nguồn trang thường chỉ có như sau, còn tên sản phẩm, giá, mô tả do main.js chèn vào sau:
<body>
<div id="root"></div>
<script src="/static/js/main.js"></script>
</body>
Google xử lý trang JavaScript thế nào
Google đi qua ba bước: crawl (thu thập), render và index (lập chỉ mục). Trang trả mã 200 được đưa vào hàng đợi render; khi có tài nguyên, một trình duyệt Chromium không giao diện chạy JavaScript và Google lập chỉ mục HTML đã render. Google vẫn khuyên server-side rendering hoặc pre-rendering vì trang nhanh hơn và không phải bot nào cũng chạy JavaScript (Google Search Central, Understand JavaScript SEO basics, truy cập 11/2026). Googlebot crawl bằng bản điện thoại, nên nội dung phải đủ ở bản di động (xem mobile-first indexing).
JavaScript SEO với AI Search
Theo phân tích của Vercel và MERJ, các crawler AI lớn như GPTBot (OpenAI), ClaudeBot (Anthropic) và PerplexityBot không render JavaScript ở thời điểm phân tích. Chúng chỉ đọc HTML tải về. Gemini dùng hạ tầng Googlebot nên render được (Vercel, The rise of the AI crawler, 12/2024, truy cập 11/2026). Bot có thể thay đổi, nhưng HTML có sẵn nội dung thì bot nào cũng đọc được.
Ví dụ giả định: trang danh mục 40 sản phẩm, mỗi sản phẩm khoảng 30 chữ, tổng 1,200 chữ. Danh sách chỉ hiện sau khi JavaScript gọi API. Bot không chạy JavaScript chỉ thấy menu và chân trang, khoảng 60 chữ, tức 5% nội dung. ChatGPT không có dữ liệu sản phẩm nào từ trang này để trích.
Công cụ Kiểm tra AIO của Adtek cũng đọc HTML mà không chạy JavaScript. Mục “Nội dung có sẵn khi chưa chạy JavaScript” (2 điểm) báo chưa đạt khi HTML dài hơn 5,000 ký tự nhưng phần chữ đọc được, sau khi bỏ script và style, dưới 80 từ.
Cách sửa khi công cụ báo nội dung cần JavaScript
- Tìm phần nằm trong JavaScript. Trong Chrome, bấm Ctrl+U xem nguồn trang, tìm một câu của nội dung chính. Rồi bấm chuột phải, chọn Inspect (Kiểm tra), tìm lại câu đó. Câu có trong Inspect mà không có trong nguồn trang là do JavaScript chèn.
- WordPress. Bài viết và trang do máy chủ dựng, page builder phần lớn cũng xuất ra HTML. Chỗ hay lỗi là slider, tab, bộ lọc hay khối “sản phẩm liên quan” tải bằng AJAX. Mô tả dịch vụ, bảng giá, FAQ nên đặt trong khối văn bản thường.
- Shopify. Shopify khuyên dựng nội dung ban đầu bằng Liquid và HTML. Khối đánh giá từ app hay tìm kiếm bên thứ ba có thể vẫn do JavaScript tải, nên soát lại bằng bước 1 (Shopify Dev, Render essential content in Liquid and HTML, truy cập 11/2026).
- Web tự code. Chuyển trang cần SEO sang framework có SSR hoặc static rendering. Trong Next.js App Router, layout và page mặc định là Server Component; chỉ thêm
'use client'cho phần tương tác (Next.js Docs, Server and Client Components, truy cập 11/2026). Nuxt mặc định dùng universal rendering; đừng đặtssr: falsecho trang nội dung, trang ít đổi thì prerender (Nuxt Docs, Rendering Modes, truy cập 11/2026):export default defineNuxtConfig({ routeRules: { '/gioi-thieu': { prerender: true } } }) - Chưa sửa code được. Dịch vụ prerender trả HTML dựng sẵn cho bot là dynamic rendering. Google gọi đây là giải pháp tạm, không khuyến nghị lâu dài (Google Search Central, Dynamic rendering as a workaround, truy cập 11/2026), nên chỉ dùng làm bước đệm.
- Kiểm tra lại. Trong Google Search Console, dán URL vào URL Inspection, bấm View crawled page để xem HTML Google lấy được, hoặc Test live URL, View tested page, tab Screenshot để xem ảnh trang (Search Console Help, URL Inspection tool, truy cập 11/2026). Sau đó chạy lại công cụ Kiểm tra AIO.
Câu hỏi thường gặp
Google render được JavaScript thì có cần SSR không?
Nên có. Trang JavaScript phải qua hàng đợi render, và Google vẫn khuyên server-side rendering. Bot AI không chạy JavaScript chỉ thấy HTML ban đầu.
Đạt mục này có giúp xuất hiện trên AI Overviews không?
Không có bảo đảm. Nội dung trong HTML chỉ là điều kiện để bot đọc được trang. Được AI Overviews hay ChatGPT trích dẫn còn tùy chất lượng nội dung, xem bài AIO là gì.
Cần rà cách render cho Google và AI Search, xem dịch vụ SEO và AI Search của Adtek.
