Google Mobile Ads — to SDK od Google do wyświetlania reklam w aplikacjach mobilnych, obejmujące AdMob i Google Ad Manager. SDK obsługuje wszystkie główne formaty: banery, reklamy międzystronicowe (interstitial), wideo z nagrodą (rewarded) i reklamy natywne. Google Mobile Ads SDK przetwarza ponad 1 bilion zapytań reklamowych rocznie i jest używany w 80% aplikacji z monetyzacją reklamową. Według danych Google AdMob Documentation, 2025, średni dochód na użytkownika przy prawidłowej integracji wynosi $0.50-2.00 miesięcznie.
Najważniejsze
Google Mobile Ads — to platforma reklamowa Google dla aplikacji mobilnych, udostępniająca SDK do wyświetlania reklam i narzędzia analityki dochodu. Platforma obejmuje dwa główne systemy: AdMob (dla niezależnych programistów) i Google Ad Manager (dla dużych wydawców z bezpośrednimi kampaniami reklamowymi). Oba systemy używają tego samego Google Mobile Ads SDK, co ułatwia migrację między platformami.
Podstawą działania Google Mobile Ads jest aukcja w czasie rzeczywistym (RTB — Real-Time Bidding). Gdy aplikacja żąda wyświetlenia reklamy, SDK wysyła zapytanie do serwerów Google, gdzie algorytmy analizują profil użytkownika, kontekst aplikacji i dostępne kampanie reklamowe. Zwycięzca aukcji jest określany w ciągu 100-300 milisekund — im wyższa stawka reklamodawcy, tym większy dochód programisty. Według danych Google (2025), średni eCPM dla aplikacji Android wynosi $5-15.
eCPM (effective Cost Per Mille) — kluczowy wskaźnik monetyzacji, pokazujący dochód za 1000 wyświetleń. eCPM zależy od regionu użytkownika (w USA i Europie wyższy, w Azji niższy), formatu reklamy (rewarded wideo daje eCPM $10-30, banery — $0.50-2) i pory roku (w grudniu eCPM jest wyższy o 30-50%). Google Mobile Ads SDK automatycznie optymalizuje wyświetlenia pod kątem maksymalnego eCPM poprzez aukcję.
Banery reklamowe — prostokątne bloki o stałym rozmiarze (320x50 — standardowy, 320x100 — duży, 300x250 — średni). Banery umieszcza się na dole lub na górze ekranu i zajmują minimum miejsca. Minus: niski eCPM ($0.50-2) i przyzwyczajenie użytkowników — Click-Through Rate (CTR) banerów wynosi 0.05-0.5%. Banery automatycznie odświeżają się co 30-60 sekund, ale Google zaleca odświeżanie nie częściej niż co 60 sekund dla zachowania User Experience.
Interstitial (reklama międzystronicowa) — reklama pełnoekranowa wyświetlana w naturalnych przerwach aplikacji (między poziomami gry, przy przejściu między ekranami). Interstitial daje eCPM $3-15, ale wymaga ostrożnego umiejscowienia — częste wyświetlanie irytuje użytkowników. Google ogranicza częstotliwość: nie więcej niż jeden interstitial na minutę. Według Google, przy prawidłowym umiejscowieniu interstitial nie obniża retention użytkowników o więcej niż 5%.
Rewarded (reklama z nagrodą) — wideo, za obejrzenie którego użytkownik otrzymuje bonus (dodatkowe życia, monety, dostęp premium). Najdroższy format z eCPM $10-30 i wysokim zaangażowaniem użytkowników — 80% użytkowników zgadza się na oglądanie rewarded wideo. Ważne: nagroda musi być znacząca dla użytkownika, w przeciwnym razie nie będzie oglądał reklam. Rewarded interstitial — format hybrydowy (nagroda bez obowiązkowego oglądania), dostępny od SDK 21.0.0.
// Ładowanie i wyświetlanie 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)
}
}
)
}
}Native Ads — reklama wizualnie dostosowana do projektu aplikacji: programista kontroluje położenie tytułu, opisu, obrazu i przycisku wezwania do działania. Native ads dają najwyższy CTR (0.5-2%) spośród wszystkich formatów i najlepiej integrują się z UX aplikacji. Google Mobile Ads SDK udostępnia szablony reklam natywnych (NativeTemplate) lub pełną kontrolę przez NativeAdOptions. Format ad_source_type pokazuje, z której sieci pochodzi kreacja natywna.
AdMob — platforma reklamowa Google dla aplikacji mobilnych, przeznaczona dla niezależnych programistów i małych studiów. AdMob oferuje automatyczne wypełnianie miejsc reklamowych poprzez aukcję, prostą konfigurację przez interfejs webowy i wbudowaną mediację z 30+ sieciami reklamowymi. Próg wypłaty środków: $100. AdMob jest odpowiedni dla 90% programistów, w tym średnich studiów z dochodem do $100 000 miesięcznie.
Google Ad Manager — zaawansowana platforma dla dużych wydawców z własnymi kampaniami reklamowymi (direct deals), gwarancjami programatycznymi i priorytetyzacją źródeł. Ad Manager obsługuje wiele serwerów reklamowych, konkurencyjną aukcję (App Bidding) i szczegółową analitykę dla każdego reklamodawcy. Do podłączenia Ad Manager wymagany jest miesięczny ruch od 5 milionów wyświetleń. Według Google, Ad Manager zwiększa dochód dużych wydawców o 15-30% w porównaniu z AdMob.
| Kryterium | AdMob | Ad Manager |
|---|---|---|
| Grupa docelowa | Niezależni programiści | Duzi wydawcy |
| Direct deals | Nie | Tak |
| App Bidding | Ograniczony | Pełny |
| Próg ruchu | Dowolny | 5M+ wyświetleń/m-c |
| Analityka | Standardowa | Rozszerzona |
Do migracji z AdMob na Ad Manager wystarczy zmienić Ad Unit ID w kodzie aplikacji — SDK pozostaje ten sam (Google Mobile Ads SDK). Google zaleca zaczynać od AdMob, a po osiągnięciu miesięcznego dochodu $10 000+ rozważyć przejście na Ad Manager. App Bidding — kluczowa technologia Ad Manager, pozwalająca wszystkim sieciom reklamowym konkurować w jednej aukcji, co zwiększa eCPM o 10-40%.
Mediacja (Ad Mediation) — technologia Google Mobile Ads, która pozwala podłączyć wiele sieci reklamowych do jednego Ad Unit. Gdy SDK żąda reklamy, kolejno odpytuje sieci: najpierw Google Ads, następnie sieci partnerskie (Facebook Audience Network, Unity Ads, AppLovin, IronSource, Mintegral i inne), wybierając sieć z najwyższą stawką dla danego użytkownika.
Google Mobile Ads SDK obsługuje mediację ponad 30 sieci reklamowych poprzez adaptery (adapters), które są ładowane jako osobne zależności Gradle. Każdy adapter implementuje jednolity interfejs Google, co pozwala SDK jednolicie współpracować z dowolną siecią. Według Google, mediacja zwiększa całkowity dochód z reklam o 15-50% w porównaniu z używaniem tylko AdMob. App Bidding — bardziej zaawansowana wersja mediacji, gdzie wszystkie sieci uczestniczą w jednej aukcji jednocześnie, a nie sekwencyjnie.
// Konfiguracja mediacji (build.gradle)
dependencies {
implementation "com.google.android.gms:play-services-ads:23.3.0"
// Adaptery do mediacji
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"
}
// Inicjalizacja Mobile Ads SDK
MobileAds.initialize(this) {
Log.d("AdMob",
"Initialized: $it")
}Ważna uwaga: mediacja zwiększa opóźnienie wyświetlania reklam, ponieważ SDK odpytuje kilka sieci sekwencyjnie. Dla banerów nie jest to krytyczne (dopuszczalne opóźnienie — do 2 sekund), ale dla interstitial i rewarded opóźnienie powyżej 1 sekundy zmniejsza prawdopodobieństwo wyświetlenia (użytkownik może opuścić ekran). Google zaleca używanie App Bidding zamiast sekwencyjnej mediacji w celu minimalizacji opóźnień. App Bidding przetwarza wszystkie oferty równolegle w ciągu 100-200 ms.
Konfiguracja Google Mobile Ads w aplikacji Android zaczyna się od dodania zależności play-services-ads w build.gradle i inicjalizacji SDK w klasie Application. Google Mobile Ads SDK wymaga Android 5.0 (API 21) i Google Play Services w wersji 21.0.0+. Zaleca się inicjalizację SDK jak najwcześniej — w Application.onCreate() — aby reklama ładowała się równolegle z uruchomieniem aplikacji.
Po inicjalizacji SDK programista tworzy Ad Unit w interfejsie webowym AdMob lub Ad Manager i osadza AdView w layout aplikacji (dla banerów) lub ładuje InterstitialAd/RewardedAd programowo. Ważne: używać testowego Ad Unit ID podczas programowania i produkcyjnego ID po publikacji. Google Mobile Ads SDK automatycznie określa tryb testowy na podstawie urządzenia dodanego do Test Devices w konsoli AdMob.
// Inicjalizacja SDK w klasie Application
class MyApplication : Application() {
override fun onCreate() {
super.onCreate()
MobileAds.initialize(this)
// Włączenie trybu zgody RODO
val params = RequestConfiguration.Builder()
.setTagForUnderAgeOfConsent(false)
.build()
MobileAds.setRequestConfiguration(params)
}
}
// Baner inline w 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" />Po skonfigurowaniu SDK i Ad Units programista musi dołączyć politykę prywatności w aplikacji — to obowiązkowy warunek Google do publikacji w Play Store. Wymagana jest również integracja UMP SDK (User Messaging Platform) do zbierania zgody na przetwarzanie danych użytkowników z EEA i Wielkiej Brytanii. Bez UMP SDK Google może ograniczyć wyświetlanie spersonalizowanych reklam, co obniży eCPM o 40-60%.
Google Mobile Ads wymaga przestrzegania zasad prywatności dla użytkowników z Europejskiego Obszaru Gospodarczego (EOG), Wielkiej Brytanii, USA (CCPA/CPRA) i innych regionów z przepisami o danych. Głównym narzędziem jest User Messaging Platform (UMP) SDK, który wyświetla użytkownikowi okno dialogowe zgody na zbieranie i przetwarzanie danych do personalizacji reklam.
Bez uzyskania zgody użytkownika na personalizację Google Mobile Ads SDK będzie wyświetlać tylko niespersonalizowane reklamy, co obniża eCPM o 40-60%. TCF v2.0 (Transparency & Consent Framework) — standard IAB Europe do przekazywania sygnałów zgody między systemami reklamowymi. Google Ad Manager obsługuje TCF v2.0 automatycznie. Dla AdMob wymagana jest integracja przez UMP SDK z parametrem FORMS_PUBLISHER_ID.
// UMP SDK żądanie zgody użytkownika
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()
)
}
}Dodatkowe wymagania: dla użytkowników z Kalifornii (CCPA) Google wymaga wsparcia opcji „Nie sprzedawaj moich danych osobowych”. Dla dzieci (COPPA) — aktywacja tagForChildDirectedTreatment. Google Play Store wymaga, aby wszystkie aplikacje z reklamami miały politykę prywatności i link do niej w Google Play Console. Naruszenie tych wymagań prowadzi do blokady wyświetlania reklam lub usunięcia aplikacji z Play Store.
Pełny przykład integracji reklamy rewarded z obsługą nagrody użytkownika. Aplikacja ładuje rewarded wideo przy starcie, wyświetla je po naciśnięciu przycisku „Odbierz bonus” i przyznaje monety użytkownikowi po całkowitym obejrzeniu. Kod używa coroutine do asynchronicznego ładowania i sprawdza, czy reklama nie jest wyświetlana, jeśli użytkownik już otrzymał nagrodę (guard against double reward).
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, {
// Użytkownik otrzymał nagrodę
_rewardEarned.postValue(true)
addCoins(100)
loadRewardedAd(activity) // Preload next
})
}
}Najlepsze praktyki dla reklam rewarded: wczytuj następną reklamę natychmiast po zamknięciu bieżącej (użytkownik nie czeka na ładowanie). Wyświetlaj rewarded wideo tylko w kontekście, gdzie nagroda jest oczywista (np. przycisk „Oglądaj reklamę za 100 monet”). Google zabrania wyświetlania reklam rewarded bez wyraźnego żądania użytkownika (autoplay jest zabroniony). Sprawdzaj callback onUserEarnedReward — dopiero po nim przyznawaj nagrodę.
Optymalizacja dochodu z Google Mobile Ads zaczyna się od prawidłowego wyboru formatów reklamowych. Połączenie banerów (do stałego dochodu w tle) i rewarded wideo (do aktywnej interakcji) daje maksymalny całkowity dochód. Interstitial używaj tylko w naturalnych przerwach — nie częściej niż 3-4 razy na sesję. Google Analytics dla Firebase pozwala śledzić, które ekrany przynoszą największy dochód i gdzie użytkownicy najczęściej zamykają reklamy.
Drugim ważnym czynnikiem jest mediacja. Podłącz 3-5 sieci reklamowych przez AdMob mediation. Według Google, aplikacje z mediacją zarabiają o 30% więcej. App Bidding (dostępny dla Ad Manager i częściowo dla AdMob) daje dodatkowy wzrost o 10-40% dzięki jednoczesnej aukcji. Testy A/B umiejscowienia reklam: testuj różne pozycje banerów (góra/dół, lewo/prawo) i częstotliwość interstitial na różnych segmentach użytkowników.
Trzecim czynnikiem jest geotargetowanie. eCPM w USA, Kanadzie i Australii jest 3-5 razy wyższy niż w Indiach czy Indonezji. Jeśli Twoja aplikacja jest popularna w regionach z niskim eCPM, Google zaleca używanie mediacji waterfall z sieciami z tych regionów (np. InMobi dla Indii). Ustaw limit częstotliwości (frequency cap): nie więcej niż 1 interstitial co 2 minuty i nie więcej niż 5 rewarded wideo na godzinę — to zmniejsza zmęczenie użytkowników reklamami.
Często zadawane pytania
Średni dochód na użytkownika wynosi $0.50-2.00 miesięcznie przy prawidłowej integracji. Używaj kombinacji formatów: banery do podstawowego dochodu, rewarded wideo do aktywnej monetyzacji i interstitial w naturalnych przerwach. Koniecznie podłącz mediację i UMP SDK dla RODO. Największy dochód przynoszą użytkownicy z USA i Europy.
Podstawowe wymagania: konto AdMob, polityka prywatności w aplikacji, integracja UMP SDK do zbierania zgody użytkowników EOG, ocena wiekowa aplikacji w Google Play Console. Google Play Store wymaga, aby wszystkie aplikacje z reklamami wskazywały to przy publikacji i przestrzegały polityki nieodpowiednich treści Google Ads.
App Bidding — technologia, w której wszystkie sieci reklamowe jednocześnie uczestniczą w aukcji o wyświetlenie reklamy. Zwycięzca jest określany w ciągu 100-200 ms. W przeciwieństwie do mediacji sekwencyjnej (gdzie sieci są odpytowywane po kolei), App Bidding zwiększa dochód o 10-40% i zmniejsza opóźnienie wyświetlania. App Bidding jest dostępny w Google Ad Manager i częściowo w AdMob.
Niski eCPM może być spowodowany: regionem użytkowników (w Azji i Afryce eCPM jest niższy), niewłaściwym formatem (banery dają mniej niż rewarded), brakiem mediacji (tylko AdMob), nieprawidłową konfiguracją UMP (brak zgody na personalizację) lub dużym procentem blokerów reklam. Sprawdź analitykę AdMob i skonfiguruj App Bidding.
Tak, ale z ograniczeniami. Aplikacja musi aktywować tagForChildDirectedTreatment(true) w RequestConfiguration. Google będzie wyświetlać tylko bezpieczne reklamy bez personalizacji. eCPM dla aplikacji dziecięcych jest niższy o 60-80%. W Google Play Console należy określić grupę docelową aplikacji. Za naruszenie COPPA — blokada konta AdMob.
Podsumowanie
Opracujemy aplikację mobilną pod klucz
IT Sectr tworzy aplikacje na iOS i Androida dla startupów i firm od 2017 roku. Doradzimy Ci i zaproponujemy najlepsze rozwiązanie.
Przeczytaj również