Bạn mở báo cáo Google Analytics, vào mục Acquisition > Traffic acquisition, và tim bạn như thắt lại khi thấy một dòng (not set) khổng lồ trong dimension “Session campaign”. Nguồn traffic này từ đâu ra? Tại sao nó lại là “dữ liệu không xác định”? Rất có thể, bạn đang vô tình mắc phải một trong những sai lầm kinh điển nhất của dân phân tích dữ liệu: sử dụng UTM cho các liên kết nội bộ (Internal Link).
Bài viết này sẽ đi sâu vào phân tích tại sao hành động tưởng chừng vô hại này lại là một “sai lầm chết người”, phá hỏng hoàn toàn dữ liệu của bạn, và quan trọng hơn, làm thế nào để khắc phục triệt để vấn đề này.
UTM Internal Link: Kẻ phá bĩnh phiên (Session) trong Google Analytics
Để hiểu tại sao dùng UTM cho liên kết nội bộ lại tai hại, trước tiên chúng ta cần hiểu cách Google Analytics (GA) ghi nhận một phiên người dùng. Một phiên bắt đầu khi người dùng truy cập website của bạn từ một nguồn bên ngoài (ví dụ: Google Search, Facebook Ads, Email). GA sẽ ghi nhận thông tin của nguồn đó (source, medium, campaign…). Phiên này sẽ tiếp tục khi người dùng di chuyển giữa các trang trên website của bạn.
Khi bạn chèn một link có UTM vào một nút bấm ngay trên website của mình (internal link), điều tồi tệ sau sẽ xảy ra:
Khi người dùng nhấp vào liên kết nội bộ đó, các tham số UTM mới sẽ ghi đè lên thông tin của nguồn traffic ban đầu. Google Analytics sẽ hiểu rằng đây là một phiên HOÀN TOÀN MỚI. Nguồn traffic ban đầu (ví dụ: google / organic) sẽ bị “giết chết” và thay thế bằng nguồn traffic mới mà bạn vừa tạo ra trong UTM (ví dụ: internal / cta-button).
Hệ quả là, bạn đã tự tay cắt đứt hành trình của người dùng và tạo ra một mớ dữ liệu hỗn loạn.
Tác hại khôn lường khi dữ liệu bị ghi đè bởi UTM nội bộ
Việc phá vỡ phiên người dùng không chỉ là một vấn đề kỹ thuật nhỏ, nó gây ra những ảnh hưởng nghiêm trọng đến khả năng phân tích và ra quyết định của bạn.
Dữ liệu chiến dịch bị phân mảnh và sai lệch
Nguồn traffic thực sự mang lại chuyển đổi sẽ bị ẩn đi. Giả sử người dùng đến từ Facebook Ads, xem sản phẩm, rồi nhấp vào nút “Xem thêm” có gắn UTM nội bộ, sau đó mua hàng. Thay vì ghi nhận chuyển đổi cho Facebook Ads, GA sẽ ghi nhận chuyển đổi cho nguồn “internal / cta-button” mà bạn tự tạo ra. Điều này khiến báo cáo campaign not set hoặc sai lệch nghiêm trọng.
Mất dấu nguồn traffic gốc (Source/Medium)
Bạn sẽ không bao giờ biết được kênh nào (Organic, Paid, Social) thực sự hiệu quả. Toàn bộ hành trình của người dùng sau cú nhấp chuột vào internal link sẽ được gán cho một nguồn nội bộ vô nghĩa, khiến cho báo cáo source medium not set trở nên phổ biến hơn.
Tăng vọt Direct Traffic một cách giả tạo
Khi phiên cũ bị kết thúc đột ngột và phiên mới bắt đầu mà không có thông tin giới thiệu (referrer) rõ ràng từ bên ngoài, GA thường sẽ phân loại nó vào nhóm Direct Traffic. Bạn sẽ thấy lượng traffic trực tiếp tăng bất thường nhưng thực chất đó là do dữ liệu đã bị sai lệch.
Phá vỡ hoàn toàn mô hình phân bổ (Attribution Models)
Mọi mô hình phân bổ, từ Last Click đến Data-Driven, đều dựa trên việc theo dõi một chuỗi điểm chạm (touchpoints) hoàn chỉnh. Khi bạn dùng UTM nội bộ, bạn đã tự tay xóa đi các điểm chạm quan trọng ban đầu, khiến cho việc phân tích và tối ưu hóa trở nên bất khả thi.
Các nguyên nhân phổ biến gây ra lỗi (not set) trong báo cáo
Mặc dù UTM nội bộ là thủ phạm chính, có một vài nguyên nhân khác cũng có thể gây ra tình trạng dữ liệu không xác định hoặc lỗi not set trong GA.
- Thiếu tham số UTM: Một URL chỉ có một vài tham số UTM (ví dụ, chỉ có utmsource) nhưng thiếu các tham số bắt buộc khác như utmmedium.
- Lỗi Auto-tagging: Cài đặt Auto-tagging của Google Ads bị lỗi hoặc xung đột với Manual tagging (UTM thủ công). Hãy chắc chắn bạn chỉ sử dụng một trong hai. Tham khảo thêm: Cách thiết lập UTM cho Google Ads đúng chuẩn.
- Redirect (Chuyển hướng) làm mất tham số: Một số loại chuyển hướng trên server (ví dụ 302 redirect) có thể làm rơi các tham số UTM khỏi URL cuối cùng.
- Lỗi Javascript: Code trên website có thể can thiệp và thay đổi URL trước khi thẻ GA kịp ghi nhận, làm mất thông tin UTM.
Nếu bạn đang gặp phải tình trạng dữ liệu UTM không hiển thị chính xác, hãy tham khảo bài viết chuyên sâu: Tại sao dữ liệu UTM không hiển thị trong GA4?
Checklist: Kiểm tra và khắc phục triệt để sai lầm UTM nội bộ

