Cấu trúc URL: có dấu hay không dấu, sâu mấy tầng, và khi nào không nên đổi
URL tốt là URL ngắn, đọc được, ổn định: chữ thường không dấu, gạch ngang giữa các từ, ít tầng thư mục. Nhưng URL chỉ là tín hiệu nhỏ; giữ nguyên một URL đang có thứ hạng quan trọng hơn nhiều so với đổi sang URL “chuẩn” hơn.

Địa chỉ URL là thứ người tìm nhìn thấy trên kết quả (dưới dạng đường dẫn rút gọn), thứ người ta dán vào Zalo, thứ Google dùng để nhận diện từng trang. Một URL tốt giúp người đọc đoán được trang nói gì trước khi bấm và giúp bạn quản lý site dễ hơn. Nhưng cần nói ngay: URL là tín hiệu xếp hạng rất nhỏ. Google đã nói từ khoá trong URL có tác dụng không đáng kể sau khi trang đã được lập chỉ mục. Phần lớn lợi ích của URL đẹp nằm ở người đọc và ở việc quản trị, không nằm ở thứ hạng. Vì vậy quy tắc quan trọng nhất của bài này là ở cuối: đừng đổi URL đang chạy tốt chỉ để cho đẹp.
Có dấu hay không dấu
Câu hỏi muôn thuở của site tiếng Việt. URL có thể chứa ký tự tiếng Việt có dấu, trình duyệt hiện nó đẹp trên thanh địa chỉ, và Google hiểu được. Nhưng phía dưới, địa chỉ thật được mã hoá phần trăm:
Hiển thị: https://tenmien.vn/cách-chăm-lan-hồ-điệp
Thực tế: https://tenmien.vn/c%C3%A1ch-ch%C4%83m-lan-h%E1%BB%93-%C4%91i%E1%BB%87p
| Có dấu | Không dấu | |
|---|---|---|
| Đọc trên thanh địa chỉ | Đẹp, tự nhiên | Đọc được, quen mắt |
| Khi dán vào Zalo, Facebook, email | Thường hiện thành chuỗi %C3%A1... dài và khó đọc | Giữ nguyên |
| Rủi ro kỹ thuật | Hai cách mã hoá Unicode (dựng sẵn và tổ hợp) cho ra hai địa chỉ khác nhau cho cùng một chữ; một số plugin, máy chủ xử lý sai | Gần như không có |
| Tác dụng xếp hạng | Không đáng kể | Không đáng kể |
Vấn đề Unicode tổ hợp là bẫy thật: chữ “ệ” có thể được lưu là một ký tự hoặc là “e” cộng hai dấu. Gõ từ bàn phím điện thoại và từ máy tính có thể ra hai dạng. Hai dạng này mã hoá thành hai địa chỉ khác nhau, và một trong hai trả 404. Vì những lý do đó, không dấu là lựa chọn an toàn cho site tiếng Việt. Từ khoá có dấu trong tiêu đề và nội dung đã đủ để Google hiểu; xem thêm tiếng Việt có dấu, không dấu và SEO.
Các quy tắc viết URL đáng theo
- Chữ thường toàn bộ. Máy chủ Linux phân biệt
/Sofavà/sofa; hai địa chỉ thành hai trang, hoặc một trang 404. - Gạch ngang giữa các từ. Google coi gạch ngang là dấu tách từ; gạch dưới
_thì không chắc.cach-cham-lanchứ không phảicach_cham_lanhaycachchamlan. - Ngắn, bỏ từ thừa.
/cach-cham-lan-ho-diep-sau-tettốt hơn/huong-dan-chi-tiet-cach-cham-soc-lan-ho-diep-sau-tet-de-hoa-lau-tan-nhat. Bỏ “và”, “của”, “những”, “chi tiết”, “mới nhất”. - Không đưa năm vào URL bài cập nhật thường xuyên.
/bang-gia-may-loc-nuoc-2025sang năm 2026 phải đổi URL hoặc trông cũ. Để năm trong tiêu đề, không để trong URL. - Không đưa ngày tháng vào URL bài viết (
/2025/03/14/ten-bai) trừ site tin tức thật sự cần. Nó dài thêm và làm bài trông cũ. - Đuôi
.htmlkhông cần thiết nhưng cũng không hại. Site đang có thì giữ, đừng bỏ hàng loạt. - Tham số cho trạng thái, đường dẫn cho nội dung. Nội dung khác nhau thì đường dẫn khác nhau (
/sofa-go,/sofa-da); cách hiển thị khác nhau (sắp xếp, trang 2) thì dùng tham số. Xem bộ lọc và tham số.
Độ sâu thư mục: phẳng hay phân tầng
Có hai trường phái:
| Kiểu | Ví dụ | Ưu | Nhược |
|---|---|---|---|
| Phẳng | /sofa-go-soi-3-cho | Ngắn, đổi danh mục không phải đổi URL | Không nhìn URL biết thuộc nhóm nào; khó lọc báo cáo theo thư mục |
| Phân tầng | /phong-khach/sofa/sofa-go-soi-3-cho | Rõ cấu trúc, lọc báo cáo Search Console theo thư mục dễ | Dài; sản phẩm đổi danh mục là đổi URL; sản phẩm thuộc hai danh mục sinh hai URL |
Lời khuyên thực tế: bài viết và sản phẩm dùng đường dẫn phẳng hoặc một tầng (/bai/ten-bai, /san-pham/ten-san-pham), danh mục dùng phân tầng nếu thật sự có cấp. Tiền tố một tầng như /bai/ hay /san-pham/ vẫn cho phép lọc theo loại trang trong báo cáo mà không làm URL phụ thuộc danh mục.
Độ sâu URL (số dấu gạch chéo) không phải là độ sâu thu thập. Thứ quan trọng với Google là số lần bấm từ trang chủ để tới trang, quyết định bởi liên kết nội bộ, không phải bởi URL dài hay ngắn.
Lỗi URL hay gặp ở site Việt
- Slug tự sinh từ tiêu đề bài dài 20 chữ rồi để nguyên. Sửa slug trước khi đăng, sau khi đăng thì để yên.
- Slug sinh sai khi bỏ dấu: “đ” thành “d” đúng, nhưng có công cụ bỏ luôn ra “cach-cham-lan-ho-iep”. Kiểm tra hàm bỏ dấu với chữ đ, Đ.
- Trùng slug thêm hậu tố số:
/sofa-go-2,/sofa-go-3. Dấu hiệu nội dung trùng hoặc bài đăng lại. - Tham số theo dõi trong liên kết nội bộ: menu trỏ
/sofa?ref=menu. Mỗi tham số tạo thêm một biến thể địa chỉ. Theo dõi bằng sự kiện trong GA4, không bằng tham số trong liên kết nội bộ. - ID phiên trong URL (
?sid=abc123) ở nền tảng cũ: mỗi lượt Googlebot ghé lại sinh địa chỉ mới, bẫy thu thập vô tận. - Dấu gạch chéo cuối lúc có lúc không:
/sofavà/sofa/cùng trả 200. Chọn một, chuyển hướng cái kia, và để canonical trỏ đúng. Chi tiết ở thẻ canonical.

