在用户犹豫的地方收集转化原因

你这边 identify 用户。track 一个时刻。他们只选一个原因。

安装

你这边 identify 用户。track 一个时刻。他们只选一个原因。

打开试用页
<script src="/widget.js"></script>
<script>
  MorePaying.init({
    projectKey: "mp_proj_YOUR_KEY",
    locale: "zh-CN",
    tabText: "只问一句",
    brandColors: {
      primary: "#10b981",
      hover: "#059669",
      active: "#047857",
      onPrimary: "#ffffff"
    }
  })
</script>

会带上什么

  • 时刻 — 注册、第一次结果、离开定价、结账、升级、已付、取消
  • 一个固定原因。只有选「其他」才可以补一句话
  • 套餐、用量、用户 id、渠道/UTM、注册时间、生成次数、第一次成功、剩余额度、价格页停留、Stripe 金额来自 identify()
  • URL、标题、视口、UA、控制台报错
  • 可选:钉住一个元素(CSS 选择器)并截一段 DOM
  • 短时用户 token 来自 userTokenFn — 在你的服务器签发

在某个时刻提问

MorePaying.identify({
  userId: "usr_123",
  plan: "free",
  usage: "12/50",
  signedUpAt: "2026-08-01T00:00:00.000Z",
  generations: 12,
  firstSuccess: true,
  creditsRemaining: 38,
  creditsLimit: 50,
  channel: "twitter",
  stripeCustomerId: "cus_123",
  stripeAmountCents: 0,
  stripeStatus: "none"
})
MorePaying.track("pricing_view")
MorePaying.track("pricing_exit")
MorePaying.track("paid")

报告人身份

已登录用户请在你的服务器签发短时 token。不要把签名密钥写进浏览器。

MorePaying.init({
  projectKey: "mp_proj_YOUR_KEY",
  locale: "zh-CN",
  userTokenFn: async () => {
    const response = await fetch("/api/identity-token", {
      method: "POST",
      headers: { "Content-Type": "application/json", "X-Project-Key": "mp_proj_YOUR_KEY" },
      body: JSON.stringify({ userId: currentUser.id })
    })
    return (await response.json()).token
  }
})

先看本周判断,再付费

别再猜他们为什么没付钱。

他们不升级时问一句。看着卡片出现在板上。

现在免费。Free 不用绑卡。付费方案走 pay.yito.ai。