Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
広告実装、こうすると幸せだよ
Search
ryokosuge
October 01, 2019
Programming
6
1.5k
広告実装、こうすると幸せだよ
potatotips #65で登壇した資料です
ryokosuge
October 01, 2019
Tweet
Share
More Decks by ryokosuge
See All by ryokosuge
6年ほど育ったiOSプロジェクトを刷新した話 / Renewed iOS project that grew up for about 6 years
ryokosuge
2
760
アプリ開発とSDK開発の違い
ryokosuge
1
630
広告実装の苦しみ
ryokosuge
0
400
アプリを十数個作った僕が初めて書いたテストの話
ryokosuge
2
2.3k
広告SDKを駆使して 売り上げを5倍にした
ryokosuge
2
4.1k
早期発見プロジェクト
ryokosuge
0
56
Other Decks in Programming
See All in Programming
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
360
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
24
9.6k
NPOでのDevinの活用
codeforeveryone
0
900
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
1.1k
Startups on Rails in Past, Present and Future–Irina Nazarova, RailsConf 2025
irinanazarova
0
250
ペアプロ × 生成AI 現場での実践と課題について / generative-ai-in-pair-programming
codmoninc
2
21k
Python型ヒント完全ガイド 初心者でも分かる、現代的で実践的な使い方
mickey_kubo
1
240
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
870
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
620
可変変数との向き合い方 $$変数名が踊り出す$$ / php conference Variable variables
gunji
0
180
20250708_JAWS_opscdk
takuyay0ne
2
130
TypeScriptでDXを上げろ! Hono編
yusukebe
3
770
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
We Have a Design System, Now What?
morganepeng
53
7.7k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Fireside Chat
paigeccino
37
3.5k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Visualization
eitanlees
146
16k
Speed Design
sergeychernyshev
32
1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Writing Fast Ruby
sferik
628
62k
Transcript
広告実装、こうすると幸せだよ potatotips #65 2019/10/01 ryokosuge
自己紹介 Twitter: @ryo_kosuge GitHub: ryokosuge • 株式会社fluct ◦ SSP開発本部 SDKチーム
▪ 主にFluctSDK iOSの 開発してます ◦ 入社して1年経ちそう • 前職はマンガアプリ作ってまし た
アジェンダ • はじめに • バナー実装 ◦ refresh rate ◦ Scroll(Table、Collection)View
• 動画リワード実装 ◦ retry処理 ◦ 動画リワードSSPってなに? • まとめ
はじめに
はじめに • 今回はアプリに特化したお話です ◦ Webも話せなくもないけど、基本タグを貼って終わりが一番ので • 広告用語が少し出てくるかと思いますが、簡単に説明するのでわからないこ とあったら懇親会で聞いてください ◦ ググれなんて言わない気持ち
バナー実装
バナー実装(refresh rate) • refresh rateはいじらないほうがいい ◦ refresh rate ▪ バナー広告のリフレッシュ
= 切り替え時間 ◦ 各社がrefresh rateに対して最適解を持っている ▪ 実装で変えられる広告SDKも多いですが、ほぼ全てが管理画面で変 えられるようになっています
バナー実装(refresh rate) • refresh rateを短くするとどうなるか ◦ 広告の切り替え間隔が短くなる ▪ つまり imp
が増える ◦ ユーザーの広告を認識する時間が短くなる ▪ click数が減る ◦ impが増えてclickが減ると枠の価値が下がる ▪ 表示回数多いのにclickが少ない枠と認識される • 結果効果の高い広告が配信されなくなり、さらに価値の薄い枠になる
バナー実装(Scroll View) • 適切なタイミングで広告表示Requestを飛ばすべき ◦ TableView / CollectionViewのcell返す時に毎回リクエストするのはダ メ ▪
impだけ爆発的に伸びる可能性がある • refresh rateと同じ ◦ そもそもCellでバナー表示をするのはスクロールがカクついたりするた めあまりオススメしない ▪ 広告SDKもそれように作られていないことが多い
バナー実装(Scroll View) • 一度生成したら使い回す手法を取り入れる ◦ 初回にRequest飛ばしたらあとはrefresh rateに身を任す ◦ 画面から表示されなくなるタイミングでrequestを止められる広告SDK もある
▪ 公開methodがなくても内部で実行されている場合もある
動画リワード
動画リワード(retry処理) • 無限にリトライするのはダメ絶対 ◦ 読み込みに失敗する理由はたくさんあるけど大きく分けて3つ ▪ Network Error • 通信環境がよろしくない
• 数秒あけてretry処理を挟むなどするのが良い ▪ 内部処理エラー • 案件によってエラーになっていることもあるのでretryして別案件を引ければ良い ▪ No Ad • 広告在庫がない ◦ 在庫なしなのですぐに在庫が復活するわけではない
動画リワード(retry処理) • No Adの場合どうしたら良いの? ◦ 違うADNWへパスバックするのが良い ◦ 動画リワードは売り上げを高くするためにfloor priceをあげていること が多い
▪ 営業担当者にお願いしてfloor price運用から在庫埋めるほうの運用 に差し替えてもらう(もしくは管理画面で) • 売り上げと在庫を両方担保したい気持ち、わかる
動画リワード(SSPって何?) • SSP = Supply-Side Platform ◦ 要は広告面の収益を最大化させるためためのplatform • SSPは各ADNWの中から最適な広告を表示させるために色々頑張る
◦ 最適な広告 = 枠収益最大化させる広告 • 動画リワードのSSPって何? ◦ 最適解のロジックはSSP側が持っていて、読み込みや再生は各ADNWの SDKで行われる ◦ どこのADNWの動画リワードを再生させると売り上げが最大化するのか
動画リワード(SSPって何?) • 動画リワードSSPをやっている会社さんはたくさんのADNWと連携している ◦ 運用も各社すごいやっている ◦ しっかり全requestに対して広告を返せるように細かい運用をしている ▪ あるADNWはfloor price引いて収益最大化を目指し、あるADNWは
在庫を返すことを目指すなどなど • 1つの枠に対してSSPなSDKを組み込むことでパスバック処理を書かなくても よくなる ◦ 各ADNWへの処理はSSPなSDKが対応しているので気にしなくて済む
まとめ
まとめ • バナーは適切なタイミングでrequestをするように心がける ◦ refresh rateとかをアプリ実装でいじらないほうがいい • 動画リワードのretry処理を見誤るとたくさんrequest飛ばすけど再生されな い枠認定されてしまう ◦
No Adがでた時はユーザーに在庫ないことをお知らせする ◦ 違う広告SDKへパスバックしてどうにか在庫を確保する • 動画リワードSSPなSDKを使うと複数のADNWをまとめて管理してくれる ◦ 実はAdMobにも似たような機能があります
ご静聴ありがとうございました