Ảnh thường là phần nặng nhất của một bài viết. Mấy tấm ảnh chụp màn hình gốc của chính bài này có tấm nặng tới 3,4 MB, nếu cứ thế tải lên thì người đọc trên điện thoại phải chờ khá lâu. Khi tối ưu hình ảnh, Hiếu quan tâm hai việc: giúp Google hiểu ảnh đang nói về cái gì, và giúp trang tải nhanh hơn. Bài viết này Hiếu tổng hợp lại các khuyến nghị chính thức của Google về SEO hình ảnh, kèm cách Lucid Gen đang làm trên WordPress để bạn tham khảo và làm theo.
Tối ưu hình ảnh chuẩn SEO giúp được gì?
Nói ngắn gọn, SEO hình ảnh là làm cho ảnh trong bài dễ được Google tìm thấy, hiểu đúng nội dung, và không làm chậm trang. Lợi ích thực tế mà bạn có thể kỳ vọng:
- Thêm một nguồn truy cập: Ảnh có thể xuất hiện trong Google Hình ảnh hoặc trong kết quả tìm kiếm có kèm hình. Với bài hướng dẫn có nhiều ảnh chụp màn hình, đây là nguồn traffic không nhỏ.
- Trang tải nhanh hơn: Ảnh đã resize và nén giúp giảm đáng kể dung lượng trang, người đọc dùng 4G cũng đỡ phải chờ.
- Dễ tiếp cận hơn: Alt text được trình đọc màn hình đọc to cho người khiếm thị, và hiện ra thay cho ảnh khi ảnh không tải được.
Lưu ý: Tối ưu ảnh không tự đưa bài viết lên top. Nội dung vẫn là thứ quyết định, ảnh chỉ giúp bài viết của bạn không bị thiệt vì những lỗi kỹ thuật dễ tránh.
Chọn ảnh liên quan đến nội dung
Google khuyến nghị dùng ảnh chất lượng cao, rõ nét và liên quan đến chủ đề của trang. Với blog hướng dẫn như Lucid Gen, ảnh chụp màn hình thao tác thật luôn hữu ích hơn ảnh minh họa chung chung, vì người đọc nhìn vào là biết phải nhấp vào đâu.
Khi cần ảnh minh họa, bạn có thể tìm ở các kho như Freepik, Unsplash, Pexels… Hãy đọc kỹ giấy phép của từng kho trước khi dùng. Ảnh miễn phí trên Freepik thường yêu cầu ghi nguồn tác giả, còn Unsplash và Pexels thì không bắt buộc.


Đặt tên file ảnh mô tả đúng nội dung
Google có dùng tên file như một tín hiệu để hiểu ảnh. Ví dụ trong tài liệu của Google: my-new-black-kitten.jpg tốt hơn hẳn IMG00023.JPG. Vì vậy trước khi tải lên, bạn hãy đổi tên file theo vài nguyên tắc sau:
- Mô tả đúng ảnh: Tên file nói ảnh chụp cái gì, ngắn gọn vài chữ là đủ. Không cần cố nhét từ khóa chính vào mọi tên file.
- Viết không dấu, ngăn cách bằng gạch ngang: Ví dụ
nen-anh-bang-squoosh.png. Nếu bạn để khoảng trắng thì WordPress cũng tự đổi thành gạch ngang khi tải lên. - Tránh ký tự đặc biệt: Các ký tự như !, @, #, % dễ làm URL ảnh bị mã hóa khó đọc.


