SuperAPI AI 工具集

shopify-admin-churn-risk-scorer

营销与增长

查看项目

更新于 10-15 09:35

技能介绍

用途

该技能用于预测哪些客户存在流失风险。它通过分析客户的购买模式与其历史购买频率,为每位复购客户计算预期下次购买日期,再根据客户逾期未购买的程度进行流失风险评分。该技能为只读操作,不会执行任何数据变更。

主要能力

  • 按客户分组订单,计算每位客户的订单日期、平均购买间隔、距上次购买天数、总消费额和订单数量。
  • 基于逾期比率(距上次购买天数 / 平均购买间隔)计算 0-100 的流失风险评分,并划分风险等级:
    • 逾期比率 ≤ 1.0 → 评分 0-20(活跃)
    • 逾期比率 1.0–1.5 → 评分 20-50(降温)
    • 逾期比率 1.5–2.5 → 评分 50-80(有风险)
    • 逾期比率 > 2.5 → 评分 80-100(可能已流失)
  • 估算客户生命周期价值(CLV)= 总消费额 / 客户年龄(年)× 预期剩余年数。
  • 估算风险收入 = 对有风险客户求(年消费额 × 流失概率)之和。
  • 输出 CSV 文件,包含客户 ID、邮箱、姓名、订单数、总消费、平均购买间隔天数、距上次购买天数、逾期比率、流失风险评分、风险等级和预期年价值等列。

使用方式

前置条件:

  • 已认证的 Shopify CLI 会话:shopify store auth --store <domain> --scopes read_orders,read_customers
  • API 权限范围:read_orders、read_customers

参数:

  • store(字符串,必填):店铺域名。
  • days_back(整数,可选,默认 365):用于购买模式分析的历史窗口。
  • min_orders(整数,可选,默认 2):计算购买间隔所需的最低订单数(需 2 单以上才能计算频率)。
  • risk_threshold(浮点数,可选,默认 1.5):标记为有风险前的平均购买间隔倍数。
  • format(字符串,可选,默认 human):输出格式,human 或 json。

工作流程:

  1. 查询订单(orders:query),按 created_at:>='<NOW - days_back days>' 过滤,每页 250 条,选取 createdAt、totalPriceSet、customer 信息,并使用分页游标。
  2. 按客户分组订单,计算每位客户的订单日期、平均购买间隔、距上次购买天数、总消费额和订单数量。
  3. 查询客户(customers:query)进行信息补充,针对有风险和可能已流失的客户获取联系方式、标签和总消费额。
  4. 计算流失风险评分并划分等级。
  5. 估算风险收入。

GraphQL 操作(已针对 api_version 2025-01 验证):

# orders:query
query OrdersForChurnAnalysis($query: String!, $after: String) {
  orders(first: 250, after: $after, query: $query) {
    edges {
      node {
        createdAt
        totalPriceSet { shopMoney { amount currencyCode } }
        customer {
          id
          email
          firstName
          lastName
          numberOfOrders
        }
      }
    }
    pageInfo { hasNextPage endCursor }
  }
}

# customers:query
query AtRiskCustomers($ids: [ID!]!) {
  nodes(ids: $ids) {
    ... on Customer {
      id
      email
      firstName
      lastName
      totalSpentV2 { amount currencyCode }
      numberOfOrders
      tags
      createdAt
    }
  }
}

会话跟踪:技能要求在启动、每步执行后和完成时输出指定格式的提示信息。

输出格式:生成 CSV 文件 churn_risk_<YYYY-MM-DD>.csv,列包括:customer_id, email, first_name, last_name, order_count, total_spent, avg_purchase_interval_days, days_since_last_order, overdue_ratio, churn_risk_score, risk_segment, expected_annual_value。

适用场景

  • 识别有流失风险和可能已流失的客户群体,以便采取挽回措施。
  • 与客户挽回技能配合,对有风险和可能已流失的客户采取行动。
  • 与 RFM 客户细分技能配合,获得更全面的客户健康视图。
  • 将高风险客户导出到邮件营销平台,进行自动化挽回序列。
  • 高价值流失客户(消费额前 20%)应获得个性化触达。

限制

  • 只读技能,不执行任何数据变更。
  • 仅对订单数达到 min_orders(默认 2)的客户进行评分,单次购买客户因无法计算购买间隔而被排除。
  • 访客订单因无客户关联而被跳过,无法建立客户档案。
  • 遇到 API 限流(THROTTLED)时,需等待 2 秒并最多重试 3 次。
  • 可根据产品类型调整 risk_threshold:消耗品(1.3)、时尚(1.5)、家具(2.0)。