URL cho ảnh, tệp và bản ngôn ngữ khác
Quy tắc chữ thường, không dấu, gạch ngang áp dụng cho cả tên tệp ảnh và tệp tải về, vì chúng cũng là địa chỉ được lập chỉ mục. Tên tệp ảnh là một tín hiệu nhỏ cho Google Hình ảnh; sofa-go-soi-3-cho-mau-oc-cho.webp nói được nhiều hơn IMG_20250314_093512.jpg hay anh-1.jpg. Đổi tên tệp trước khi tải lên là việc mất vài giây; đổi sau khi đã lên thì phải sửa mọi chỗ dùng ảnh. Nếu ảnh có thể được cập nhật mà muốn mạng xã hội và CDN lấy bản mới, thêm dấu thời gian vào tên tệp thay vì dùng tham số ?v=: Facebook và Zalo ghi nhớ ảnh xem trước theo địa chỉ, nhiều khi bỏ qua tham số.
Với site nhiều ngôn ngữ, cách rõ ràng nhất là thư mục theo mã ngôn ngữ: /en/, /ja/, bản tiếng Việt ở gốc hoặc ở /vi/. Slug của bản tiếng Anh nên là tiếng Anh (/en/oak-sofa), không giữ slug tiếng Việt. Tránh chọn ngôn ngữ bằng tham số (?lang=en) hoặc bằng cookie: Google thu thập không mang cookie, nên chỉ thấy một ngôn ngữ. Chi tiết khai báo các bản ngôn ngữ ở hreflang.
Khi nào nên đổi URL, khi nào không
Đổi URL nghĩa là chuyển hướng 301 từ cũ sang mới. Google chuyển phần lớn tín hiệu qua 301, nhưng quá trình mất thời gian, thứ hạng thường dao động vài tuần, và mọi liên kết ngoài, mọi lượt chia sẻ cũ phải đi qua chuyển hướng mãi mãi.
| Lý do muốn đổi | Có nên đổi |
|---|---|
| URL có dấu gây lỗi 404 thật vì Unicode tổ hợp | Có, có lý do kỹ thuật |
| URL chứa năm cũ, nội dung đã cập nhật cho năm mới | Cân nhắc; nếu trang có nhiều liên kết ngoài thì giữ, sửa tiêu đề |
| Chuyển nền tảng bắt buộc đổi cấu trúc | Bắt buộc; làm theo kế hoạch ở chuyển tên miền, đổi nền tảng |
| URL dài, xấu nhưng trang đang đứng tốt | Không |
| Muốn nhét thêm từ khoá vào URL | Không, tác dụng gần như bằng không |
| Muốn đổi từ phẳng sang phân tầng “cho chuyên nghiệp” | Không |
Checklist URL
- Chữ thường, không dấu, gạch ngang giữa từ.
- Ngắn, bỏ từ thừa, không năm, không ngày.
- Tiền tố một tầng cho loại trang (
/bai/,/san-pham/). - Một kiểu dấu gạch chéo cuối, kiểu kia chuyển hướng; kiểm chuyển hướng và canonical bằng chấm điểm SEO.
- Không tham số theo dõi, ID phiên trong liên kết nội bộ.
- Hàm tạo slug xử lý đúng chữ đ, Đ.
- Sửa slug trước khi đăng; sau khi đăng chỉ đổi khi có lý do kỹ thuật.
- Đổi thì 301 một bước, cập nhật liên kết nội bộ, sitemap, canonical.
Hỏi đáp
URL có dấu tiếng Việt có tốt cho SEO hơn không?
Không đáng kể. Google hiểu cả hai dạng. URL không dấu an toàn hơn về kỹ thuật và khi chia sẻ qua Zalo, Facebook, email, nên là lựa chọn mặc định.
Có nên đưa từ khoá vào URL?
Nên dùng vài từ mô tả nội dung trang để người đọc hiểu, nhưng tác dụng xếp hạng rất nhỏ. Đừng nhồi từ khoá và đừng đổi URL đang chạy chỉ để thêm từ khoá.
URL dài có bị phạt không?
Không có giới hạn độ dài gây phạt. URL quá dài chỉ bất tiện khi đọc và chia sẻ, và thường là dấu hiệu slug tự sinh từ tiêu đề chưa được sửa.
Đổi URL thì mất thứ hạng bao lâu?
Với chuyển hướng 301 đúng một bước, thứ hạng thường dao động vài tuần rồi ổn định. Đổi hàng loạt cùng lúc kéo dài thời gian này và tăng rủi ro.
Đọc tiếp

