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.4k
広告実装、こうすると幸せだよ
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
750
アプリ開発と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
UPDATEがシステムを複雑にする? イミュータブルデータモデルのすすめ
shimomura
1
520
Elixir で IoT 開発、 Nerves なら簡単にできる!?
pojiro
1
120
ktr0731/go-mcpでMCPサーバー作ってみた
takak2166
0
150
Passkeys for Java Developers
ynojima
2
830
TypeScript LSP の今までとこれから
quramy
1
490
ReadMoreTextView
fornewid
0
260
生成AIで日々のエラー調査を進めたい
yuyaabo
0
500
Prism.parseで 300本以上あるエンドポイントに 接続できる権限の一覧表を作ってみた
hatsu38
1
110
セキュリティマネジャー廃止とクラウドネイティブ型サンドボックス活用
kazumura
1
160
漸進。
ssssota
0
1.8k
try-catchを使わないエラーハンドリング!? PHPでResult型の考え方を取り入れてみよう
kajitack
3
490
Perplexity Slack Botを作ってAI活用を進めた話 / AI Engineering Summit プレイベント
n3xem
0
620
Featured
See All Featured
KATA
mclloyd
29
14k
Stop Working from a Prison Cell
hatefulcrawdad
269
20k
Scaling GitHub
holman
459
140k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Gamification - CAS2011
davidbonilla
81
5.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
We Have a Design System, Now What?
morganepeng
52
7.6k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Facilitating Awesome Meetings
lara
54
6.4k
Being A Developer After 40
akosma
90
590k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
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にも似たような機能があります
ご静聴ありがとうございました