如何利用算法优化广告效果

效果广告以超过67%的占比,成为了中国互联网广告预算的大头。在BAT、字节等大的媒体平台上,效果广告以CPC实时竞价广告为主。在这种广告产品的投放中,广告主或其代理公司通过针对每个广告点击出价,系统自动把这些点击出价换算成eCPM,根据eCPM价格来决定优先展示哪个广告。

效果广告投放的两难境地:转化成本 VS 转化量

在这个流程中,效果广告主面临着一种微妙的处境:如果对每个广告点击出价太低,虽然可以控制转化成本,但是有可能竞争不到广告曝光量;如果出价太高,虽然能竞争到更多的曝光量,但是有可能会导致转化成本过高。广告主处于转化成本和转化量之间的两难处境。

因此,在传统的效果广告投放中,广告优化人员除了要不断优化物料及用户标签的选择,还需要根据投放后的数据,频繁地调整出价。这种状况,究其根本,是因为整个媒体平台的广告流量是个“黑盒”,广告主不知道里面究竟有哪些流量是适合自己的,只能通过广告优化人员投放后的结果来一点点尝试。

在传统的效果广告中,广告优化人员最担心的,是碰到太多“会吃掉诱饵但是不会上钩的鱼”,也就是点击了广告却没有转化的人群。这些人群包括以下类型:

  1. 对互联网不够熟悉的人群:例如边远地区人群、中老年人群,如果你看一下广告投放系统的后台统计数据,会发现这些人群的点击率往往是最高的,原因是他们不太能分得清广告和媒体的内容。
  2. 会被活动奖励吸引的人群:例如,某汽车客户投放广告,引导用户参加线下活动,用户踊跃报名,但是现场来的却有很多未成年人,根本不是该客户的目标人群。更别提众多的“羊毛党”了,导致游戏行业等有奖活动较多的广告主,还需要在活动中专门设置一些防羊毛党的手段。
  3. 被物料诱导的人群:为了吸引用户点击,一些广告物料中会植入帅哥、美女、萌宠或者受欢迎的明星形象等,一些不太规范的媒体平台还会上线一些容易导致误点击的物料。点击了这些物料的人群往往是被物料本身诱导甚至误点击,转化的概率当然就很小了。

广告优化人员想在媒体平台的海量用户中,找到那些真正对广告主的产品感兴趣,不仅会点击广告、也会最终形成转化或购买的人群,从而找到转化成本和转化量的最佳平衡点。面对这样的需求,我们可以提供什么样的产品呢?

平衡:转化优化产品的诞生

在这个方面,Facebook率先推出了自家的转化优化产品:Optimized Cost Per 1000 Impressions,直译为“优化后的CPM”,简称oCPM。区别于Facebook以往按照CPM或者CPC付费的常规广告产品,oCPM是按照广告曝光成本付费,同时按照转化目标优化的一种全新产品。

oCPM产品的原理是:广告主把用户转化数据回传给Facebook,Facebook根据这些数据,分析点击了广告并转化的用户的特征。之后根据这些高转化用户的特征找到更多类似用户,并针对这类人群投放广告。通俗地说,也就是Facebook利用对自身流量大盘的洞察,结合广告主高转化人群的特征,帮助广告主快速找到转化成本与转化量之间的平衡点,捕捉到更多不光吃掉鱼饵也会真正上钩的“鱼”,也在广告主和媒体平台双方的利益之间找到了更好的平衡点。

媒体平台进行广告效果优化的两大原则:- 原则一:eCPM必须最大化;- 原则二:广告主的实际效果(CPA)必须在广告主可接受的合理范围内。

Facebook推出oCPM产品的初衷,就是为了在合理控制转化成本的前提下,给效果广告主的大头——游戏行业的广告主,争取更多的转化量。oCPM产品推出后,取得了显著的效果,很快被广告主和广告优化人员广泛使用。国内的头部玩家也纷纷跟进,目前,BAT、字节等大厂都已经推出自己的转化优化产品,虽然具体名称不同,但是基本原理都是承接了Facebook的oCPM。

国内的主流媒体广告平台推出的转化优化产品除了oCPM,还有oCPC,区别在于前者以CPM进行计费,后者以CPC进行计费,但都是按照广告主的转化目标进行优化。相比之下,oCPM除了以转化为目标优化,也可以选择以点击为目标优化,因此也适合那些按照曝光量购买,同时对点击成本控制有期待的广告主;oCPC则能更直接地满足那些看重转化效果和转化量的效果广告主的需求。

图片

如何应用转化优化产品?

介绍了这么多转化优化产品的信息,那这些产品我们要怎么使用呢?接下来,我会结合字节、腾讯、百度等头部广告平台的规则,给你介绍一下这些转化优化产品的应用及要点。