Đổi tên miền, đổi nền tảng mà không mất thứ hạng: kế hoạch chuyển site từng bước
Chuyển site an toàn khi mọi địa chỉ cũ có một đích mới tương ứng bằng 301 một bước, nội dung và thẻ giữ nguyên, và bạn theo dõi sát vài tuầ…

Tiếng Việt và SEO: có dấu, không dấu, viết tắt, từ vùng miền và cách Google hiểu từng biến thể
Google hiểu khá tốt câu tìm không dấu, viết tắt và biến thể vùng miền, nên không cần nhồi bản không dấu hay viết sai chính tả vào bài. Việc…

Thẻ canonical: viết đúng, các lỗi hay gặp và lúc Google bỏ qua nó
Thẻ canonical cho Google biết đâu là địa chỉ chính khi một nội dung có nhiều địa chỉ. Viết đúng là địa chỉ tuyệt đối, https, đúng tên miền…

Bộ lọc sản phẩm (faceted navigation): bẫy thu thập vô tận và cách chọn tổ hợp nào đáng có địa chỉ riêng
Mỗi bộ lọc nhân số địa chỉ lên nhiều lần; vài bộ lọc kết hợp là đủ tạo hàng triệu trang gần trùng mà Googlebot có thể đi mãi. Chỉ vài tổ hợ…