Google Mobile Ads — định nghĩa, SDK quảng cáo và kiếm tiền

Tác giả: IT Sectr Đã đăng: 2026-04-30 Thời gian đọc: 10 phút

Google Mobile Ads — là SDK của Google để hiển thị quảng cáo trong ứng dụng di động, bao gồm AdMob và Google Ad Manager. SDK hỗ trợ tất cả các định dạng chính: banner, interstitial, video có thưởng (rewarded) và quảng cáo gốc (native). Google Mobile Ads SDK xử lý hơn 1 nghìn tỷ yêu cầu quảng cáo mỗi năm và được sử dụng trong 80% ứng dụng có kiếm tiền từ quảng cáo. Theo Google AdMob Documentation, 2025, thu nhập trung bình trên mỗi người dùng khi tích hợp đúng cách là $0.50-2.00 mỗi tháng.

Điểm chính

  • Google Mobile Ads — SDK hiển thị quảng cáo trong ứng dụng di động qua AdMob và Ad Manager
  • Định dạng — banner, interstitial, rewarded, quảng cáo gốc và App Open Ads
  • AdMob — nền tảng kiếm tiền ứng dụng với tự động điền đầy vị trí quảng cáo
  • Ad Manager — nền tảng nâng cao cho nhà xuất bản lớn với chiến dịch quảng cáo riêng
  • Đền bù (mediation) — công nghệ kết nối nhiều mạng quảng cáo để tăng doanh thu

Google Mobile Ads là gì?

Google Mobile Ads — là nền tảng quảng cáo của Google cho ứng dụng di động, cung cấp SDK để hiển thị quảng cáo và công cụ phân tích doanh thu. Nền tảng bao gồm hai hệ thống chính: AdMob (dành cho nhà phát triển độc lập) và Google Ad Manager (dành cho nhà xuất bản lớn với chiến dịch quảng cáo trực tiếp). Cả hai hệ thống sử dụng cùng một SDK Google Mobile Ads, giúp đơn giản hóa việc di chuyển giữa các nền tảng.

Cơ sở hoạt động của Google Mobile Ads là đấu giá thời gian thực (RTB — Real-Time Bidding). Khi ứng dụng yêu cầu hiển thị quảng cáo, SDK gửi yêu cầu đến máy chủ Google, nơi các thuật toán phân tích hồ sơ người dùng, bối cảnh ứng dụng và các chiến dịch quảng cáo khả dụng. Người thắng cuộc đấu giá được xác định trong 100-300 mili giây — giá thầu của nhà quảng cáo càng cao, doanh thu của nhà phát triển càng lớn. Theo Google (2025), eCPM trung bình cho ứng dụng Android là $5-15.

eCPM (effective Cost Per Mille) — chỉ số kiếm tiền chính, thể hiện doanh thu trên 1000 lần hiển thị. eCPM phụ thuộc vào khu vực người dùng (cao hơn ở Mỹ và Châu Âu, thấp hơn ở Châu Á), định dạng quảng cáo (video có thưởng cho eCPM $10-30, banner $0.50-2) và thời điểm trong năm (vào tháng 12, eCPM cao hơn 30-50%). Google Mobile Ads SDK tự động tối ưu hóa lượt hiển thị để đạt eCPM tối đa thông qua đấu giá.

Định dạng quảng cáo: banner, interstitial, rewarded và native

Quảng cáo banner — các khối hình chữ nhật có kích thước cố định (320x50 — tiêu chuẩn, 320x100 — lớn, 300x250 — trung bình). Banner được đặt ở dưới hoặc trên cùng màn hình và chiếm tối thiểu không gian. Nhược điểm: eCPM thấp ($0.50-2) và người dùng quen thuộc — Tỷ lệ nhấp (CTR) của banner là 0.05-0.5%. Banner tự động làm mới sau mỗi 30-60 giây, nhưng Google khuyên không nên làm mới thường xuyên hơn 60 giây để duy trì trải nghiệm người dùng.

