CPM、CPC

简介: 【6月更文挑战第24天】

CPM、CPC和CPA是广告领域中常见的几种计费模式,它们分别代表了不同的广告投放效果评估方式。

CPM(Cost Per Mille)

  • 定义:CPM指的是千人展现成本,即广告每展现给1000个用户所需支付的费用。这是一种按照广告曝光次数来计费的方式。
  • 意义:CPM适用于品牌曝光和提高知名度,广告主关注的是广告的可见度而非点击或转化。

CPC(Cost Per Click)

  • 定义:CPC指的是点击成本,即广告每产生一次点击所需支付的费用。这是一种按照用户点击行为来计费的方式。
  • 意义:CPC适用于那些希望用户通过点击广告进一步了解产品或服务的广告主,关注的是用户的参与度。

CPA(Cost Per Action)

  • 定义:CPA指的是按投放的实际效果付费,即根据用户完成特定行为(如注册、购买、下载等)来计费。这是一种按照广告带来的实际效果来计费的方式。
  • 意义:CPA适用于那些追求转化率和实际销售的广告主,关注的是广告的最终效果。

实现CPM、CPC和CPA的统计通常涉及到前端的事件跟踪和后端的数据记录。 展示如何使用JavaScript和服务器端语言(例如Python)来实现这些计费模式的统计。

前端(JavaScript)

// 记录曝光(CPM)
function recordImpression() {
   
  fetch('/record_impression', {
   
    method: 'POST',
    headers: {
   
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
    adId: 'ad_123', userId: 'user_456' }),
  });
}

// 记录点击(CPC)
function recordClick(event) {
   
  event.preventDefault(); // 阻止链接跳转
  fetch('/record_click', {
   
    method: 'POST',
    headers: {
   
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
    adId: 'ad_123', userId: 'user_456' }),
  });
}

// 记录行动(CPA)
function recordAction(actionType) {
   
  fetch('/record_action', {
   
    method: 'POST',
    headers: {
   
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
    adId: 'ad_123', userId: 'user_456', actionType: actionType }),
  });
}

// 页面加载时调用记录曝光
window.onload = function() {
   
  recordImpression();
};

// 给广告链接添加点击事件监听
document.getElementById('ad_link').addEventListener('click', recordClick);

后端(Python Flask示例)

from flask import Flask, request, jsonify

app = Flask(__name__)

# 假设使用简单的字典来存储数据,实际应用中应使用数据库
impression_count = {
   }
click_count = {
   }
action_count = {
   }

@app.route('/record_impression', methods=['POST'])
def record_impression():
    ad_id = request.json['adId']
    user_id = request.json['userId']
    if ad_id not in impression_count:
        impression_count[ad_id] = 0
    impression_count[ad_id] += 1
    return jsonify({
   'status': 'success', 'message': 'Impression recorded'})

@app.route('/record_click', methods=['POST'])
def record_click():
    ad_id = request.json['adId']
    user_id = request.json['userId']
    if ad_id not in click_count:
        click_count[ad_id] = {
   }
    if user_id not in click_count[ad_id]:
        click_count[ad_id][user_id] = 0
    click_count[ad_id][user_id] += 1
    return jsonify({
   'status': 'success', 'message': 'Click recorded'})

@app.route('/record_action', methods=['POST'])
def record_action():
    ad_id = request.json['adId']
    user_id = request.json['userId']
    action_type = request.json['actionType']
    if ad_id not in action_count:
        action_count[ad_id] = {
   }
    if action_type not in action_count[ad_id]:
        action_count[ad_id][action_type] = {
   }
    if user_id not in action_count[ad_id][action_type]:
        action_count[ad_id][action_type][user_id] = 0
    action_count[ad_id][action_type][user_id] += 1
    return jsonify({
   'status': 'success', 'message': 'Action recorded'})

if __name__ == '__main__':
    app.run(debug=True)
目录
相关文章
|
BI
运营必备 - CPA、CPS、CPC、CPM推广是什么意思?(一)
运营必备 - CPA、CPS、CPC、CPM推广是什么意思?(一)
10283 0
运营必备 - CPA、CPS、CPC、CPM推广是什么意思?(一)
|
3月前
|
监控 供应链 定位技术
什么是 eCPM?它与 CPM 有何不同?
这篇文章解释了eCPM(每千人有效成本)的概念,它与CPM(每千人成本)的区别,如何计算eCPM,以及eCPM的主要优势和底价设置。文章还探讨了影响eCPM值的因素,以及如何确定合适的eCPM目标。
821 2
什么是 eCPM?它与 CPM 有何不同?
|
6月前
R语言中进行期权定价的Heston随机波动率模型
R语言中进行期权定价的Heston随机波动率模型
|
6月前
|
数据挖掘
R语言预测期货波动率的实现:ARCH与HAR-RV与GARCH,ARFIMA模型比较
R语言预测期货波动率的实现:ARCH与HAR-RV与GARCH,ARFIMA模型比较
R语言预测期货波动率的实现:ARCH与HAR-RV与GARCH,ARFIMA模型比较
|
6月前
用R语言用Nelson Siegel和线性插值模型对债券价格和收益率建模
用R语言用Nelson Siegel和线性插值模型对债券价格和收益率建模
|
6月前
|
机器学习/深度学习
探索Transformer在金融行情预测领域的应用——预测银行间回购市场加权价格
文章先发在公众号上来,顺便在这里也写一下,主要思路其实就是模仿盘古天气大模型的方法,来试试能不能用来预测全国银行间市场质押式回购每日的加权平均价格,目前模型主要架构和训练粗略的跑了出来,效果不是太好,目前看了点其他paper,希望尝试利用已经开源的各种大模型做微调。欢迎大家批评指正。
探索Transformer在金融行情预测领域的应用——预测银行间回购市场加权价格
|
机器学习/深度学习 存储 分布式计算
KDD 2022 | 快手提出基于因果消偏的观看时长预估模型D2Q,解决短视频推荐视频时长bias难题
KDD 2022 | 快手提出基于因果消偏的观看时长预估模型D2Q,解决短视频推荐视频时长bias难题
597 0
|
机器学习/深度学习 搜索推荐 JavaScript
Coggle 30 Days of ML【打卡】广告-信息流跨域ctr预估
Coggle 30 Days of ML【打卡】广告-信息流跨域ctr预估
Coggle 30 Days of ML【打卡】广告-信息流跨域ctr预估
运营必备 - CPA、CPS、CPC、CPM推广是什么意思?(二)
运营必备 - CPA、CPS、CPC、CPM推广是什么意思?(二)
320 0
运营必备 - CPA、CPS、CPC、CPM推广是什么意思?(二)