Alt ảnh và SEO hình ảnh: viết cho người không nhìn thấy, không phải để nhồi từ khoá
Alt mô tả điều ảnh truyền đạt trong ngữ cảnh trang, bằng một câu ngắn tự nhiên; ảnh trang trí để alt rỗng chứ không bỏ thuộc tính. Ngoài alt, ảnh nội dung phải là thẻ img thật, nằm gần chữ liên quan, khai kích thước và tải lười bằng loading="lazy". Trang cần thẻ viewport để hiển thị đúng trên điện thoại.
Thuộc tính alt là đoạn chữ thay cho ảnh khi ảnh không hiện, và là thứ trình đọc màn hình đọc lên cho người khiếm thị. Google cũng dùng nó, cùng với chữ quanh ảnh và tên tệp, để hiểu ảnh nói về gì. Viết alt đúng là mô tả điều ảnh truyền đạt trong ngữ cảnh của trang, bằng một câu ngắn tự nhiên. Ảnh chỉ để trang trí thì để alt="" (rỗng), không bỏ hẳn thuộc tính. Nhồi từ khoá vào alt không giúp gì, chỉ làm khổ người nghe trình đọc màn hình.
Alt viết cho ai
Hãy hình dung đọc trang qua điện thoại cho một người không nhìn thấy. Tới chỗ có ảnh, bạn nói gì để họ không bỏ lỡ thông tin? Câu đó chính là alt. Cách nghĩ này tự động loại bỏ hai lỗi phổ biến nhất: alt trống rỗng kiểu “ảnh 1”, và alt nhồi kiểu “máy lọc nước giá rẻ máy lọc nước RO uy tín”.
Google nói rõ trong hướng dẫn về hình ảnh: alt nên mô tả, giàu thông tin, dùng từ khoá phù hợp ngữ cảnh, và tránh nhồi từ khoá vì có thể bị coi là spam. Ngữ cảnh quan trọng: cùng một tấm ảnh bình lọc nước, trong bài so sánh lõi lọc thì alt nói về lõi; trong trang sản phẩm thì alt nói tên mẫu và màu.
| Ảnh | Alt kém | Alt tốt |
|---|---|---|
| Ảnh chụp màn hình báo cáo Search Console | search console | Báo cáo Trang trong Search Console: 412 trang đã lập chỉ mục, 1.305 trang chưa |
| Ảnh sản phẩm | IMG_2041 | Máy lọc nước RO K-90 màu trắng, mặt trước có màn hình báo chất lượng nước |
| Biểu đồ trong bài | biểu đồ | Lượt bấm giảm từ 15% xuống 8% khi có AI Overview, kèm số liệu viết lại trong thân bài |
| Đường kẻ, hoa văn, biểu tượng trang trí | bỏ thiếu alt | alt="" |
| Logo dẫn về trang chủ | logo | Tên thương hiệu — về trang chủ |
Với biểu đồ, bảng số liệu dạng ảnh: alt chỉ nên tóm ý chính. Số liệu chi tiết phải có trong chữ của trang, vì alt dài vài trăm chữ thì không ai nghe nổi, và chữ nằm trong ảnh thì máy tìm kiếm đọc kém hơn hẳn chữ thật.
Alt rỗng khác thiếu alt
Đây là chi tiết hay bị nhầm. <img src="hoa-van.svg" alt=""> nói với trình đọc màn hình: bỏ qua ảnh này, nó chỉ để trang trí. Còn <img src="hoa-van.svg"> không có thuộc tính alt thì nhiều trình đọc màn hình sẽ đọc lên tên tệp, kiểu “hoa gạch ngang văn chấm s v g”. Vì vậy công cụ chấm điểm SEO Gốc chỉ đếm ảnh không có thuộc tính alt, còn alt rỗng được coi là hợp lệ.
Ngưỡng của công cụ: quá 10% ảnh trang chủ thiếu alt thì cảnh báo, quá 30% thì mất trọn 3 điểm của mục này. Đây là ngưỡng của SEO Gốc để phân biệt “sót vài ảnh” với “mẫu giao diện không bao giờ in alt”, không phải con số Google công bố.
SEO hình ảnh: những thứ ngoài alt
Muốn ảnh xuất hiện trên Google Hình ảnh và trong kết quả tìm kiếm thường, alt chỉ là một phần. Các việc theo đúng hướng dẫn của Google:
- Dùng thẻ
<img>thật. Google không lập chỉ mục ảnh đặt bằngbackground-imagetrong CSS. Ảnh nội dung (sản phẩm, minh hoạ) phải là thẻ ảnh; ảnh nền trang trí thì để CSS là đúng. - Đặt ảnh gần chữ liên quan. Chú thích ngay dưới ảnh và đoạn văn quanh ảnh giúp Google hiểu ảnh hơn bất cứ thẻ nào.
- Tên tệp có nghĩa.
may-loc-nuoc-ro-k90-mat-truoc.jpgcho Google một gợi ý nhỏ,IMG_2041.jpgthì không. Đây là tín hiệu yếu, đừng đổi tên hàng loạt ảnh cũ chỉ vì nó (đổi tên là đổi đường dẫn, ảnh cũ trong chỉ mục mất). - Định dạng Google đọc được: BMP, GIF, JPEG, PNG, WebP, SVG, AVIF. WebP và AVIF nhẹ hơn JPEG đáng kể ở cùng chất lượng.
- Khai kích thước
widthvàheighttrên thẻ ảnh để trình duyệt giữ chỗ trước, trang không bị nhảy khi ảnh tải xong. Đây là một phần của chỉ số ổn định bố cục (CLS) trong Core Web Vitals. - Tải lười đúng cách.
loading="lazy"có sẵn trong trình duyệt là an toàn. Thư viện tự viết chỉ nạp ảnh khi bắt được sự kiện cuộn thì nguy hiểm: Googlebot không cuộn trang như người, ảnh có thể không bao giờ được nạp. Đừng tải lười ảnh đầu trang, nó làm chậm phần nội dung lớn nhất (LCP). - Không chặn thư mục ảnh trong robots.txt. Chặn thì Google không tải được ảnh, kể cả ảnh chia sẻ.
<figure>
<img src="/anh/may-loc-nuoc-ro-k90-mat-truoc.webp"
alt="Máy lọc nước RO K-90 màu trắng, màn hình báo chất lượng nước ở mặt trước"
width="800" height="600" loading="lazy">
<figcaption>Mẫu K-90 bản 2026: màn hình TDS đặt ngang tầm mắt.</figcaption>
</figure>
Sitemap hình ảnh: khi nào cần
Google tìm ảnh chủ yếu qua thẻ <img> trên các trang nó đã thu thập. Phần lớn site không cần thêm gì. Sitemap hình ảnh chỉ đáng làm khi ảnh được nạp theo cách Google khó thấy (ảnh trong thư viện nạp bằng JavaScript, ảnh nằm trên máy chủ ảnh riêng), hoặc khi ảnh chính là sản phẩm của bạn: site ảnh, cửa hàng có ảnh tự chụp. Ảnh được khai bằng phần mở rộng image ngay trong sitemap XML sẵn có, mỗi trang liệt kê các ảnh của nó:
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
<url>
<loc>https://vidu.vn/may-loc-nuoc-ro-k90</loc>
<image:image>
<image:loc>https://vidu.vn/anh/may-loc-nuoc-ro-k90-mat-truoc.webp</image:loc>
</image:image>
</url>
</urlset>
Ảnh trên tên miền khác (máy chủ ảnh, CDN) vẫn khai được, miễn là tên miền đó không chặn Google trong robots.txt. Một điểm người làm nghề hay quên: ảnh tự chụp, ảnh gốc có giá trị trên Google Hình ảnh hơn hẳn ảnh kho dùng chung với hàng trăm site khác, vì Google gộp các bản giống nhau và chỉ hiện một.
Meta viewport: thẻ nhỏ, hậu quả lớn
Thẻ này không liên quan ảnh nhưng cùng nhóm “trang hiển thị đúng trên điện thoại”, nên công cụ chấm chung trong nhóm này. Google lập chỉ mục theo phiên bản di động của trang. Thiếu thẻ viewport, trình duyệt điện thoại hiển thị trang như màn hình máy tính rồi thu nhỏ lại, chữ li ti, nút bé tí. Một dòng là đủ:
<meta name="viewport" content="width=device-width, initial-scale=1">
Đừng thêm maximum-scale=1 hay user-scalable=no để cấm phóng to: người mắt kém mất khả năng đọc, và một số trình duyệt bỏ qua lệnh đó.
Lỗi hay gặp
- Mẫu giao diện không in alt dù người viết đã điền trong thư viện ảnh. Hay gặp ở khối ảnh nổi bật, lưới sản phẩm, thanh trượt trang chủ. Kiểm mã nguồn trang, không tin giao diện quản trị.
- Alt lặp nguyên tiêu đề bài cho mọi ảnh trong bài. Mười ảnh, mười alt giống nhau, không ảnh nào được mô tả.
- Chữ quan trọng nằm trong ảnh: bảng giá, khuyến mãi, thông số làm thành ảnh. Người tìm không tìm ra, trình đọc màn hình không đọc được, chỉnh giá phải làm lại ảnh.
- Ảnh dung lượng vài MB tải thẳng từ máy ảnh, hiển thị ở khung 400 điểm ảnh. Nén và cắt đúng cỡ trước khi đưa lên, hoặc dùng
srcsetđể trình duyệt chọn bản vừa màn hình. - Thêm từ khoá vào alt của logo, biểu tượng để “tăng mật độ”. Không có tác dụng và đi ngược hướng dẫn của Google.
Việc không cần làm: điền thuộc tính title cho ảnh (không thay được alt), viết alt cho ảnh trang trí, đổi tên hàng nghìn ảnh cũ đã có trong chỉ mục.
Kiểm bằng SEO Gốc
Chấm điểm trang chủ của bạn: công cụ đếm tổng số ảnh trong thân trang, số ảnh thiếu thuộc tính alt và số ảnh có alt rỗng, đồng thời kiểm thẻ viewport. Hai mục chiếm 3 + 3 điểm trong thang 100. Ảnh chia sẻ mạng xã hội là chuyện riêng, đọc bài Open Graph.
Hỏi đáp
Alt ảnh nên dài bao nhiêu?
Không có con số chuẩn. Một câu ngắn đủ mô tả điều ảnh truyền đạt là vừa. Ảnh có nhiều số liệu như biểu đồ thì alt tóm ý chính, còn số liệu chi tiết viết trong thân bài.
Ảnh trang trí có cần alt không?
Cần thuộc tính alt nhưng để rỗng: alt="". Như vậy trình đọc màn hình bỏ qua ảnh. Bỏ hẳn thuộc tính thì nhiều trình đọc màn hình sẽ đọc tên tệp lên.
Google có đọc ảnh đặt bằng CSS không?
Google không lập chỉ mục ảnh đặt bằng background-image trong CSS. Ảnh nội dung muốn lên Google Hình ảnh phải dùng thẻ img.
Tải lười ảnh có hại SEO không?
Dùng loading="lazy" có sẵn trong trình duyệt thì an toàn. Thư viện chỉ nạp ảnh khi bắt sự kiện cuộn có thể khiến Googlebot không thấy ảnh vì nó không cuộn trang như người. Không nên tải lười ảnh ở đầu trang.
Đọc tiếp
Open Graph: ảnh chia sẻ Facebook, Zalo hiện sai và cách sửa
Khung xem trước khi chia sẻ lên Facebook, Zalo được dựng từ thẻ Open Graph. Cần đủ og:title, og:description, og:image tuyệt đối 1200×630 tả…
TTFB và Core Web Vitals: con số nào ảnh hưởng thứ hạng, con số nào chỉ để báo cáo
Google dùng ba chỉ số Core Web Vitals đo trên người dùng thật (LCP ≤2,5s, INP ≤200ms, CLS ≤0,1 ở phân vị 75), không dùng điểm Lighthouse. T…
H1 và cấu trúc tiêu đề: một H1 có bắt buộc không
Một H1 cho mỗi trang là thói quen tốt, không phải luật: Google không phạt trang có nhiều H1. Thứ thật sự gây hại là thiếu tiêu đề chính hoặ…
robots.txt: chặn thu thập không phải chặn lập chỉ mục
robots.txt quyết định máy thu thập có được tải một đường dẫn hay không, không quyết định trang có nằm trong chỉ mục. Muốn gỡ trang khỏi Goo…