Nhìn lại thì tên file của bài này vẫn còn khá chung chung (chỉ đánh số 1, 2, 3…). Nếu đặt lại, Hiếu sẽ đặt theo nội dung từng ảnh, kiểu tim-anh-tren-freepik.png hay nen-anh-bang-squoosh.png, như vậy vừa dễ quản lý vừa có ý nghĩa với Google.
Viết alt text mô tả đúng ảnh, không nhồi từ khóa
Alt text (văn bản thay thế) là đoạn chữ mô tả ảnh, nằm trong thuộc tính alt của thẻ img. Theo Google, alt text là thông tin quan trọng nhất để hiểu nội dung ảnh, cùng với ngữ cảnh xung quanh trên trang. Google đưa ra ví dụ khá dễ hiểu:
- Chưa tốt: Không có alt, ví dụ
<img src="puppy.jpg"/>. - Tốt hơn:
alt="puppy", có mô tả nhưng còn quá chung. - Tốt nhất:
alt="Dalmatian puppy playing fetch", nói rõ giống chó và đang làm gì. - Nên tránh: Alt nhồi một loạt từ khóa kiểu “chó, chó con, chó đốm, mua chó giá rẻ…”. Google nói rõ cách này gây trải nghiệm xấu và có thể bị xem là spam.
Trong trình soạn thảo WordPress, bạn chọn ảnh rồi điền vào ô Alt Text (Chữ thay thế) ở thanh bên phải. Ảnh chỉ để trang trí thì có thể để trống, WordPress cũng gợi ý như vậy ngay dưới ô nhập.


Bạn để ý alt trong ảnh chụp trên là “Tối ưu SEO cho hình ảnh”, đây chính là kiểu alt quá chung mà Hiếu khuyên bạn tránh. Một alt mô tả đúng cho tấm ảnh Squoosh trong đó sẽ là “Nén ảnh minh họa SEO từ 3,67 MB xuống 64 kB bằng Squoosh”. Mẹo nhỏ của Hiếu: hãy tưởng tượng bạn đang tả tấm ảnh cho người không nhìn thấy nó, câu bạn nói ra chính là alt text.
Chọn định dạng ảnh phù hợp
Google Search hỗ trợ lập chỉ mục các định dạng BMP, GIF, JPEG, PNG, WebP, SVG và AVIF. Hỗ trợ không có nghĩa là định dạng nào cũng nên dùng trên web, Hiếu chọn theo loại ảnh như sau:
- JPEG: Hợp với ảnh chụp nhiều màu, ảnh từ điện thoại hay máy ảnh.
- PNG: Hợp với ảnh chụp màn hình, đồ họa có chữ hoặc cần nền trong suốt. Chữ trong ảnh PNG giữ được độ nét, nhưng file thường nặng hơn JPEG.
- WebP và AVIF: Hai định dạng mới, cho dung lượng nhỏ hơn JPEG/PNG ở chất lượng tương đương. AVIF thường nhỏ hơn WebP thêm một chút. Các trình duyệt phổ biến hiện nay đều đã hỗ trợ cả hai (10/2026).
- SVG: Dùng cho logo và icon, phóng to bao nhiêu cũng không vỡ.
- GIF: Chỉ nên dùng cho ảnh động ngắn, vì file rất nặng. Ảnh động dài thì chuyển sang video sẽ nhẹ hơn nhiều.
BMP thì bạn bỏ qua luôn, file không nén nên rất nặng, không hợp để đưa lên web.
Resize và nén ảnh trước khi tải lên
Đây là bước giúp giảm dung lượng nhiều nhất. Bạn không cần ảnh rộng 3000px khi khung nội dung của blog chỉ hiển thị khoảng 1000px. Các ảnh trong bài này đều được Hiếu resize về chiều ngang 1000px trước khi tải lên.
Công cụ Hiếu dùng là Squoosh của Google, chạy ngay trên trình duyệt, không cần cài đặt. Trong ví dụ dưới đây, tấm ảnh minh họa gốc nặng 3,67 MB, sau khi resize về 1000 x 667 và nén bằng MozJPEG chất lượng 75 thì chỉ còn 64 kB, giảm 98% mà mắt thường gần như không thấy khác biệt.


