WebPageTest (WPT) là công cụ đo hiệu năng miễn phí với độ chi tiết cao hơn PSI. WPT cho phép chọn vị trí địa lý, trình duyệt, tốc độ mạng, kèm biểu đồ waterfall, filmstrip và video.
WPT là gì — so với PSI
WebPageTest miễn phí tại webpagetest.org, phiên bản trả phí qua catchpoint.com/webpagetest. WPT chi tiết hơn PSI: chọn vị trí từ 40+ thành phố, trình duyệt Chrome/Firefox/Edge, tốc độ mạng tùy chỉnh.
Kèm waterfall và filmstrip cho từng lần chạy.
Đánh đổi: WPT phức tạp hơn, cần hiểu các chỉ số để dùng hiệu quả.
WPT vs PSI — khi nào dùng cái nào
| Mục đích | PSI | WPT |
|---|---|---|
| Kiểm tra nhanh CWV | Tốt nhất | Quá mức cần |
| Debug tắc nghẽn mạng | Hạn chế | Tốt nhất (waterfall) |
| Test nhiều vị trí địa lý | Không | Có (40+ thành phố) |
| So sánh trình duyệt | Chỉ Chrome | Chrome/Firefox/Edge |
| Filmstrip tiến trình hiển thị | Không | Có (video + từng khung) |
| API và tự động hoá | Có API | API trưởng thành hơn |
| Hạn mức miễn phí | Không giới hạn | 200 test/ngày miễn phí |
Khi nào cần WPT thay vì PSI?
Dùng WPT khi cần debug tắc nghẽn mạng qua waterfall, so sánh trước/sau fix bằng filmstrip, hoặc test từ vị trí gần người dùng thật.
PSI đủ cho kiểm tra nhanh hàng ngày. WPT dành cho audit sâu và so sánh có chứng cứ.
Bước 1 — Thiết lập test
WPT có hơn 30 tùy chọn cấu hình — người mới thường bị ngợp. Chọn cài đặt phù hợp đối tượng người dùng và mục tiêu test.
Không cần cấu hình hết tất cả.
Cài đặt khuyến nghị cho shop VN
- Dán URL cần test — URL trang cụ thể, không mặc định trang chủ.
- Test Location: “Singapore – EC2” — gần VN nhất, độ trễ 30-50ms.
- Trình duyệt: Chrome mobile (Pixel 5 mặc định).
- Kết nối: “4G” (1.6Mbps tải về, 750kbps tải lên, 170ms RTT) — gần với người dùng mobile VN điển hình.
- Số lần test: 3 (lấy trung vị) hoặc 9 (đủ độ tin cậy thống kê).
- Repeat View: “First View and Repeat View” — đo cả chưa cache và đã cache.
- Bấm “Start Test” và chờ 1-3 phút.
Cài đặt nâng cao
- Capture Video: tick để có filmstrip và video tiến trình tải.
- Block requests: mô phỏng tắt plugin hoặc script để xem tác động.
- Custom script: tự động hoá đăng nhập, click, cuộn trang trước khi đo.
- Lighthouse Audit: tick để có kết quả Lighthouse kèm theo WPT.
Singapore vs Hong Kong vs Tokyo cho người dùng VN?
Singapore (EC2) là lựa chọn tốt nhất — độ trễ từ TP.HCM khoảng 30-50ms, mạng ổn định. Hong Kong gần hơn nhưng không nhất quán.
Tokyo xa hơn (80-120ms) — không phản ánh đúng người dùng VN.
Bước 2 — Đọc biểu đồ waterfall
Waterfall hiển thị mọi request HTTP với thời gian chi tiết: DNS, connect, SSL, send, wait (TTFB), receive. Đây là công cụ debug mạng mạnh nhất WPT có — PSI không có waterfall, phải dùng Chrome DevTools thủ công.
5 thông tin quan trọng từ waterfall
- TTFB của tài liệu HTML (request #1): thời gian wait = TTFB. Trên 800ms là tắc nghẽn server.
- Tài nguyên chặn hiển thị: CSS/JS tải trước lần vẽ đầu tiên. Càng nhiều càng chậm FCP.
- Nhiều tên miền, nhiều DNS lookup: mỗi tên miền mới thêm 30-100ms. Nên dùng ít domain.
- Ảnh lớn chặn cuộn: request ảnh trên 500KB không có lazy load.
- Request bên thứ ba chậm: tracker (GA, Facebook Pixel, widget chat) chiếm thời gian chính.
Ý nghĩa màu sắc trong waterfall
Xanh dương : DNS lookup
Cam : TCP connect
Tím : SSL/TLS handshake
Xanh lá : Thời gian chờ (TTFB) — server xử lý
Xanh nhạt : Nhận dữ liệu (tải về)
Xám : Chờ tài nguyên khác
Đọc waterfall — thứ tự ưu tiên
Tập trung vào 10 request đầu tiên — chúng quyết định phần lớn FCP và LCP. Request có thanh xanh lá (TTFB) dài hơn 500ms cần điều tra server hoặc cache.
Tham chiếu với bài TTFB — phân tích sâu và cách tối ưu khi TTFB là tắc nghẽn chính.
Bước 3 — Đọc filmstrip
Filmstrip ghi ảnh chụp màn hình mỗi 100ms (hoặc 200/500ms tùy cấu hình) trong quá trình tải. Trực quan hoá tiến trình từ màn hình trắng → lần vẽ đầu tiên → LCP → tải hoàn toàn.
Các pattern filmstrip cần phân tích
- Màn hình trắng kéo dài (trên 1 giây): TTFB chậm hoặc CSS chặn hiển thị nặng.
- FCP nhanh nhưng LCP muộn: ảnh hero tải chậm — fix bằng WebP và priority hint.
- Layout nhảy giữa các khung: CLS — phần tử dịch chuyển sau khi hiển thị ban đầu. Fix bằng đặt trước kích thước.
- Tải hoàn toàn muộn (trên 5 giây): script tracker hoặc analytics bên thứ ba.
So sánh 2 test trước/sau fix
- Chạy test baseline → lưu URL kết quả.
- Triển khai fix.
- Chạy test mới → lưu URL kết quả.
- Vào tab “Compare” của WPT → dán 2 URL test → bấm “Compare”.
- WPT hiển thị filmstrip và waterfall song song cùng chênh lệch chỉ số.
Filmstrip và CLS
Filmstrip là cách trực quan nhất để xác định CLS. So sánh 2 khung liên tiếp, thấy phần tử di chuyển là có CLS.
PSI không có filmstrip — cần DevTools để làm thủ công.
Xem thêm Fix CLS — 5 bước phát hiện và sửa.
Bước 4 — Audit kết quả theo grade
WPT chấm điểm A-F cho 6 hạng mục: First Byte Time, Keep-alive Enabled, Compress Transfer, Compress Images, Cache static content, Effective use of CDN. Grade F hoặc D là ưu tiên cao cần fix.
Grade thường thấp cho WordPress
| Grade | Vấn đề | Hướng fix |
|---|---|---|
| First Byte Time: D-F | TTFB trên 1 giây | Cache trang + Redis + hosting phù hợp |
| Compress Images: C-D | JPG chất lượng 95+, PNG chưa nén | WebP + ShortPixel/TinyPNG |
| Cache static content: C-D | Cache-Control TTL ngắn | Đặt max-age=31536000 cho tài sản tĩnh |
| Effective use of CDN: F | Tài sản tĩnh từ server gốc | Cloudflare hoặc BunnyCDN proxy |
Grade A-B — không cần ưu tiên
Grade A hoặc B có nghĩa hạng mục đó đã ổn. Không cần đầu tư thêm thời gian — tập trung vào grade C-F.
Bước 5 — Theo dõi cải thiện theo thời gian
WPT lưu lịch sử mọi test trong tài khoản. So sánh kết quả theo thời gian giúp đo mức cải thiện sau từng thay đổi lớn.
Thiết lập baseline theo dõi
- Đăng nhập tài khoản WPT (miễn phí).
- Chạy baseline 9 lần cho các URL quan trọng: trang chủ, 3 landing page, 5 trang sản phẩm bán chạy.
- Lưu URL kết quả vào bảng tính kèm ngày và chỉ số.
- Sau mỗi thay đổi lớn: chạy lại 9 lần cùng cấu hình.
- Cập nhật bảng tính với chênh lệch.
- Xem lại mỗi quý: cải thiện có nhất quán không?
Tích hợp CI/CD — nâng cao
- Lấy API key trong phần cài đặt tài khoản WPT.
- Thêm bước chạy WPT test sau mỗi lần triển khai.
- Fail build nếu chỉ số giảm quá ngưỡng (ví dụ LCP tăng trên 200ms).
- Công cụ: npm package
webpagetest-cli, tích hợp GitHub Actions.
3 vs 9 lần chạy — khác gì?
3 lần đủ cho vòng lặp phát triển hàng ngày, trung vị biến động ±10%. 9 lần dùng cho audit chính thức, biến động ±3%.
Checklist dùng WPT cho shop VN
- Chọn Test Location “Singapore EC2” mặc định cho shop nhắm người dùng VN.
- Chọn kết nối 4G để phản ánh người dùng mobile điển hình.
- Chạy 3 lần lấy trung vị cho iterate hàng ngày, 9 lần cho audit chính thức.
- Tick “Capture Video” để có filmstrip — cần thiết để phân tích CLS và tiến trình tải.
- Xem 10 request đầu trong waterfall trước khi kéo xuống.
- So sánh grade — tập trung fix F và D trước.
- Sau fix, dùng tính năng Compare để đối chiếu filmstrip và waterfall.
- Lưu URL kết quả vào bảng tính để theo dõi cải thiện qua thời gian.
- Dùng PSI cho check nhanh hàng ngày, WPT cho audit sâu định kỳ.
Bài liên quan trong cluster Performance
- PageSpeed Insights — kiểm tra nhanh CWV
- CrUX — dữ liệu thực tế Google
- Tối ưu LCP — đo và fix
- TTFB — phân tích sâu
- Fix CLS — phát hiện và sửa
Câu hỏi thường gặp
WPT miễn phí 200 test/ngày đủ cho team không?
Đủ cho team 1-3 người phát triển iterate hàng ngày. Nếu cần nhiều hơn:
- Agency nhiều khách: cần tài khoản Pro ($14.99-249/tháng) để tăng hạn mức.
- Lập trình viên cá nhân: 99% trường hợp dùng miễn phí đủ.
Test location Singapore vs Hong Kong vs Tokyo cho người dùng VN?
Singapore tốt nhất — độ trễ từ TP.HCM khoảng 30-50ms, mạng ổn định. Hong Kong gần hơn về địa lý nhưng độ trễ không nhất quán.
Tokyo xa hơn (80-120ms), không phản ánh đúng người dùng VN. Chọn Singapore EC2 mặc định.
Chạy 3 vs 9 lần test khác gì?
3 lần đủ cho iterate hàng ngày — trung vị biến động ±10%. 9 lần dùng cho audit chính thức (±3%).
Dùng 9 lần khi cần báo cáo định kỳ hoặc so sánh trước/sau cho stakeholder.
Filmstrip có giúp xác định CLS không?
Có. So sánh 2 khung liên tiếp, thấy phần tử di chuyển vị trí là CLS.
WPT chụp mỗi 100ms — chi tiết hơn DevTools mặc định.
PSI không có filmstrip nên phải dùng DevTools thủ công.
Cần hỗ trợ audit hiệu năng chuyên sâu và lập kế hoạch tối ưu Core Web Vitals? Xem dịch vụ tối ưu hiệu năng của Web22.


