Quay lại portfolio
Android App Tracking & Attribution

Tracking App Android Bằng Firebase Và AppsFlyer

01

Bài toán đặt ra

Không có dự án app thực tế thì tự tạo cơ hội để trải nghiệm.

Mình muốn bổ sung kiến thức về App (Mobile Measurement Partner), nhưng ở thời điểm hiện tại chưa có dự án app thực tế để trực tiếp triển khai. Nếu chỉ đọc tài liệu thì sẽ khó hình dung luồng setup, gửi event và kiểm tra dữ liệu hoạt động như thế nào.

Nếu không có cơ hội thì chính mình phải tự tạo ra cơ hội trong khả năng cho phép.

Vì vậy mình tự tạo một app Android để học bằng trải nghiệm thật. App là dạng quiz câu đố chia theo level, người dùng có thể chơi theo từng cấp độ và nếu muốn mở thêm nhiều câu đố hay hơn thì cần nạp tiền thanh toán.

02

Vai trò & Phạm vi

Mình sẽ là người đặt bài toán, dùng AI để phát triển app Android, sau đó kết nối Firebase và AppsFlyer để kiểm tra cách event được gửi lên các nền tảng quảng cáo và ghi nhận dữ liệu

03

Xây app, giao diện và tracking nền tảng

Mình bắt đầu bằng việc dùng AI dựng một quiz app Android theo level, có luồng thanh toán để mở thêm câu đố rất cơ bản, sau đó gửi sự kiện về AppFlyer và Firebase

Quiz app chia theo level

App mô phỏng một sản phẩm có hành vi thật: user xem câu hỏi, vượt level và có thể nạp tiền nếu muốn mở thêm nhiều câu đố hay hơn. Event trọng tâm là af_level_achieved.

Firebase và AppsFlyer cùng nhận dữ liệu

Khi user tương tác với app, dữ liệu đã được ghi nhận ở AppsFlyer và GA4, đủ để kiểm tra luồng event từ app ra nền tảng tracking.

Minh họa màn hình quiz app Android
Màn hình quiz app Android
Minh họa màn hình level và thanh toán trong app
Level quiz và luồng thanh toán
Minh họa Firebase nhận dữ liệu từ app
Firebase nhận dữ liệu tương tác từ app
Minh họa AppsFlyer và GA4 nhận event từ app
AppsFlyer ghi nhận event app

04

Thiết lập Postback với Meta

Sau khi app đã gửi dữ liệu về nền tảng tracking, bước tiếp theo là gửi tín hiệu event về nền tảng quảng cáo. Mình chọn Meta để demo vì live debug và Event Manager dễ kiểm tra.

Lỗi đã gặp và cách fix

Ban đầu mình gắn sai tên event với các hành vi của user và đồng thời gửi tín hiệu này tới AppsFlyer và Facebook SDK, dẫn tới trùng lặp event. Sau đó mình fix lại phía app để chỉ gửi sự kiện về AppsFlyer, đồng thời chỉnh event đúng với danh sách đã map với Facebook. Kết quả là Event Manager hiển thị đúng số lượt mua hàng trong ứng dụng. Cốt lõi là App làm đúng từ đầu thì các phần sau sẽ dễ dàng hơn

Minh họa map sự kiện app với Meta trong AppsFlyer
Map event app với Meta event trong AppsFlyer
Minh họa Meta Event Manager nhận event từ app
Trình quản lý sự kiện nhận event từ app, giai đoạn đầu còn bị duplicate, về sau giảm dần rồi chỉ nhận 1 đến từ AppFlyer

06

Trực quan hóa dữ liệu và kết luận

AppsFlyer phù hợp để làm postback cho các nền tảng quảng cáo, còn GA4 giúp phân tích dữ liệu sâu hơn. Khi cần dashboard linh hoạt, dữ liệu có thể tiếp tục kết nối với Looker hoặc hoàn toàn có thể lấy dữ liệu và xây dựng hệ thống riêng nội bộ

Minh họa dashboard AppsFlyer GA4 và Looker
GA4 sau khi link dữ liệu từ Firebase hoàn toàn có thể dùng để tạo dashboard với Looker

Bài học rút ra

Qua project này, mình hiểu rõ hơn cách app hoạt động và thấy app tracking có nhiều nét tương đồng với web tracking mình hay dùng.

AppsFlyer và GA4 có thể kết hợp với nhau rất tốt: AppsFlyer xử lý phần postback, GA4 hỗ trợ phân tích hành vi sâu hơn. Hai công cụ bổ trợ cho nhau, không thay thế nhau.

Điều quan trọng nhất là App phải được xây dựng tốt từ đầu và luôn có sự phản hồi qua lại với team marketing để thiết kế được luồng tracking hiệu quả nhất . Khi event và luồng dữ liệu trong app rõ ràng, việc kết nối với các nền tảng khác sẽ dễ hơn rất nhiều.

Đây chỉ là project mình demo

Nếu bạn muốn tìm hiểu thêm về luồng event, Firebase, AppsFlyer hoặc cách kết hợp với GA4, mình có thể trao đổi thêm.