Theo định nghĩa của Google Ads support thì: Mobile ads là khái niệm để chỉ các quảng cáo hiển thị trên các trang web hoặc ứng dụng (& trò chơi) cung cấp trên trên nền tảng mobile – các thiết bị như cell phone, tablet.
Đây là định nghĩa đơn giản và đầy đủ nhất cho Mobile Ads. Đơn giản vậy đấy, nhưng bạn đã hiểu kỹ cũng như nắm vững cách dùng nó chưa? Trong chuỗi bài viết này mình sẽ đi sâu vào các khái niệm cơ bản của Mobile Ads, các định dạng (format) của Mobile Ads và cách tích hợp nó vào ứng dụng của bạn.
Phần I. Các khái niệm cơ bản của Mobile Ads
Hiện tại có rất nhiều network (mạng) cung cấp Mobile Ads, có thể kể ra một số mạng thông dụng như: AdMob (Google), FAN (Facebook), Unity, Vungle v.v.v. Mỗi mạng sẽ có một số tùy chỉnh cho riêng mình, nhưng nhìn chung sẽ đều tuân theo một “quy trình” nhất định để có thể hiển thị được quảng cáo.
Quy trình chung đó sẽ là:
Dựa theo quy trình này, ta sẽ cần quan tâm đến các thông số cơ bản sau:
- Request (lượng yêu cầu)
- Matched request (lượng yêu cầu được đáp ứng)
- Match rate (tỷ lệ đáp ứng)
- Impression (số lượt hiển thị)
- Show rate (tỷ lệ hiển thị)
- Click (số nhấp chuột – nhấp ngón ^^)
- CTR – Click through rate (tỷ lệ nhấp)
- eCPM – RPM: revenue per thousand impressions (doanh thu trên 1000 lượt hiển thị)
1. Request, matched request và match rate
Việc đầu tiên cần làm khi sử dụng Mobile Ads là request (yêu cầu) quảng cáo. Từ ứng dụng của bạn sẽ gửi request đến server của các Ad Network (mạng quảng cáo), request này sẽ kích hoạt một quá trình đấu giá, và Ad network sẽ tìm kiếm quảng cáo phù hợp với request của bạn (dựa vào các thông tin người dùng, thiết bị, vị trí, v.v.v). Nếu có quảng cáo phù hợp thì server sẽ trả về device. Quảng cáo được trả về này sẽ tính là một matched request (yêu cầu được đáp ứng).
Công thức match rate
Tỷ lệ matched request/request được gọi là match rate (hay fill rate). Match rate (tỷ lệ đáp ứng) thể hiện khả năng cung cấp quảng cáo của Ad network. Tỷ lệ này càng cao thì thể hiện Ad Network càng có nhiều quảng cáo, đảm bảo user của bạn có nhiều thì vẫn có đủ quảng cáo để hiển thị cho họ.
Các yếu tố ảnh hưởng đến match rate
Match rate phụ thuộc vào một số yếu tố như: Ad network, users (quốc gia, độ tuổi, v.v.v), format (định dạng quảng cáo). Tùy thuộc vào thị trường (quốc gia của người sử dụng) mà match rate sẽ có các ngưỡng khác nhau. Các thị trường tier (top) 1 như: Mỹ, Anh, Nhật, v.v.v sẽ thường có match rate cao hơn các thị trường tier thấp như: Ấn, Brazil, Mexico.
Ngoài ra, định dạng quảng cáo cũng sẽ ảnh hưởng đến match rate. Thông thường, interstitial (quảng cáo chuyển tiếp) sẽ có match rate tương đối tốt, sau đó có thể là banner và rewarded (quảng cáo trả thưởng).
Đồng thời, mỗi network khác nhau sẽ có khả năng đáp ứng khác nhau. Không chỉ vậy, cách định nghĩa, cách đếm request và tính toán match rate của các network cũng khác nhau.
Cụ thể các mạng như AdMob và FAN có API (hàm) request cụ thể, để chủ động gửi request đến server. Mỗi một lần gọi hàm request thường sẽ được đếm thành một request. Với dạng này ta có cái nhìn chủ động hơn về việc request bao nhiêu lần và được đáp ứng bao nhiêu trong số đó.
Một số mạng khác như Unity và Ironsource lại cung cấp cơ chế tự động request. Ta ko cần gọi hàm request đến server, thay vào đó bộ SDK (công cụ của mạng quảng cáo) sẽ tự động xử lý việc request. Mỗi khi cần hiện quảng cáo, ta chỉ gọi API để kiểm tra xem quảng cáo đã sẵn sàng hay chưa. Cơ chế này giúp dễ dàng hơn trong việc tích hợp quảng cáo. Tuy nhiên theo ý kiến cá nhân mình thì nó tạo cảm giác không chủ động, không kiểm soát được việc request. Đặt trường hợp khi cần show quảng cáo mà quảng cáo không có sẵn (chưa có matched request) thì mình sẽ muốn chủ động request lại càng sớm càng tốt hơn là đợi. Đồng thời, cơ chế này cũng ẩn việc đếm request. Ví dụ, mình không rõ Unity hiện tại đếm request như nào, và dashboard (bảng báo cáo) của Unity thường thể hiện Fill rate rất cao (~98-99%). Có cảm giác là Unity chỉ đếm request khi họ “gần như” đáp ứng được request đó.
Yếu tố cuối cùng ảnh hưởng đến match rate là chính bạn. Trong trường hợp sử dụng các network với cơ chế request thủ công (AdMob, FAN, v.v.v) thì chính logic request quảng cáo của các bạn có thể ảnh hưởng đến match rate. (Mình sẽ chia sẻ một số phương pháp quản lý request ở bài sau). Ngoài ra, cơ chế đặt giá sàn (set floor eCpm) cũng sẽ là một yếu tố quan trọng ảnh hưởng đến match rate.
2. Impression và Show rate:
Sau khi đã có được matched request, việc của bạn là hiển thị đúng lúc đúng chỗ :). Bước hiển thị này hầu như không có lỗi, 99% trường hợp là sau khi đã load được quảng cáo bạn chỉ việc gọi API show là quảng cáo sẽ hiện ra. Tuy nhiên format Banner (quảng cáo biểu ngữ) và Native (quảng cáo “tự nhiên”) sẽ cần xử lý thêm. Banner yêu cầu một không gian đủ rộng để hiển thị cũng như việc xử lý đúng UI để đặt banner vào. Native còn phức tạp hơn khi bạn phải tự làm layout và xử lý từng thành phần của nó. Với Native nếu không xử lý đúng, thậm chí bạn có thể hiển thị nhưng người dùng không click (bấm) vào được
Nhìn chung, việc hiển thị quảng cáo vẫn hoàn toàn là quyền quyết định cũng như trách nhiệm xử lý của bạn. Mỗi một lần gọi show thành công sẽ tạo ra một impression (hiển thị). Tỷ lệ giữa số lần hiển thị và số request được đáp ứng gọi là show rate:
Show rate không phản ánh cũng như ảnh hưởng đến performance (hiệu quả) của một Ad Network. Thực tế là cũng không nhiều Ad Network đo đếm khái niệm này. Tuy nhiên, show rate có thể phản ánh một số vấn đề mà ứng dụng của bạn có thể gặp phải. Ví dụ với Rewarded Ads, show rate quá thấp thể hiện việc người dùng không xem quảng cáo Rewarded của bạn, có thể do các lý do như:
- Phần thưởng cho quảng cáo Rewarded không có giá trị cao, không kích thích được người xem
- Thiết kế Rewarded ads của bạn chưa tốt, người dùng khó tìm thấy quảng cáo để xem
3. Click, CTR và eCPM:
Hầu hết các Ad Network hiện tại đều tính doanh thu dựa vào click, do đó impression là không đủ, việc người dùng có click vào quảng cáo của bạn không mới quyết định doanh thu của bạn. Vì thế ta cần quan tâm đến CTR – Click Through Rate – tỷ lệ “nhấp”
CTR – Click through rate
CTR phản ánh việc trung bình với 100 impression bạn sẽ có bao nhiêu click. Con số này càng cao càng có nghĩa người dùng ‘dễ’ bấm vào quảng cáo của bạn. CTR phụ thuộc vào các yếu tố sau:
- định dạng quảng cáo: thông thường Interstitial, Rewarded sẽ có CTR cao, banner thì thấp hơn
- Ad Network và ‘giá trị’ của quảng cáo: các Ad Network khác nhau sẽ có sự khác biệt nhất định trong cùng một loại định dạng, do đó CTR của mỗi Network cho từng loại format có thể khác nhau. Đồng thời ‘giá trị’ của quảng cáo (độ hấp dẫn, độ phù hợp với người dùng) cũng quyết định CTR của nó. Giá trị của quảng cáo cũng thay đổi từng thị trường, do đó CTR cũng sẽ khác biệt trên cùng một Ad Network, cùng format nhưng khác thị trường.
- Cách tích hợp của bạn: bạn vẫn có thể kiểm soát CTR về một số mặt. Vị trí đặt quảng cáo, tần suất hiện quảng cáo là các yếu tố trong tầm kiểm soát. Cùng là banner nhưng đặt ở top hay bottom sẽ có CTR khác nhau, banner với refresh rate khác nhau sẽ cho ra impression và CTR khác nhau; cùng là interstitial nhưng hiện 2 phút/lần so với 5 phút/lần sẽ có CTR khác nhau. Game/App tương tự nhau, cùng thị trường, nhưng bạn không thể trông đợi việc hiện 10 impression/users/ngày sẽ mang lại CTR giống với chỉ hiện 2 impression. Đôi khi hiện quá nhiều quảng cáo sẽ không làm tăng số click/doanh thu của bạn.
Nhìn vào CTR có thể cho ta một số insight (đánh giá, giả thuyết). CTR quá thấp thì nên xem lại vị trí đặt quảng cáo, tần suất hiển thị (hoặc refresh của banner). CTR quá cao cũng cần xem xét kỹ, liệu việc hiển thị quảng cáo của bạn có gây nhầm lẫn, tạo ra các click nhầm từ người dùng không? Việc tích hợp gây click nhầm có thể bị các Ad Network xem xét dừng cung cấp quảng cáo cho bạn.
CPC, eCpm – Giá trị của quảng cáo
Yếu tố cuối cùng quyết định đến doanh thu của bạn là CPC – eCpm, giá trị của bản thân quảng cáo. CPC là cost per click – giá trị trên từng lượt click. eCpm là doanh thu trung bình trên 1000 lượt hiển thị. Nhìn chung, 2 giá trị này có thể chuyển đổi qua lại cho nhau.
CPC là yếu tố hầu như bạn không thể thay đổi. CPC phụ thuộc vào việc người mua quảng cáo sẵn sàng trả bao nhiêu tiền để mua vị trí đặt quảng cáo. Vì vậy sẽ phụ thuộc vào thị trường và người dùng của ứng dụng. Ad Network tốt sẽ cung cấp quảng cáo “phù hợp” nhất cho ứng dụng của bạn: quảng cáo “liên quan” nhất đến người dùng và có giá trị cao nhất cho vị trí đặt trong ứng dụng. Và tất nhiên, người dùng ở các top market như Anh Mỹ Úc sẽ có giá trị cao hơn là các thị trường Ấn, Brazil v.v.v
CTR bạn có thể can thiệp một phần dựa vào cách tích hợp quảng cáo: vị trí đặt, tần suất hiện quảng cáo v.v.v. Hiển thị quảng cáo quá nhiều và dày đặc tại mọi vị trí sẽ làm giảm CTR của bạn. Do đó, CTR bản thân nó có thể khác biệt trong cùng một thị trường, format, ad network.
Tổng hợp lại CPC và CTR thì eCPM cũng sẽ khác biệt tùy theo loại ứng dụng, tập người dùng (thị trường) và cách bạn tích hợp quảng cáo. Do đó, việc so sánh eCpm chỉ nên mang tính tương đối. Bạn có thể so sánh eCpm giữa 2 mạng trong cùng 1 ứng dụng, còn giữa 2 ứng dụng khác nhau (có thể tương đồng, nhưng cách tích hợp quảng cáo khác nhau) thì eCpm cùng 1 format, cùng 1 thị trường cũng sẽ không thể giống nhau hoàn toàn.
Thêm nữa, eCpm là giá trị trung bình trên 1000 lượt hiển thị. Vì vậy nếu dữ liệu của bạn không đủ lớn (tối thiểu vài chục nghìn lượt impression) thì eCpm của bạn không chính xác, không phản ánh đúng performance của network cũng như ứng dụng của bạn.
Vậy có cách nào để tối ưu eCpm được? Tập trung vào 2 thành phần của eCpm là CTR và CPC, ta có thể có một số phương pháp:
- sử dụng mediation để các Ad Network cạnh tranh và cho ta quảng cáo có giá trị cao nhất
- tối ưu vị trí đặt quảng cáo cũng như tần suất quảng cáo
- thu hút các users có giá trị cao (top market) !
Trong các bài tới mình sẽ chia sẻ về từng format và cách sử dụng mediation.
(Còn tiếp)