International SEO

hreflang loop

Lỗi khi các trang trong nhóm hreflang không trỏ ngược lại đầy đủ, gây ra việc Google bỏ qua toàn bộ nhóm.

5 lượt xem Cập nhật: 30/05/2026

hreflang loop là gì?

hreflang loop (vòng lặp hreflang) là lỗi kỹ thuật xảy ra khi các trang trong cùng một nhóm hreflang không trỏ ngược lại nhau một cách đầy đủ và nhất quán. Nói cách khác: nếu trang A khai báo trang B là phiên bản ngôn ngữ/khu vực tương ứng, thì trang B bắt buộc phải khai báo lại trang A — và điều này phải đúng với tất cả các trang trong nhóm. Khi thiếu hoặc sai một liên kết ngược, Google có thể coi toàn bộ nhóm hreflang là không hợp lệ và bỏ qua hoàn toàn việc xử lý chúng.

Tại sao quan trọng trong SEO?

hreflang là thẻ HTML hoặc header HTTP giúp Google hiểu mối quan hệ giữa các phiên bản ngôn ngữ và khu vực của cùng một nội dung. Khi hreflang loop xuất hiện, Google không thể xác minh tính toàn vẹn của nhóm — dẫn đến:

  • Mất khả năng phân phối đúng người dùng tới phiên bản phù hợp (ví dụ: người Việt ở Đức vẫn thấy trang tiếng Anh Mỹ thay vì tiếng Đức);
  • Nguy cơ trùng lặp nội dung quốc tế (duplicate content) do nhiều phiên bản cùng cạnh tranh trên cùng từ khóa;
  • Giảm hiệu quả phân bổ link equity giữa các phiên bản;
  • Không hiển thị thẻ hreflang trong công cụ International Targeting của Google Search Console.

Đây không phải cảnh báo — mà là nguyên nhân khiến toàn bộ chiến lược International SEO thất bại âm thầm.

Cách hoạt động

Google kiểm tra hreflang theo nguyên tắc tính đối xứng: mỗi cặp trang trong nhóm phải có liên kết hreflang hai chiều. Ví dụ: nếu bạn có 3 phiên bản — tiếng Việt (VN), tiếng Anh (US), tiếng Anh (UK) — thì mỗi trang phải chứa 3 thẻ hreflang, bao gồm chính nó và hai phiên bản còn lại. Google không yêu cầu thứ tự, nhưng bắt buộc tất cả phải xuất hiện và khớp chính xác về giá trị hreflanghref.

Quá trình kiểm tra diễn ra khi thu thập dữ liệu (crawling). Nếu phát hiện thiếu liên kết ngược ở bất kỳ trang nào trong nhóm, Google sẽ loại bỏ toàn bộ nhóm khỏi hệ thống định tuyến quốc tế — chứ không chỉ bỏ riêng trang lỗi.

Hướng dẫn thực hiện

  1. Xác định đầy đủ nhóm hreflang: liệt kê tất cả phiên bản ngôn ngữ + khu vực cần liên kết (ví dụ: vi-vn, en-us, en-gb, fr-fr…). Dùng chuẩn IETF (không dùng vn, us đơn thuần).
  2. Tạo bảng kiểm tra chéo: mỗi hàng là một URL, mỗi cột là một giá trị hreflang. Đảm bảo mọi ô đều được điền URL đúng — không để trống, không ghi “—” hay “không áp dụng”.
  3. Triển khai đồng bộ: đặt thẻ hreflang trong phần <head> của từng trang, hoặc gửi qua HTTP header (chỉ áp dụng cho tài liệu không phải HTML như PDF). Không trộn hai phương thức trên cùng một URL.
  4. Kiểm tra tính đối xứng: dùng công cụ như Screaming Frog SEO Spider (chế độ “hreflang”), Ahrefs Site Audit, hoặc hreflang.ninja. Nhập danh sách URL → kiểm tra “Is reciprocal?” cho từng cặp.
  5. Xác minh trong Google Search Console: vào International Targeting > Language. Nếu thấy thông báo “No hreflang annotations detected”, rất có thể hreflang loop đã vô hiệu hóa toàn bộ nhóm.