Hãy làm theo checklist dưới đây để “dọn dẹp” website của bạn và đảm bảo dữ liệu được ghi nhận chính xác.
- Bước 1: Audit toàn bộ liên kết nội bộ: Sử dụng các công cụ như Screaming Frog để quét toàn bộ website và tìm các URL nội bộ có chứa “utm_”.
- Bước 2: Gỡ bỏ tất cả tham số UTM khỏi internal link: Thay thế các liên kết này bằng URL gốc không chứa tham số.
- Bước 3: Sử dụng Event Tracking để theo dõi tương tác nội bộ: Nếu bạn muốn theo dõi lượt click vào một banner hay nút CTA cụ thể trên trang, hãy sử dụng tính năng theo dõi sự kiện (Event Tracking) của Google Analytics 4. Đây là phương pháp đúng đắn và không phá vỡ phiên người dùng.
- Bước 4: Thiết lập Custom Dimension (nếu cần): Đối với các nhu cầu theo dõi nâng cao hơn, hãy sử dụng Custom Dimension để ghi nhận các thông tin đặc biệt thay vì lạm dụng UTM.
- Bước 5: Thường xuyên kiểm tra báo cáo Campaign: Hãy biến việc kiểm tra mục Campaign và tìm kiếm các giá trị (not set) trở thành thói quen hàng tuần để phát hiện sớm các vấn đề.
Lời kết
UTM là một công cụ mạnh mẽ để theo dõi hiệu quả của các chiến dịch marketing BÊN NGOÀI website. Việc lạm dụng nó cho các liên kết nội bộ là một sai lầm nghiêm trọng, biến kho dữ liệu quý giá của bạn thành một mớ hỗn độn. Bằng cách hiểu rõ bản chất vấn đề và tuân thủ các phương pháp theo dõi đúng đắn, bạn sẽ lấy lại được sự trong sạch cho dữ liệu của mình.
Đừng để (not set) làm mờ đi bức tranh toàn cảnh về hiệu quả marketing của bạn. Hãy bắt đầu audit website ngay hôm nay, áp dụng checklist trên và giành lại quyền kiểm soát dữ liệu của mình!