Nếu có nhiều ảnh cần resize cùng lúc, bạn có thể dùng PhotoScape X để resize ảnh hàng loạt. Sau khi đăng bài, hãy kiểm tra lại tốc độ trang bằng PageSpeed Insights, công cụ này sẽ chỉ ra ảnh nào còn quá nặng hoặc quá lớn so với kích thước hiển thị.
Tự động chuyển ảnh sang WebP và AVIF trên WordPress
Đổi định dạng từng ảnh bằng tay thì khá mất công, nhất là với blog đã có hàng nghìn ảnh cũ. Lucid Gen đang dùng plugin CompressX để tự chuyển ảnh JPG, PNG sang WebP và AVIF. Plugin xử lý ngay trên server, không gửi ảnh đi đâu cả, và tự bỏ bản chuyển đổi nếu nó lại nặng hơn ảnh gốc.
Điểm hay là URL ảnh trong bài vẫn giữ đuôi .png như cũ. Khi trình duyệt báo hỗ trợ AVIF hoặc WebP, server sẽ trả về định dạng đó, còn trình duyệt cũ vẫn nhận file PNG. Bảng dưới đây là dung lượng thực tế của 5 ảnh trong bài này (đo 10/2026):
| Ảnh | PNG | WebP | AVIF |
|---|---|---|---|
| Ảnh 1 (Freepik) | 143 KB | 92 KB | 81 KB |
| Ảnh 2 (Finder) | 59 KB | 22 KB | 19 KB |
| Ảnh 3 (Squoosh) | 78 KB | 38 KB | 31 KB |
| Ảnh 4 (Alt Text) | 62 KB | 40 KB | 33 KB |
| Ảnh 5 (vị trí ảnh) | 76 KB | 40 KB | 33 KB |
| Tổng | 417 KB | 233 KB | 197 KB |
Dù các file PNG này đã được resize và nén từ trước, bản AVIF vẫn nhẹ hơn khoảng 53%, bản WebP nhẹ hơn khoảng 44%. Bạn có thể tự kiểm tra trên site của mình: mở DevTools của Chrome, vào tab Network, lọc Img rồi xem cột Type là avif, webp hay png.
Lưu ý: Từ WordPress 6.5 bạn đã tải ảnh AVIF lên thư viện Media được, nhưng hosting cần có thư viện xử lý ảnh hỗ trợ AVIF. Nếu CompressX báo không chuyển được AVIF, bạn hãy hỏi nhà cung cấp hosting trước nhé.
Lazy load ảnh đúng cách
Lazy load là chỉ tải ảnh khi ảnh sắp xuất hiện trên màn hình, giúp phần đầu trang hiện ra nhanh hơn. WordPress đã tự thêm loading="lazy" cho ảnh từ bản 5.5. Lucid Gen thì bật tính năng lazy load ảnh của plugin LiteSpeed Cache, có thêm ảnh giữ chỗ để bố cục không bị nhảy khi ảnh tải xong.
Có hai điều Google lưu ý khi dùng lazy load mà bạn nên biết:
- Ảnh phải được tải khi lọt vào khung nhìn: Googlebot không cuộn trang hay nhấp chuột. Nếu ảnh chỉ tải khi người dùng cuộn hoặc bấm nút thì Google có thể không thấy ảnh đó.
- Không lazy load ảnh ở đầu trang: Ảnh hiện ngay khi mở trang (thường là ảnh đại diện hoặc ảnh đầu tiên) mà bị lazy load thì lại tải chậm hơn. Trong LiteSpeed Cache có ô loại trừ ảnh khỏi lazy load, bạn có thể thêm ảnh đầu trang vào đó.
Sau khi bật lazy load, bạn hãy dùng công cụ Kiểm tra URL trong Google Search Console, xem HTML đã hiển thị để chắc chắn các thẻ img vẫn có đường dẫn ảnh thật.
Ảnh responsive và thẻ img chuẩn
Ảnh responsive là cách cho trình duyệt chọn phiên bản ảnh vừa với màn hình: điện thoại tải bản nhỏ, máy tính tải bản lớn. Google khuyến nghị dùng thuộc tính srcset, hoặc thẻ picture kèm một thẻ img dự phòng có src.
Với WordPress, bạn gần như không phải làm gì. Khi tải ảnh lên, WordPress tự tạo thêm các kích thước nhỏ hơn, và khi chèn ảnh bằng block Image thì tự thêm srcset, width, height vào thẻ img. Hai thuộc tính width và height giúp trình duyệt chừa sẵn chỗ cho ảnh, tránh tình trạng chữ bị đẩy xuống khi ảnh tải xong.
Lưu ý: Google không lập chỉ mục ảnh chèn bằng CSS (background-image). Ảnh nào bạn muốn xuất hiện trên Google Hình ảnh thì hãy chèn bằng thẻ img, tức là block Image bình thường.
Sitemap hình ảnh
Sitemap hình ảnh giúp Google phát hiện những ảnh có thể bị bỏ sót khi thu thập dữ liệu. Các plugin SEO phổ biến như Rank Math hay Yoast SEO đều tự đưa ảnh trong bài vào sitemap bài viết. Sitemap của Lucid Gen hiện do Rank Math tạo, mỗi bài viết có kèm danh sách ảnh trong thẻ image:loc.
Bạn chỉ cần mở file sitemap bài viết (ví dụ post-sitemap.xml) để kiểm tra có ảnh hay không, rồi gửi sitemap trong Google Search Console là xong. Nếu ảnh của bạn nằm trên CDN khác tên miền thì vẫn khai báo được, Google cho phép điều này.
Đặt ảnh gần nội dung liên quan, kèm caption
Google lấy thông tin về ảnh từ cả nội dung xung quanh, bao gồm caption và tiêu đề gần ảnh. Vì vậy ảnh nên nằm ngay cạnh đoạn văn mà nó minh họa. Với bài hướng dẫn trên Lucid Gen, Hiếu đặt mỗi ảnh chụp màn hình ngay dưới bước tương ứng, kèm một caption ngắn mô tả ảnh.