Interstitial (quảng cáo xen trang) — quảng cáo toàn màn hình, hiển thị trong các khoảng dừng tự nhiên của ứng dụng (giữa các cấp độ trò chơi, khi chuyển giữa các màn hình). Interstitial cho eCPM $3-15 nhưng yêu cầu đặt cẩn thận — hiển thị thường xuyên gây khó chịu cho người dùng. Google giới hạn tần suất: không quá một interstitial mỗi phút. Theo Google, khi đặt đúng cách, interstitial không làm giảm khả năng giữ chân người dùng quá 5%.

Rewarded (quảng cáo có thưởng) — video mà người dùng nhận được phần thưởng khi xem (thêm mạng, xu, quyền truy cập premium). Định dạng đắt nhất với eCPM $10-30 và mức tương tác người dùng cao — 80% người dùng đồng ý xem video có thưởng. Quan trọng: phần thưởng phải có ý nghĩa với người dùng, nếu không họ sẽ không xem quảng cáo. Rewarded interstitial — định dạng kết hợp (có thưởng không bắt buộc xem), khả dụng từ SDK 21.0.0.

kotlin
// Tải và hiển thị RewardedAd
class RewardedAdManager {

    private var rewardedAd: RewardedAd? = null

    fun loadAd(context: Context) {
        RewardedAd.load(
            context,
            "ca-app-pub-3940256099942544/5224354917",
            AdRequest.Builder().build(),
            object : RewardedAdLoadCallback() {
                override fun onAdLoaded(ad: RewardedAd) {
                    rewardedAd = ad
                }
                override fun onAdFailedToLoad(
                    error: LoadAdError
                ) {
                    Log.d("AdMob", error.message)
                }
            }
        )
    }
}

App Open Ads: quảng cáo khi khởi động ứng dụng

Quảng cáo gốc (Native Ads) — quảng cáo được điều chỉnh trực quan theo thiết kế ứng dụng: nhà phát triển kiểm soát vị trí tiêu đề, mô tả, hình ảnh và nút kêu gọi hành động. Native ads có CTR cao nhất (0.5-2%) trong số tất cả các định dạng và tích hợp tốt nhất vào UX ứng dụng. Google Mobile Ads SDK cung cấp mẫu quảng cáo gốc (NativeTemplate) hoặc kiểm soát hoàn toàn qua NativeAdOptions. Định dạng ad_source_type cho biết quảng cáo gốc đến từ mạng nào.

AdMob hay Ad Manager: chọn gì

AdMob — nền tảng quảng cáo của Google cho ứng dụng di động, được thiết kế cho nhà phát triển độc lập và studio nhỏ. AdMob cung cấp tự động điền đầy vị trí quảng cáo thông qua đấu giá, thiết lập đơn giản qua giao diện web và tính năng đền bù tích hợp với 30+ mạng quảng cáo. Ngưỡng rút tiền: $100. AdMob phù hợp với 90% nhà phát triển, bao gồm cả studio trung bình với doanh thu lên tới $100.000 mỗi tháng.

Google Ad Manager — nền tảng nâng cao cho nhà xuất bản lớn với các chiến dịch quảng cáo riêng (direct deals), bảo đảm lập trình và ưu tiên nguồn. Ad Manager hỗ trợ nhiều máy chủ quảng cáo, đấu giá cạnh tranh (App Bidding) và phân tích chi tiết cho từng nhà quảng cáo. Để kết nối Ad Manager, cần lưu lượng truy cập hàng tháng từ 5 triệu lượt hiển thị. Theo Google, Ad Manager tăng doanh thu của nhà xuất bản lớn lên 15-30% so với AdMob.

Tiêu chíAdMobAd Manager
Đối tượngNhà phát triển độc lậpNhà xuất bản lớn
Direct dealsKhông
App BiddingGiới hạnĐầy đủ
Ngưỡng lưu lượngBất kỳ5M+ lượt hiển thị/tháng
Phân tíchTiêu chuẩnNâng cao