Lỗi thường gặp

1. Thiếu thẻ hreflang trỏ về chính trang (self-reference)

Mỗi trang phải khai báo chính nó (ví dụ: <link rel="alternate" hreflang="vi-vn" href="https://example.com/vi/">). Nếu thiếu, Google không nhận diện được phiên bản gốc — gây mất cân bằng nhóm.

2. Giá trị hreflang không khớp giữa các trang

Ví dụ: trang tiếng Anh Mỹ dùng en-us, nhưng trang tiếng Việt lại ghi en_US (dấu gạch dưới) hoặc en (thiếu khu vực). Đây là lỗi cú pháp — Google bỏ qua ngay lập tức.

3. URL trong href không tồn tại hoặc trả mã 404/410

Nếu một thẻ hreflang trỏ tới URL bị lỗi, Google coi đó là liên kết hỏng — và làm đứt chuỗi đối xứng. Cần kiểm tra trạng thái HTTP của tất cả URL được khai báo.

4. Dùng hreflang trên trang không có phiên bản tương đương

Ví dụ: trang blog tiếng Việt có hreflang trỏ tới phiên bản tiếng Pháp, nhưng trang tiếng Pháp lại không tồn tại — hoặc không khai báo ngược lại. Đây là vòng lặp “hở”, vi phạm nguyên tắc đầy đủ.

Ví dụ thực tế

Một trang thương mại điện tử có 3 phiên bản:

  • https://shop.com/vi/ → tiếng Việt (VN)
  • https://shop.com/en-us/ → tiếng Anh (Mỹ)
  • https://shop.com/en-gb/ → tiếng Anh (Anh)

Lỗi hreflang loop xảy ra khi:

URL hreflang khai báo Thiếu / sai ở đâu?
https://shop.com/vi/ vi-vn, en-us, en-gb ✓ Đầy đủ
https://shop.com/en-us/ en-us, vi-vn ❌ Thiếu en-gb → đứt vòng lặp
https://shop.com/en-gb/ en-gb, vi-vn ❌ Thiếu en-us → đứt vòng lặp

Kết quả: Google bỏ qua toàn bộ nhóm hreflang — dù chỉ 2 trang sai. Sửa đúng: mỗi trang phải khai báo đủ 3 giá trị.

Câu hỏi thường gặp

hreflang loop có ảnh hưởng đến xếp hạng không?

Có — gián tiếp. Khi hreflang bị bỏ qua, Google không biết nên ưu tiên phiên bản nào cho người dùng đa ngôn ngữ. Hệ quả: tăng tỷ lệ thoát, giảm thời gian ở trang, và giảm khả năng chuyển đổi — từ đó làm suy yếu tín hiệu chất lượng tổng thể.

Một trang có thể thuộc nhiều nhóm hreflang khác nhau không?

Không. Mỗi URL chỉ nên xuất hiện trong một nhóm hreflang duy nhất. Việc đưa cùng một trang vào nhiều nhóm (ví dụ: vừa trong nhóm “VN/US/GB”, vừa trong nhóm “VN/TH/MY”) gây xung đột và thường dẫn đến hreflang loop hoặc cảnh báo “conflicting annotations” trong Search Console.

Có cần dùng hreflang cho trang không có nội dung tương đương?

Không. hreflang chỉ áp dụng khi các trang có nội dung tương đương về chủ đề và mục đích, dù khác ngôn ngữ hoặc điều chỉnh khu vực. Nếu trang tiếng Anh Mỹ bán sản phẩm A, còn trang tiếng Việt bán sản phẩm B — không được dùng hreflang. Việc ép dùng sẽ gây nhiễu thuật toán và có thể bị coi là spam.