Монетизация через рекламу: Google, Meta и программатик-платформы
Реклама — старейшая и наиболее масштабируемая бизнес-модель интернета. Разбираем, как Google и Meta зарабатывают сотни миллиардов долларов на внимании пользователей.
Advertising-based model — бизнес-модель, в которой компания предоставляет пользователям бесплатный сервис, а монетизирует их внимание через показ рекламы. Доход генерируется через:
| Параметр | Значение |
|---|---|
| Барьер входа | Высокий (нужна критическая масса пользователей) |
| Маржинальность | 60-80% после масштабирования |
| Масштабируемость | Очень высокая |
| Зависимость от данных | Критическая |
| Регуляторные риски | Высокие (GDPR, CCPA, антимонополь) |
Google Search — крупнейшая рекламная платформа в мире. В 2023 году выручка Google от рекламы составила $237 млрд, из которых ~$175 млрд — поисковая реклама.
┌─────────────┐ ┌──────────────┐ ┌─────────────┐
│ Пользователь│ ──▶ │ Поиск │ ──▶ │ Реклама │
│ вводит запр.│ │ алгоритм │ │ аукцион │
└─────────────┘ └──────────────┘ └─────────────┘
│ │
▼ ▼
┌──────────────┐ ┌─────────────┐
│ Ранжировка │ │ Показ │
│ результатов│ │ рекламы │
└──────────────┘ └─────────────┘
1. Поисковый индекс
2. Рекламный аукцион
# Упрощённая логика аукциона Google Ads
def run_auction(query, advertisers):
"""
Аукцион второй цены с учётом Quality Score
"""
bids = []
for adv in advertisers:
# Quality Score = CTR * релевантность * landing page experience
quality_score = calculate_quality_score(adv, query)
effective_bid = adv.bid * quality_score
bids.append((adv, effective_bid))
# Сортировка по эффективной ставке
bids.sort(key=lambda x: x[1], reverse=True)
# Победитель платит цену второй ставки + $0.01
winner = bids[0][0]
price = bids[1][1] / calculate_quality_score(winner, query) + 0.01
return winner, price3. ML-модели
| Метрика | Значение |
|---|---|
| Ежедневные запросы | 8.5 млрд |
| CTR рекламных объявлений | 3-5% |
| Средний CPC | $1-2 (зависит от ниши) |
| Revenue per query | ~$0.03 |
Google использует AI для:
Meta зарабатывает $117 млрд в год (2023) на рекламе в социальных сетях. 98% выручки — рекламный бизнес.
| Параметр | Meta | |
|---|---|---|
| Тип трафика | Поисковый (intent-based) | Ленточный (discovery-based) |
| Данные для таргетинга | Поисковые запросы | Социальный граф, интересы |
| Форматы | Текстовые объявления | Фото, видео, stories, reels |
| Аудитория | Активный поиск | Пассивное потребление |
1. Социальный граф
2. Рекламная система
┌─────────────────────────────────────────────────────────┐
│ Meta Ads Manager │
├─────────────────────────────────────────────────────────┤
│ Campaign → Ad Set → Ad │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ Цель Аудитория Креатив │
│ (трафик, (lookalike, (фото, видео, │
│ конверсия) retargeting) карусель) │
└─────────────────────────────────────────────────────────┘
3. ML-модели для таргетинга
Apple ввела ATT (App Tracking Transparency), что ограничило сбор IDFA:
# Упрощённая модель предсказания конверсии без IDFA
def predict_conversion(user_features, ad_features, context_features):
"""
ML-модель предсказывает вероятность конверсии
на основе агрегированных данных
"""
# user_features: демография, устройство, геолокация
# ad_features: категория, креатив, формат
# context_features: время, место в ленте
embedding = model.encode(user_features, ad_features, context_features)
probability = model.predict(embedding)
return probability┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ DSP │ ──▶ │ Ad Exchange│ ◀─ │ SSP │
│ (Demand- │ │ (биржа) │ │ (Supply- │
│ Side │ │ │ │ Side) │
│ Platform) │ │ │ │ │
└─────────────┘ └─────────────┘ └─────────────┘
│ │
▼ ▼
┌─────────────┐ ┌─────────────┐
│ Рекламодатель│ │ Издатель │
│ (бренд) │ │ (сайт) │
└─────────────┘ └─────────────┘
DSP (Demand-Side Platform) — платформа для рекламодателей:
SSP (Supply-Side Platform) — платформа для издателей:
Ad Exchange — биржа для RTB-аукционов
Процесс происходит за 100-200 мс до загрузки страницы:
# Псевдокод RTB-аукциона
def rtb_auction(user_data, page_context):
bid_requests = send_to_dsp(user_data, page_context)
bids = []
for dsp in bid_requests:
if dsp.wants_to_bid(user_data):
bid = dsp.calculate_bid(user_data)
bids.append(bid)
winner = max(bids)
return winner.ad_creative| Компонент | Требования |
|---|---|
| Хранилище данных | Petabyte-scale (BigQuery, Snowflake) |
| Обработка в реальном времени | Kafka, Flink, Spark Streaming |
| ML-инфраструктура | TensorFlow Serving, TorchServe |
| CDN | Глобальная доставка креативов |
| Трекинг | Cookie, device fingerprinting, server-side API |
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Клиентские │ ──▶ │ Kafka │ ──▶ │ Flink/ │
│ события │ │ (очередь) │ │ Spark │
└─────────────┘ └─────────────┘ └─────────────┘
│
▼
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Отчётность │ ◀── │ Data │ ◀── │ ML │
│ (BigQuery) │ │ Warehouse │ │ Features │
└─────────────┘ └─────────────┘ └─────────────┘
Revenue = Impressions × CPM / 1000
Revenue = Clicks × CPC
Revenue = Conversions × CPA
eCPM = Revenue / Impressions × 1000
Fill Rate = Impressions / Ad Requests × 100%
| Индустрия | CPM (display) | CPC (search) |
|---|---|---|
| E-commerce | $5-15 | $1-3 |
| Finance | $20-50 | $5-15 |
| Travel | $10-25 | $2-5 |
| Tech | $15-30 | $3-8 |
| Games | $8-20 | $1-4 |
Frontend:
- Ad server SDK (JavaScript, iOS, Android)
- Header bidding wrapper (Prebid.js)
Backend:
- Ad server (Google GAM, Xandr, собственный)
- RTB exchange (для programmatic)
- Data warehouse (BigQuery, Snowflake)
ML:
- CTR prediction model
- Fraud detection model
- Budget optimizationAdvertising-based model остаётся доминирующей в интернете, но трансформируется:
Для технических специалистов ключевые компетенции:
Вопросы ещё не добавлены
Вопросы для этой подтемы ещё не добавлены.