Để di chuyển từ AdMob sang Ad Manager, chỉ cần thay đổi ID đơn vị quảng cáo trong mã ứng dụng — SDK vẫn giữ nguyên (Google Mobile Ads SDK). Google khuyên bắt đầu với AdMob và khi đạt doanh thu hàng tháng $10.000+ thì xem xét chuyển sang Ad Manager. App Bidding — công nghệ chính của Ad Manager, cho phép tất cả các mạng quảng cáo cạnh tranh trong một cuộc đấu giá duy nhất, giúp tăng eCPM lên 10-40%.

Đền bù: kết nối nhiều mạng quảng cáo

Đền bù (Ad Mediation) — công nghệ của Google Mobile Ads cho phép kết nối nhiều mạng quảng cáo vào một đơn vị quảng cáo. Khi SDK yêu cầu quảng cáo, nó lần lượt truy vấn các mạng: đầu tiên Google Ads, sau đó các mạng đối tác (Facebook Audience Network, Unity Ads, AppLovin, IronSource, Mintegral và các mạng khác), chọn mạng có giá thầu cao nhất cho người dùng này.

Google Mobile Ads SDK hỗ trợ đền bù hơn 30 mạng quảng cáo thông qua các bộ chuyển đổi (adapters), được tải dưới dạng các phụ thuộc Gradle riêng biệt. Mỗi bộ chuyển đổi triển khai một giao diện Google thống nhất, cho phép SDK hoạt động nhất quán với bất kỳ mạng nào. Theo Google, đền bù làm tăng tổng doanh thu quảng cáo lên 15-50% so với chỉ sử dụng AdMob. App Bidding — phiên bản nâng cao hơn của đền bù, nơi tất cả các mạng tham gia vào một cuộc đấu giá duy nhất đồng thời, thay vì lần lượt.

kotlin
// Thiết lập đền bù (build.gradle)
dependencies {
    implementation "com.google.android.gms:play-services-ads:23.3.0"
    // Bộ chuyển đổi cho đền bù
    implementation "com.google.ads:mediation-facebook:6.17.0.0"
    implementation "com.google.ads:mediation-unity:4.10.0.0"
    implementation "com.google.ads:mediation-applovin:12.3.0.0"
}

// Khởi tạo Mobile Ads SDK
MobileAds.initialize(this) {
    Log.d("AdMob",
        "Initialized: $it")
}

App Bidding: đấu giá song song

Điểm quan trọng: đền bù làm tăng độ trễ hiển thị quảng cáo vì SDK truy vấn nhiều mạng lần lượt. Đối với banner, điều này không nghiêm trọng (độ trễ chấp nhận được lên tới 2 giây), nhưng đối với interstitial và rewarded, độ trễ hơn 1 giây làm giảm khả năng hiển thị (người dùng có thể rời màn hình). Google khuyên sử dụng App Bidding thay vì đền bù tuần tự để giảm thiểu độ trễ. App Bidding xử lý tất cả giá thầu song song trong 100-200 ms.

Cấu hình Google Mobile Ads trong dự án Android

Việc cấu hình Google Mobile Ads trong ứng dụng Android bắt đầu bằng cách thêm phụ thuộc play-services-ads vào build.gradle và khởi tạo SDK trong lớp Application. Google Mobile Ads SDK yêu cầu Android 5.0 (API 21) và Google Play Services phiên bản 21.0.0+. Nên khởi tạo SDK càng sớm càng tốt — trong Application.onCreate() — để quảng cáo được tải song song với việc khởi chạy ứng dụng.

