获客确实难,那就运营好存量用户

获客确实难,那就运营好存量用户

开店的和搞运营的都在谈拉新,却忽略了存量市场的挖掘和最需要做的老客户运营工作。存量市场的老客户如同一座金矿好好运营的话所获得的受益远远超过拉新所获得的收益。任何行业尤其是线下门店商户的新客增长迟早都会达到一个瓶颈期,到达瓶颈期后,无论如何拉新,都很难增长或增长极其缓慢了,尤其是拉新成本一直在增长,长期居高不下。这时候就应该好好考虑下挖掘老客户的价值了。

要做好老客户价值的挖掘和运营工作,需要做大量的基础准备工作,首先需要沉淀一定的客户数据,并与客户建立起长期有效的互动沟通渠道,但很多门店并没有提前准备,老客户数据比较零散。从近几年实际情况看,老客户数据都散布在导购的私人微信通讯录里面,这样面临的问题是导购离职了,客户数据被带走了。即使导购在职,客户数据也比较不规范和不统一,但客户的运营和价值挖掘需要统一的标准,不规范的客户运营取决于导购的个人能力。为了便于统一做好客户运营和价值挖掘工作,一定要将客户数据统一数字化并进行规范,这样才能为运营并产生价值提供良好条件。

很多销售机会其实存在于存量市场中,对于一般的门店以前做好客户数据统一数字化还是存在一定的门槛的。购买会员管理系统、发放会员卡还需要采购硬件等等。并且客户越来越懒了,对办理会员卡都没什么兴趣了,优惠做大些吧,成本压力大。优惠小吧,真没多少人愿意办理会员卡,真是很难啊!

但微信小程序的出现使这一切简单了很多。小程序良好的用户体验及无需下载安装即可使用尤其支付便捷并能在微信生态中自由流通的特点使其天然成为会员卡的良好载体,也使会员运营工作更加简单便捷。通过小程序进行销售可以做到支付即会员,能迅速积累起有效客户。西安七斗科技旗下斗金客户运营系统小程序就是本着这种理念进行研发的。一旦客户有了第一次购买即自动成为会员,商家可以通过后台对客户发放各种优惠券和拼团活动刺激客户复购,最大化挖掘客户价值。否则可能就一次买卖后就被其他同行的活动给吸引走了,除非特别大的品牌,一般品牌的客户忠诚度是极低的。

做好客户运营工作是各行各业每个门店都应该重视起来的工作,也是当下新零售发展趋势的必然要求。斗金客户运营系统小程序尽量做得简洁,重在客户运营,适合所有需要做好并且想要做好会员运营的商家使用。

聊聊小程序的登录逻辑

聊聊小程序的登录逻辑

一直聊的都是客户运营方面的话题,毕竟斗金客户运营系统小程序产品是依靠技术实现的,今天来聊聊大家都能感知到的小程序登录问题吧,大家可能都碰到过很多小程序刚打开就要求授权获取信息之类的烦人弹框,如果点拒绝后续有些功能没法用,用户觉得产品好想再同意又找不到地方,这样做其实用户体验非常差。

微信小程序官方也发现了这个问题,其实与他们最初接口设计不太合理也有一定关系,所以18年4月份官方对获取用户信息的wx.getUserInfo 接口进行了调整。虽然这方面文章网上也有不少,但在实际中,仍有很多产品把这块没实现好。要么弹出授权框,要么安全性上处理的不好,或多或少存在一些问题。今天借此机会分享一下斗金客户运营系统小程序在开发中的一些心得体会或收获吧。

如何设计好小程序登录流程呢?有关产品设计方面的问题及关于用户体系产品架构方面的问题不做过多展开讨论。只讨论小程序的登录,且只讨论没有自己的用户体系,不存在绑定账号等操作,完全借助微信用户体系的设计和开发逻辑。文中涉及的一些专有名词大家可以参考微信官方文档寻求解释。

我们做登录流程设计的原则是,在保证良好用户体验的情况下做好安全性设计工作。

首先在小程序启动时,不要弹出任何需要授权的弹框,有些文章说在启动onLanuch时可以通过wx.login静默获取用户openid在数据库建立用户信息,我个人觉得这也是不可取的,这样做的话很多仅仅只是打开小程序而非目标用户的人也会被数据库记录,数据库冗余的垃圾数据就非常多。用户打开小程序后不做任何干扰,让他正常查看使用,只是在用户做敏感操作比如支付、查看余额、查看我的订单、查看我的拼团、查看我的优惠券、领优惠券、参加拼团等需要登录操作时才进行登录。首先判断localStorage是否存在自定义登录态,如果存在则wx.checkSession检查微信服务器上的登录态,如果有效则为真正的已登录允许继续做敏感操作;如果localStorage存在登录态,但是wx.checkSession过期,则重新调用wx.login获取session_key和openid(只更新session_key即可),然后返回给小程序自定义登录态并更新本地localStorage,在用户无感知的情况下进行了更新登录态;如果localStorage不存在自定义登录态,则提示用户需要登录并跳转到个人中心页面,等用户点击个人中心的“授权登录”按钮时进行下一步操作。

用户点击“授权登录”时(提前先先静默调用wx.login接口获取session_key和openid)获取用户微信绑定的手机号,如果数据库表中同一条记录存在该手机号和openid,则直接更新session_key并返回登录态到本地localStorage即可;如果数据库表中不存在该手机号和openid,则插入一条记录(相当于注册)并返回登录态到本地localStorage;如果数据库表中同一条记录只存在手机号或只存在openid,则提示用户登录失败需要联系管理员处理。登录以后用户如果获取过头像、昵称等信息则进行展示,如果是初次登录或没有获取过头像昵称,则用户点击默认头像或昵称时调用wx.getUserInfo接口获取用户头像昵称等信息进行插入数据库表并展示。

最佳实践,由于用户可能会更改自己的微信头像和昵称,应该定时比如用户点击个人中心Tab时使用wx.getSetting获取用户的授权情况,如果用户已经授权,直接调用 wx.getUserInfo接口获取用户的最新信息进行更新和展示。

上图是微信小程序官方的一张登录流程图,在图中官方建议开发者用随机数作为自定义登录态。这样必须和session_key建立关联关系,这里的随机数非常像SessionID。对于使用token机制的开发者其实也是可以的,通过用户ID来进行用户身份识别,不用随机数减少了频繁更新数据库表中自定义登录态的操作。

如有不明白或不清晰的地方欢迎交流,如果有错误,还请指正。