对于广告优化人员来说,应用转化优化产品有以下几个步骤:

  1. 建立转化归因链路:因为系统需要利用广告主的用户转化数据,进行机器学习并建立投放模型,所以需要广告主对系统上报转化数据。一般来说,如果广告主的转化目标在App内完成,可以选择通过API或者SDK方式上报;如果转化目标是在网页上完成,可以选择通过API或者JS方式上报。(具体可以参考各平台的转化归因技术文档)

当然,如果广告主从广告曝光、点击到转化的全链路都是在你的媒体平台上完成的,那就不一定需要专门建立转化归因链路这一步,直接进行广告设置就可以。

  1. 选择转化优化投放方式设置转化目标:在广告投放前,设置广告时,选择oCPM或oCPC付费方式,并填写对转化成本的期待数值,设置完成后开始投放。

图片

转化事件是由广告主自定义的,最早我们在腾讯广告内测的时候,主要是针对App的激活。目前,各大媒体平台都已经提供了丰富的选项,包括下载、注册、加入购物车等等,广告优化人员可以直接从里面选择本次广告投放的转化目标。(具体可以查看对应平台的转化目标示例表)

  1. 等待系统自动学习,找到平衡点:广告投放开始后,我们需要给系统至少几天的学习时间,让系统找到高转化人群并建模。期间,广告优化人员不要频繁调整出价,等到转化成本和转化量稳定后再说。你可以通俗地理解成:在应用了转化优化产品后,系统将替代人工操作去帮你进行调试,找到当前转化成本下最多的转化量。跟人工操作相比,系统可以利用强大的算法与建模能力,洞察全局流量,突破人工操作下的流量黑盒。

图片

图片

从这个步骤上,我们可以看出,转化优化产品还有一个显著的优点,就是降低广告优化人员在出价调整上投入的时间。广告优化人员可以把更多的精力放到物料优化和精准定向广告的用户标签选择上去。

需要注意的是,系统预估与用户的实际行为难免存在偏差,因此,就单条广告、单天的广告数据而言,实际转化成本不会和优化目标出价完全一致。一般,单天实际转化成本高于出价的比例20%以内是合理的波动范围,广告主可以放心继续投放。

  • 如果广告出价合理、投放策略(投放人群与素材的组合)具有竞争力,随着转化数据逐步累积,多天汇总的实际转化成本会非常接近优化目标出价。
  • 如果广告出价不合理(例如出价过低),实际转化成本可能与优化目标出价差距较大。广告系统会自动减少广告的曝光量,以减少不必要的损失。针对这类广告,建议调整投放策略(投放人群、素材、出价的组合),或暂停广告。

和Facebook一样,转化优化产品在国内的广告投放应用中,也取得了显著的效果。目前,转化优化产品已经成为各大头部媒体平台的广告产品标配之一。

图片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/42040.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java + MySQL 实现存储完整 Json

Java MySQL 实现存储完整 Json 一、应用场景二、数据库配置三、后端代码配置1、maven 依赖2、实体类3、Service 实现类4、xml 文件 四、测试1、新增接口2、查询接口3、数据表内容 一、应用场景 将前端传过来的 Json 完整存储到 MySQL 中,涉及技术栈为 Java、MyBat…

揭秘 Vue 组件通信:构建响应式数据流

引言 Vue.js 的核心特性之一是其组件化架构。组件化开发是一种现代的前端开发模式,它鼓励开发者将用户界面拆分成独立的、可复用的组件。每个组件都有自己的逻辑和结构,使得代码更加模块化,易于维护和测试。 Vue 组件基础 组件的定义和用途…

从资金管理的角度 谈谈伦敦金投资技巧

刚进入伦敦金市场的时候,笔者认为技术分析是很重要的,所以将学习伦敦金投资技巧的精力全部投入到技术分析的学习中。经过一系列交易的亏损,笔者才发现,其实交易管理才是最重要的。如果管理得好,30%的胜率,投…

docker-compose部署node-exporter

一、安装 node_exporter:image: prom/node-exporter:v1.8.0container_name: node_exportervolumes:- /proc:/host/proc:ro- /sys:/host/sys:ro- /:/rootfs:ro# ports:# - 9100:9100environment:TZ: Asia/Shanghaicommand:- --path.procfs/host/proc- --path.rootfs/rootfs- -…

数据机构记录顺序表-笔记1

一、线性表的基本概念 数据元素:线性表中的基本单位,每个元素都是线性表的一部分。 数据项:数据元素的具体值。 存储位置:线性表中的元素在内存中的具体存储位置。 线性表按存储结构可以分为顺序表和链表两大类: 1.1…

嵌入式C语言面试相关知识——关键字(不定期更新)

嵌入式C语言面试相关知识——关键字 一、博客声明二、C语言关键字1、sizeof关键字2、static关键字3、const关键字4、volatile关键字5、extern关键字 一、博客声明 又是一年一度的秋招,怎么能只刷笔试题目呢,面试题目也得看,想当好厂的牛马其实…