Sau khi khởi tạo SDK, nhà phát triển tạo một đơn vị quảng cáo trong giao diện web AdMob hoặc Ad Manager và nhúng AdView vào bố cục ứng dụng (cho banner) hoặc tải InterstitialAd/RewardedAd theo chương trình. Quan trọng: sử dụng ID đơn vị quảng cáo thử nghiệm khi phát triển và ID phát hành sau khi xuất bản. Google Mobile Ads SDK tự động xác định chế độ thử nghiệm theo thiết bị được thêm vào Test Devices trong bảng điều khiển AdMob.

kotlin
// Khởi tạo SDK trong lớp Application
class MyApplication : Application() {
    override fun onCreate() {
        super.onCreate()
        MobileAds.initialize(this)

        // Bật chế độ đồng ý GDPR
        val params = RequestConfiguration.Builder()
            .setTagForUnderAgeOfConsent(false)
            .build()
        MobileAds.setRequestConfiguration(params)
    }
}

// Banner inline trong XML
// <com.google.android.gms.ads.AdView
//     android:id="@+id/adView"
//     android:layout_width="match_parent"
//     android:layout_height="wrap_content"
//     app:adUnitId="ca-app-pub-3940256099942544/6300978111"
//     app:adSize="BANNER" />

Sau khi cấu hình SDK và đơn vị quảng cáo, nhà phát triển phải thêm chính sách bảo mật vào ứng dụng — đây là điều kiện bắt buộc của Google để xuất bản trên Play Store. Cũng cần tích hợp SDK UMP (User Messaging Platform) để thu thập sự đồng ý xử lý dữ liệu từ người dùng ở EEA và Vương quốc Anh. Nếu không có SDK UMP, Google có thể hạn chế hiển thị quảng cáo được cá nhân hóa, làm giảm eCPM từ 40-60%.

Quyền riêng tư người dùng và GDPR

Google Mobile Ads yêu cầu tuân thủ các quy tắc bảo mật đối với người dùng từ Khu vực Kinh tế Châu Âu (EEA), Vương quốc Anh, Mỹ (CCPA/CPRA) và các khu vực khác có luật về dữ liệu. Công cụ chính là SDK User Messaging Platform (UMP), hiển thị cho người dùng hộp thoại đồng ý thu thập và xử lý dữ liệu để cá nhân hóa quảng cáo.

Nếu không có sự đồng ý của người dùng về cá nhân hóa, Google Mobile Ads SDK sẽ chỉ hiển thị quảng cáo không được cá nhân hóa, làm giảm eCPM từ 40-60%. TCF v2.0 (Transparency & Consent Framework) — tiêu chuẩn của IAB Europe để truyền tín hiệu đồng ý giữa các hệ thống quảng cáo. Google Ad Manager hỗ trợ TCF v2.0 tự động. Đối với AdMob, cần tích hợp qua SDK UMP với tham số FORMS_PUBLISHER_ID.

kotlin
// Yêu cầu đồng ý người dùng SDK UMP
val consentInfo = UserMessagingPlatform.getConsentInformation(this)

consentInfo.requestConsentInfoUpdate(
    context,
    ConsentRequestParameters.Builder()
        .setTagForUnderAgeOfConsent(false)
        .build()
) { error ->
    if (error != null) return@requestConsentInfoUpdate

    if (consentInfo.isConsentFormAvailable()) {
        UserMessagingPlatform.loadAndShowConsentFormIfRequired(
            activity,
            activity.getOnConsentFormSuccess(),
            activity.getOnConsentFormFailure()
        )
    }
}

TCF v2.0 và tuân thủ GDPR

Các yêu cầu bổ sung: đối với người dùng từ California (CCPA), Google yêu cầu hỗ trợ tùy chọn “Do Not Sell My Personal Information”. Đối với trẻ em (COPPA) — kích hoạt tagForChildDirectedTreatment. Google Play Store yêu cầu tất cả các ứng dụng có quảng cáo phải có chính sách bảo mật và liên kết đến nó trong Google Play Console. Vi phạm các yêu cầu này sẽ dẫn đến việc chặn hiển thị quảng cáo hoặc xóa ứng dụng khỏi Play Store.

