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)
目录
相关文章
|
3月前
|
人工智能 IDE 前端开发
04|Claude Code、Codex、Cursor、OpenCode 的 Harness 差异
本文深度解析2026年四大AI编程工具本质差异:Claude Code(终端工程Agent)、Codex(OpenAI生态本地Agent)、Cursor(IDE内嵌Agent Harness)、OpenCode(开源多模型可定制平台),强调选型关键在匹配真实工作流,而非单纯比模型。
1744 3
|
10月前
|
机器学习/深度学习 搜索推荐 算法
2026版基于Python的旅游景点推荐系统:技术解析与实现路径
在数字化浪潮下,旅游业迈向智能化转型。2026版基于Python的旅游景点推荐系统,融合大数据、机器学习与可视化技术,破解信息过载难题。通过协同过滤与内容过滤混合算法,精准匹配用户偏好;利用Scrapy爬取多源数据,Echarts实现动态展示,Django构建交互界面,打造个性化、实时化、可视化的智能推荐平台,提升用户体验与决策效率。
654 0
|
9月前
|
搜索推荐 数据库 索引
广告引擎的整体架构和工作过程
广告引擎核心是匹配用户与广告。通过用户标签、广告位信息及广告主定向条件,构建倒排索引,实现高效召回与排序,0.1秒内完成广告返回,并实时监测展现、点击与计费,确保精准投放与预算控制。
|
人工智能 前端开发 JavaScript
AI程序员:通义灵码 2.0应用VScode前端开发深度体验
AI程序员:通义灵码 2.0应用VScode前端开发深度体验,在软件开发领域,人工智能技术的融入正深刻改变着程序员的工作方式。通义灵码 2.0 作为一款先进的 AI 编程助手,与广受欢迎的代码编辑器 Visual Studio Code(VScode)相结合,为前端开发带来了全新的可能性。本文将详细分享通义灵码 2.0 在 VScode 前端开发环境中的深度使用体验。
2747 2
AI程序员:通义灵码 2.0应用VScode前端开发深度体验
|
弹性计算 关系型数据库 数据库
阿里云服务器免费试用相关政策介绍:试用资格、规则与优惠解析
阿里云服务器可以试用吗?不仅是云服务器产品,包括无影云电脑、云数据库 RDS、统型负载均衡 CLB、对象存储 OSS、文件存储 NAS等云产品都是可以试用的。本文将系统梳理阿里云服务器试用的核心规则、适用场景及操作要点,以供参考。
|
存储 固态存储 应用服务中间件
阿里云服务器租赁价格:实例配置、预留实例券、块存储、带宽、快照最新收费标准
阿里云服务器收费项目有实例价格、预留实例券、专有宿主机、块存储价格、存储容量单位包、带宽价格和快照服务价格,收费模式有包年包月和按量付费模式。2025年阿里云继续推出各种云服务器优惠,本文为大家汇总了2025年阿里云服务器各个收费项目的最新收费标准与云服务器的最新活动价格,以供参考和了解。
1366 24
|
算法 虚拟化 C++
VMware虚拟机无法自适应和拖拽复制粘贴和共享目录问题
VMware虚拟机无法自适应和拖拽复制粘贴和共享目录问题
2537 0
|
Android开发 iOS开发 API
鸿蒙开发:适配系统深浅色模式
无论是Android还是iOS,在系统设置中,都有着深色和浅色两种外观模式,同样,鸿蒙系统中也存在这样的外观切换,如何让自己的应用,跟随着系统的模式进行动态切换呢?目前系统给我们提供了两种方式可以实现,一种是资源形式,一种是动态的代码形式。
614 15
鸿蒙开发:适配系统深浅色模式
|
移动开发 编解码 前端开发
摸鱼必备-80款在线HTML小游戏
本文推荐了80款精彩的HTML5在线小游戏,涵盖益智、冒险、射击、体育等多种类型,适合各年龄段玩家。无需下载安装,随时随地畅玩。地址:[https://game.share888.top/](https://game.share888.top/)
6660 7
摸鱼必备-80款在线HTML小游戏
|
定位技术 图形学
Unity3D——射击游戏(多地图,多人物,枪支切换,驾车,扔手雷等功能,堪比小型和平精英)
Unity3D——射击游戏(多地图,多人物,枪支切换,驾车,扔手雷等功能,堪比小型和平精英)
Unity3D——射击游戏(多地图,多人物,枪支切换,驾车,扔手雷等功能,堪比小型和平精英)