入栈push
在日常移动端APP中,我们常常能够收到各类软件发送的消息提醒,这些消息提醒有的令用户反感,有的则让用户感到愉悦。在日常Push引流过程中,我们应该如何做好引流闭环?作者分享了相关经验,一起来看看。
![](https://p0.ssl.img.360kuai.com/t012ce05a4a326f2d8b.jpg)
引言
滴滴滴,好友xxx已上线;你最近看过的xxx发布了动态[图片];xxx向你发出了好友申请,√确认,×拒接……
日常移动端app的使用过程当中,用户会经常收到各类软件所发的消息提醒(push)。有的策略采用广撒网式的全网推送,不对用户进行筛选,因此没法达到唤醒目标设备的初衷;有的产品发送消息频繁,易引起用户厌倦;有的消息文不对题,点击后跳转至无关页面,让用户感觉备受欺骗……
一个合理的push引流闭环:
- 对于用户侧应做到:让目标人群在合适的时间节点,接收对用户具备吸引力的消息文案,点击后能跳转查看感兴趣的产品内容
- 对于产品侧应反馈:该下发push的引流效果,形成push引流的画像库,完成产品建设中的自动化push发送机制
01 四要素
明确push引流的目标人群>构思消息提醒的内容文案>匹配通知点击后的跳转页面>决定推送下发的时间节点,这是前半闭环的四个关键环节,决定用户侧的效果成败。
1. 目标人群该对哪些用户,哪些设备进行引流推送的激活?大体可从两个方向进行考虑:
1)静态指标
一般指的是产品内描述用户形象的稳定指标或二分类变量。它们变化频率较低,划分维度明确。
- 稳定指标,如:使用者的年龄、性别、ip地区……
- 二分类变量,如:用户最近是否具备充值行为、用户最近是否购买商品、用户最近是否关注他人……
2)动态行为
一般指的是产品内用户的核心行为路径。行为路径的选取和产品定位相关,它们变化频率较高,能及时反映当前用户的活跃情况。
如:
- 语音类产品:最近三天进入直播间的次数、最近三天点击送礼按钮的次数、最近三天连麦成功的次数……
- 电商类产品:最近一周添加购物车商品的数量、最近一周收藏好物分享帖子的数量、最近一周付款失败的次数……
- 社交类产品:近半月关注他人数量、近半月发布动态数量、近半月私聊成功次数……
……
关于静态划分及动态行为的详细区别,可参考《怎么去做用户调研?-用户画像篇》一文。
2. 内容文案1)push文案的构思要以吸引用户点击为导向。文案再新颖,再巧妙,再独特,只要无法让用户提起兴趣去查看的,都是“坏文案”。
2)push文案的构思要有数据评判的标准。一千个人眼里有一千个哈姆雷特,不能仅凭个人认知内的事物来判断文案的“吸引力”。引入点击率作为优劣判断的指标,以“点”服人显得尤为合理。
3)push文案的构思要常加规整,分门别类,形成优秀文案库。根据定位不同,适用于不同产品的推送文案必定可抽象成对应方法论上的规律,如社交类产品,大多数可将文案的类别划分为:
消息提醒型:
例子:xxx向你发出了好友添加申请
用户互动型:
例子:能否成为你的今日限定?
社交假象类:
例子:xxx浏览了你的主页,点击回关
情话类:
例子:近朱者赤,近你者甜
3. 落地页落地页的承接要和文案适配,切不可盲目追寻“好看的”数据指标。
在实际的产品运作过程,运营人员大多肩负较重的kpi压力,其中以文案点击率来考核内容运营人员的工作成效更尤为常见。此时,若单纯为了“爆款点击率”的产生,不加思考地承接,很容易让用户点击后感觉被欺骗,久而久之,用户便会流失,设备的唤醒反而越加艰难。
如电商类的产品,爆款文案类型往往是折扣通知类的文案:
例子:您浏览过的xxx商品降价xxx元,点击抢购 [图片]
若点击后跳转的是从未浏览过的无关商品,或该商品并未任何折扣,点击率是提升了,但用户也不会再相信。
4. 推送时间待目标推送人群确认,文案内容构思完成,落地承接匹配成功,闭环引流上半流程的最后一个环节是决定最终的推送时间,为的是尽可能使浏览推送的人群基数扩大,在点击率相同的情况下增加最终的点击人数。
推送时间的选取具备周期性:
周末段,节假日等,和社会现象重合的时间点往往具备更多的自然流量。用户更倾向于在此时间段内出没,进行娱乐时间的消遣。
推送时间的选取要结合目标人群核心行为的峰值发生节点:
产品类型不同、行为路径不一,对应人群出现的高频时间节点也会不同。如语音直播类产品,进入直播间的行为往往出现在晚上10点以后;新闻资讯类产品的内容浏览行为往往集中在早上8-9点的上班早高峰期;体育社区类产品的帖子发布往往和赛事进行的时间相关……
02 监控
对于产品侧而言,引流闭环的下半阶段重点是建立指标监控体系,以“数”服人,反哺下一阶段的引流决策。
1. push引流中的用户画像刻画push中的用户画像,我把其定义成目标推送人群和文案类型的交叉集合,它以文案类型的历史平均点击率为主要参考依据,设定阈值,当某类型人群匹配某类型文案的历史平均点击率超过阈值,则定义为该类型人群画像刻画成功,后续push引流时会倾向于对该类型人群发送该类型文案进行引流,并根据数据指标的反馈情况实时校准模型。
2. push引流中的漏斗建立push引流过程应根据推送链路进行漏斗监控。
下发量>接收量>展示量>点击量>关闭量,这是一个完整的push漏斗模型,可定位各环节有可能出现异常的情况。
如下为push画像及漏斗模型的简图描述:
![](https://p0.ssl.img.360kuai.com/t0171b5718307a9c902.jpg)
push引流的用户画像刻画,其最终目的之一是达到:用户满足一定的行为后,会在某个时间段内自动发送适配类型的文案进行push召回,从而不用人工配置,解放生产力。机制的形成也有利于避免过多主观性地人为干预,一切以数据为导向,以“理”服人。
03 总结
用户增长理解成是要利用一切资源让尽可能多的用户更高频地使用产品的核心功能,从而获取用户、激活用户、留存用户,并最终实现从用户中盈利且产生裂变的方案或举措。
push引流只是其中激活设备的一个环节,从本文开始用户增长系列的方法论分享将正式启动啦~
本文由 @场景阿侯 原创发布于人人都是产品经理,未经许可,禁止转载。
题图来自Unsplash,基于CC0协议。
该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。
","force_purephv":"0","gnid":"98681f0168ea0a4ba","img_data":[{"flag":2,"img":[{"desc":"","height":"420","title":"","url":"https://p0.ssl.img.360kuai.com/t012ce05a4a326f2d8b.jpg","width":"900"},{"desc":"","height":"249","title":"","url":"https://p0.ssl.img.360kuai.com/t0171b5718307a9c902.jpg","width":"1296"}]}],"original":0,"pat":"art_src_3,fts0,sts0","powerby":"hbase","pub_time":1672110120000,"pure":"","rawurl":"http://zm.news.so.com/2992a6ac459b514f3846042e8eaa2636","redirect":0,"rptid":"4b395f47e2eaa2f9","s":"t","src":"人人都是产品经理","tag":[],"title":"push引流如何闭环?
韶欧蒋2413有一空栈,现有ABCDE五个数据依次以PUSH指令放入栈中,其中陆续执行了一些POP指令, -
甘宇山19654289170 ______ push:a push:ba pop:a push:ca pop:a 所以输出了bc
韶欧蒋2413什么是push ,pop -
甘宇山19654289170 ______ push就是推,延伸为推进.这个它是汇编的一个指令,当然你也可能在其它语言中见到它.意思都是差不多的,就是把一个元素放入栈中.你可以假想栈是一个放光盘的那种盒子,有底没盖,先push进去的光盘总是要等后push进去的出来后才能出来.而pop和push相反,它的意思是弹出,就是从栈里弹出一个元素,每次弹出的都是栈顶(光盘盒最上面那个,也就是最后放进去的那个)的那个元素.前面所说都是汇编对栈的操作,在js中数组也有这两个函数,放不指定参数时,分别是在数组末尾添加或删除一个元素,指定参数时,则添加或删除指定的元素.
韶欧蒋241351单片机入栈 -
甘宇山19654289170 ______ 首先个人感觉象R寄存器入堆栈真没有什么意思,如果你是感觉寄存器不够的话呢可以用指令来切换R寄存器,因为单片机有4组一般来说正常选择的是第0组 你要非坚持要让R0的数据入栈如果不需要保持A寄存器的话可以在入栈前先执行句:MOV A,R0然后在执行PUSH A 不知道可以吗
韶欧蒋2413什么情况下会用到栈? -
甘宇山19654289170 ______ 栈可以用来在函数调用的时候存储断点,做递归时要用到栈! 首先 系统或者数据结构栈中数据内容的读取 与 (压入push和 弹出pop) 是两回事! 插入是增加数据 弹出 是删除数据 ,这些操作只能从栈顶即最低地址作为约束的接口界面入手操作...
韶欧蒋2413汇编程序中如何使用堆栈 -
甘宇山19654289170 ______ 首先在程序头部定义程序堆栈的大小 比如.stack 64 那么堆栈的大小就是64个字节,而每个堆栈单元默认是两个字节(也就是一个字WORD),那么64/sizeof(WORD) = 64/2 = 32也就是有32个单元. 根据计算机体系的不同,有的栈是从低位往高...
韶欧蒋2413c++堆栈中 top() pop()的具体作用是什么 -
甘宇山19654289170 ______ top()是取栈顶元素 pop()是弹出栈顶元素 stack<int> a; a.push(1); // 1 a.push(2); // 1 2 a.push(3); // 1 2 3 int c = a.top(); // c = 3 a.pop(); // 1 2 a.push(4); // 1 2 4 c = a.top(); // c = 4
韶欧蒋2413怎么用两个栈来模拟队列,要求O(1)的push和pop.能用两个队列来实现一个栈么,O(1)的push和pop? -
甘宇山19654289170 ______ 入栈:入队列1 出栈:把队列1的前n-1个元素倒到队列2,把2中第n个元素出队.下次出栈,因为此时数据在2中,则对2进行类似的操作. 具体如下: 元素为:A,B,C,3个,入栈后队列1中元素为A,B,C,队列2中为空,第一次pop,将队列1中前n-1个元素(n=3)出队,入队列2,剩下的第n个元素C出队显示,这时队列1中为空,队列2中A,B;第二次pop,将队列2中前n-1个元素(n=2)出队,入队列1,剩下的第n个元素B出队显示,这时队列1中为A,队列2中空,第三次pop,剩下的一个元素A出队显示,队列1、2都空,结束.
韶欧蒋2413谁能帮我说下C语言中的堆栈 -
甘宇山19654289170 ______ 个人认为楼上的不懂C语言堆栈到底是怎么回事,按楼上说法,只是大概讲了下栈,没有讲堆.要讲C语言的堆栈,要从计算机的数据内存分配讲起.____________________ | Stack区(数组,指针,结构体,局部变量) ____________________ ...
韶欧蒋2413【高分】数据结构 题求解若入栈序列是123456,用push(s,x)表示x入栈,pop(s,y)表示y出栈,写出出栈序列为123456的操作过程 -
甘宇山19654289170 ______[答案] 因为栈的特点是先进后出 所以操作序列是 push(s,1) pop(s,1) push(s,2) pop(s,2) push(s,3) pop(s,3) push(s,4) pop(s,4) push(s,5) pop(s,5) push(s,6) pop(s,6)
韶欧蒋2413在堆栈中,使用Push()是否需要分配内存 -
甘宇山19654289170 ______ push操作是将数据压入堆栈,堆栈本身就是内存的一特定位置,分为硬堆栈和软堆栈,软堆栈是可以用户定义!现在应该明白需要分配了吧!