Ví dụ mã: hiển thị video có thưởng trên Kotlin

Ví dụ tích hợp đầy đủ quảng cáo có thưởng với xử lý phần thưởng người dùng. Ứng dụng tải video có thưởng khi khởi động, hiển thị khi nhấp vào nút “Nhận thưởng” và thêm xu cho người dùng sau khi xem hết. Mã sử dụng coroutine để tải bất đồng bộ và kiểm tra không hiển thị quảng cáo nếu người dùng đã nhận thưởng (bảo vệ chống thưởng kép).

kotlin
class RewardViewModel : ViewModel() {

    private var rewardedAd: RewardedAd? = null
    private val _rewardEarned = MutableLiveData<Boolean>(false)
    val rewardEarned: LiveData<Boolean> = _rewardEarned

    fun loadRewardedAd(context: Context) {
        RewardedAd.load(context, AD_UNIT_ID,
            AdRequest.Builder().build(),
            object : RewardedAdLoadCallback() {
                override fun onAdLoaded(ad: RewardedAd) {
                    rewardedAd = ad
                }
            }
        )
    }

    fun showAd(activity: Activity) {
        rewardedAd?.show(activity, {
            // Người dùng đã nhận thưởng
            _rewardEarned.postValue(true)
            addCoins(100)
            loadRewardedAd(activity) // Preload next
        })
    }
}

Các phương pháp tốt nhất cho quảng cáo có thưởng: tải trước quảng cáo tiếp theo ngay sau khi đóng quảng cáo hiện tại (người dùng không phải chờ tải). Chỉ hiển thị video có thưởng trong bối cảnh mà phần thưởng rõ ràng (ví dụ: nút “Xem quảng cáo nhận 100 xu”). Google cấm hiển thị quảng cáo có thưởng mà không có yêu cầu rõ ràng từ người dùng (tự động phát bị cấm). Kiểm tra callback onUserEarnedReward — chỉ sau đó mới trao thưởng.

Mẹo tối ưu hóa doanh thu quảng cáo

Tối ưu hóa doanh thu từ Google Mobile Ads bắt đầu bằng việc chọn đúng định dạng quảng cáo. Sự kết hợp của banner (cho doanh thu nền ổn định) và video có thưởng (cho tương tác chủ động) mang lại tổng doanh thu tối đa. Chỉ sử dụng interstitial trong các khoảng dừng tự nhiên — không quá 3-4 lần mỗi phiên. Google Analytics cho Firebase cho phép theo dõi màn hình nào mang lại doanh thu cao nhất và người dùng thường đóng quảng cáo ở đâu.

Yếu tố quan trọng thứ hai là đền bù. Kết nối 3-5 mạng quảng cáo thông qua đền bù AdMob. Theo Google, các ứng dụng có đền bù kiếm được nhiều hơn 30%. App Bidding (khả dụng cho Ad Manager và một phần cho AdMob) mang lại mức tăng thêm 10-40% nhờ đấu giá đồng thời. Kiểm tra A/B vị trí đặt quảng cáo: thử nghiệm các vị trí banner khác nhau (trên/dưới, trái/phải) và tần suất interstitial trên các phân khúc người dùng khác nhau.

Yếu tố thứ ba là nhắm mục tiêu theo khu vực địa lý. eCPM ở Mỹ, Canada và Úc cao gấp 3-5 lần so với Ấn Độ hoặc Indonesia. Nếu ứng dụng của bạn phổ biến ở các khu vực có eCPM thấp, Google khuyên sử dụng đền bù waterfall với các mạng từ các khu vực này (ví dụ: InMobi cho Ấn Độ). Cấu hình giới hạn tần suất: không quá 1 interstitial mỗi 2 phút và không quá 5 video có thưởng mỗi giờ — điều này làm giảm sự mệt mỏi về quảng cáo của người dùng.

Câu hỏi thường gặp

Làm thế nào để kiếm tiền từ Google Mobile Ads trong năm 2026?