Không có quy định nào bắt mỗi heading phải có ảnh. Ảnh chỉ nên xuất hiện khi giúp người đọc hiểu nhanh hơn, thêm ảnh cho đủ số lượng chỉ làm trang nặng thêm. Còn các ô Title và Description trong thư viện Media thường không hiển thị ra bài viết, nên bạn ưu tiên điền alt và caption trước.
Lời kết
Nếu ít thời gian, Hiếu khuyên bạn làm trước hai việc: resize và nén ảnh trước khi tải lên, và viết alt text mô tả đúng ảnh. Hai việc này tốn vài phút mỗi bài nhưng giúp trang nhẹ hơn rõ rệt và giúp Google hiểu ảnh đúng hơn. Phần chuyển WebP/AVIF, lazy load, sitemap thì cài plugin và cấu hình một lần là chạy cho cả site.
Bạn đang dùng plugin nào để nén ảnh cho WordPress? Hãy để lại bình luận bên dưới để giao lưu với Hiếu nhé. Chúc bạn tối ưu hình ảnh cho website thành công!







seo ảnh cũng khó ghê
Để tâm xíu là được, còn lại thì cầu nguyện cho Google.
Cám ơn b. Cũng biết được một số mẹo mới khá hay
OK nè!
Cái này còn thiếu 1 phần nữa là geotag hình ảnh nếu làm được phần này là lợi thế
Chào Long, thường ảnh được nén sẽ mất hết thông tin. Các thông tin hình ảnh cũng chỉ để show trên ứng dụng xem ảnh mà thôi.
Bài viết rất hữu ích, web mình chẳng thấy hình ảnh lên top gì cả, hy vọng áp dụng cách này của bạn thì sẽ khá hơn!
OK bạn nhé!
Hay á, xem blog của bạn học hỏi được mấy cái hay
Cảm ơn Tính