快速上手指南:使用 Minikube 在本地运行 Kubernetes 集群

前言 Minikube 是一个开源工具,用于在本地运行 Kubernetes 集群。它提供了一种简单的方法来在本地开发和测试 Kubernetes 应用程序,而无需设置完整的 Kubernetes 集群。以下是 Minikube 的基本使用步骤: 安装 Minikube 安装依赖项 虚拟化…

java之静态方法

如果要在类中使用方法,就得需要将这个类实例化。有时候希望在不创建对象的情况下,通过类名直接调用某个方法,就得需要静态方法,要实现静态方法,只需要再成员方法前加上static关键字 静态方法也可以通过类名和对象访问…

Charles拦截发送数据包-cnblog

Charles拦截发送数据包 打开允许断点 右键要打断点的数据包,打断点 重新发请求进入断点模式 修改完毕后发送

拦截HTTP的多种方式

部分场景下需要修改请求报文信息,可以利用 AOP 思维(切面编程),对请求进行拦截处理。Web 中有见的几种发送请求的方式: XMLHttpRequestfetchwindow.navigator.sendBeaconnew Imageservice worker 针对这几种不同的场…

C++实现简化版Qt的QObject(3):增加父子关系、属性系统

前几天写了文章: C实现一个简单的Qt信号槽机制 C实现简化版Qt信号槽机制(2):增加内存安全保障 之后感觉还不够过瘾,Qt中的QObject体系里还有不少功能特性没有实现。为了提高QObject的还原度,今天我们将父子…

2024.06.29校招 实习 内推 面经

绿*泡*泡VX: neituijunsir 交流*裙 ,内推/实习/校招汇总表格 1、实习 | 中国汽研2025届实习生招募 实习 | 中国汽研2025届实习生招募 2、开放周 | 航天513所暑期实践开放周邀请函 开放周 | 航天513所暑期实践开放周邀请函 3、开放日 | 中国电科第四…

vscode远程连接linux(配置免密)

远程连接 1.首先保证物理机和虚拟机网络可以ping通 2.查看ubuntu得ip地址 ifconfig IP为:192.168.52.133 3.连接远程主机 配置免密 1.打开cmd运行ssh-keygen -t rsa 一路回车就行 2.打开window文件夹C:\Users\xbj\.ssh 3.用记事本打开id_rsa.pub文件复制公…

LeetCode刷题之搜索二维矩阵

2024 7/5 一如既往的晴天,分享几张拍的照片嘿嘿,好几天没做题了,在徘徊、踌躇、踱步。蝉鸣的有些聒噪了,栀子花花苞也都掉落啦,今天给他剪了枝,接回一楼来了。ok,做题啦! 图1、宿舍…

数据结构之“栈”(全方位认识)

🌹个人主页🌹:喜欢草莓熊的bear 🌹专栏🌹:数据结构 前言 栈是一种数据结构,具有" 后进先出 "的特点 或者也可见说是 ” 先进后出 “。大家一起加油吧冲冲冲!! …

玩转springboot之springboot注册servlet

springboot注册servlet 有时候在springboot中依然需要注册servlet,filter,listener,就以servlet为例来进行说明,另外两个也都类似 使用WebServlet注解 在servlet3.0之后,servlet注册支持注解注册,而不需要在…

解决vscode配置C++编译带有中文名称报错问题

在新电脑上安装vscode运行带有中文路径和中文名称的C代码时遇到报错 根据别人的教程将laugh.json文件中"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",改成了"program": "${fileDirname}\\output\\test.exe",&#x…

文化财经macd顶底背离幅图指标公式源码

DIFF:EMA(CLOSE,12) - EMA(CLOSE,26); DEA:EMA(DIFF,9); MACD:2*(DIFF-DEA),COLORSTICK; JC:CROSS(DIFF,DEA); SC:CROSSDOWN(DIFF,DEA); N1:BARSLAST(JC)1; N2:BARSLAST(SC)1; HH:VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(H,N1));//上次MACD红柱期间合约最大值 HH2:VALUEWHE…

PyQT动态加载ui文件时,如何继承QMainWindow类

主要看mywindow类的写法 不继承时一般这样加载ui文件来创建一个界面: from PyQt5.QtWidgets import QMainWindow, QApplication, QMessageBox, QWidget from PyQt5.uic import loadUiclass MyWindow():def __init__(self):self.ui loadUi("your_ui.ui"…

docker部署mycat,连接上面一篇的一主二从mysql

一、docker下载mycat镜像 查看安装结果 这个名称太长,在安装容器时不方便操作,设置标签为mycat docker tag longhronshens/mycat-docker mycat 二、安装容器 先安装一个,主要目的是获得配置文件 docker run -it -d --name mycat -p 8066:…