Thu nhập trung bình trên mỗi người dùng khi tích hợp đúng cách là $0.50-2.00 mỗi tháng. Sử dụng kết hợp các định dạng: banner cho doanh thu cơ bản, video có thưởng cho kiếm tiền chủ động và interstitial trong các khoảng dừng tự nhiên. Bắt buộc kết nối đền bù và SDK UMP cho GDPR. Doanh thu cao nhất đến từ người dùng ở Mỹ và Châu Âu.

Các yêu cầu của Google để hiển thị quảng cáo trong ứng dụng là gì?

Các yêu cầu chính: tài khoản AdMob, chính sách bảo mật trong ứng dụng, tích hợp SDK UMP để thu thập sự đồng ý của người dùng EEA, xếp hạng độ tuổi ứng dụng trong Google Play Console. Google Play Store yêu cầu tất cả các ứng dụng có quảng cáo phải chỉ rõ điều này khi xuất bản và tuân thủ chính sách nội dung không phù hợp của Google Ads.

App Bidding là gì và khác gì so với đền bù?

App Bidding — công nghệ mà tất cả các mạng quảng cáo cùng tham gia đấu giá cho một lần hiển thị quảng cáo. Người thắng được xác định trong 100-200 ms. Khác với đền bù tuần tự (nơi các mạng được hỏi lần lượt), App Bidding tăng doanh thu lên 10-40% và giảm độ trễ hiển thị. App Bidding khả dụng trong Google Ad Manager và một phần trong AdMob.

Tại sao eCPM trong ứng dụng của tôi thấp?

eCPM thấp có thể do: khu vực người dùng (ở Châu Á và Châu Phi eCPM thấp hơn), sai định dạng (banner cho thu nhập thấp hơn rewarded), thiếu đền bù (chỉ AdMob), cấu hình UMP sai (không có đồng ý cá nhân hóa) hoặc tỷ lệ trình chặn quảng cáo cao. Kiểm tra phân tích AdMob và cấu hình App Bidding.

Có thể hiển thị quảng cáo cho trẻ em theo COPPA không?

Có, nhưng có giới hạn. Ứng dụng phải kích hoạt tagForChildDirectedTreatment(true) trong RequestConfiguration. Google sẽ chỉ hiển thị quảng cáo an toàn không cá nhân hóa. eCPM cho ứng dụng trẻ em thấp hơn 60-80%. Trong Google Play Console cần chỉ rõ đối tượng mục tiêu của ứng dụng. Vi phạm COPPA sẽ dẫn đến khóa tài khoản AdMob.

Tổng kết

  • Google Mobile Ads — SDK kiếm tiền ứng dụng qua AdMob và Ad Manager hỗ trợ tất cả định dạng quảng cáo
  • Định dạng — banner (eCPM $0.5-2), interstitial ($3-15), rewarded ($10-30) và quảng cáo gốc (CTR 0.5-2%)
  • AdMob — cho nhà phát triển độc lập với tự động điền đầy vị trí quảng cáo và đền bù tích hợp
  • Ad Manager — cho nhà xuất bản lớn với giao dịch trực tiếp và App Bidding đầy đủ
  • Đền bù — kết nối 3-5 mạng quảng cáo giúp tăng doanh thu 15-50%
  • GDPR — tích hợp bắt buộc SDK UMP để thu thập sự đồng ý của người dùng EEA
  • Tối ưu hóa — kết hợp định dạng, đền bù, kiểm tra A/B và nhắm mục tiêu địa lý tối đa hóa doanh thu

Chúng tôi sẽ phát triển ứng dụng di động chìa khóa trao tay

IT Sectr tạo các ứng dụng iOS và Android cho các công ty khởi nghiệp và doanh nghiệp từ năm 2017. Chúng tôi sẽ tư vấn và đề xuất giải pháp tốt nhất cho bạn.

Thảo luận dự án

Đọc thêm