mcpField
R
remarketing-strategy

remarketing-strategy

github.com/itallstartedwithaidea营销与增长4487 次安装28 周前更新
代码仓库

关于 remarketing-strategy

用于设计再营销策略的营销技能,按转化漏斗阶段规划受众与跨渠道消息。适合处理用户召回的 Agent,并涵盖频次上限和顺序营销指导。

主要功能

  1. 01按转化漏斗阶段划分受众
  2. 02规划跨渠道再营销
  3. 03设计顺序消息链
  4. 04控制频次与受众期限
  5. 05排除不适用受众

适用场景

  1. 01召回放弃购物车的用户
  2. 02按转化漏斗阶段规划广告
  3. 03通过频次上限减少广告疲劳

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/itallstartedwithaidea/agent-skills --skill remarketing-strategy

安装后在 Claude Code 中输入/remarketing-strategy确认已加载。

详细介绍

再营销策略

属于 Agent Skills™,由 googleadsagent.ai™ 推出

描述

再营销策略技能用于设计并实施跨渠道再营销架构,在转化漏斗的每个阶段重新吸引用户。数字广告中的再营销一直是投资回报率最高的策略,因为它针对的是已经表现出兴趣的用户。这项技能将简单的“向过去的访客展示广告”方式,转变为复杂的漏斗感知型再营销系统,涵盖顺序消息、频次控制和跨设备协调。

该技能根据漏斗位置和互动深度划分受众:漏斗顶部访客(单页会话)、漏斗中部互动用户(多页会话、内容浏览者)、漏斗底部潜在客户(放弃购物车者、开始填写表单者、查看定价页面者),以及转化后的客户(用于追加销售和留存)。每个细分受众都会收到与其和品牌关系相匹配的定制消息,从强化认知到推动紧迫转化。

跨渠道执行涵盖展示广告再营销、YouTube 再营销、RLSA(搜索广告再营销名单)、采用特定产品创意素材的动态再营销,以及跨设备客户旅程映射。该技能会实施频次上限以防止广告疲劳,优化成员资格期限以平衡覆盖范围和相关性,并通过顺序消息链逐步推动用户完成转化。它还会管理排除受众分层,以避免重复传达信息和浪费展示次数。

适用场景

  • 用户询问“再营销”或“重定向”策略
  • 用户提到“再营销名单”或“受众细分”
  • 用户希望重新吸引过去的访客或放弃购物车的用户
  • 用户询问“频次上限”或“广告疲劳”
  • 用户提到“RLSA”或“搜索再营销”
  • 用户询问“动态再营销”或“产品再营销”
  • 用户希望构建“客户旅程”或“顺序消息”
  • 用户提到“跨设备”定位或“跨渠道”再营销
  • 用户询问“成员资格期限”或“受众窗口”优化

架构

flowchart TD
    A[User Interaction Data] --> B[Funnel Stage Classifier]

    B --> C[Top of Funnel\nSingle Page, < 30s]
    B --> D[Mid Funnel\n2-3 Pages, Content Engaged]
    B --> E[Bottom Funnel\nCart/Form/Pricing Viewed]
    B --> F[Post-Conversion\nPurchasers, Leads]

    C --> G[Awareness Remarketing]
    G --> G1[Brand Story Ads]
    G --> G2[Educational Content]
    G --> G3[Social Proof]

    D --> H[Consideration Remarketing]
    H --> H1[Product/Service Benefits]
    H --> H2[Case Studies & Reviews]
    H --> H3[Comparison Content]

    E --> I[Conversion Remarketing]
    I --> I1[Urgency Messaging]
    I --> I2[Incentive Offers]
    I --> I3[Dynamic Product Ads]
    I --> I4[Cart Recovery Emails]

    F --> J[Retention Remarketing]
    J --> J1[Cross-Sell / Upsell]
    J --> J2[Loyalty Offers]
    J --> J3[Reactivation Campaigns]

    G1 --> K[Channel Orchestrator]
    G2 --> K
    G3 --> K
    H1 --> K
    H2 --> K
    H3 --> K
    I1 --> K
    I2 --> K
    I3 --> K
    J1 --> K
    J2 --> K
    J3 --> K

    K --> L[Display Network]
    K --> M[YouTube]
    K --> N[Search RLSA]
    K --> O[Discovery / Demand Gen]

    L --> P[Frequency Capping Engine]
    M --> P
    N --> P
    O --> P

    P --> Q[Cross-Device Graph]
    Q --> R[Unified User Journey]

实施

基于漏斗的受众细分和再营销架构:

const FUNNEL_SEGMENTS = {
  TOP: {
    name: 'Awareness Visitors',
    rules: { pagesViewed: 1, sessionDuration: '<30s', converted: false },
    membershipDuration: 30,
    messagingStrategy: 'brand_awareness',
    channels: ['display', 'youtube'],
    frequencyCap: { impressionsPerDay: 3, impressionsPerWeek: 10 }
  },
  MID: {
    name: 'Engaged Visitors',
    rules: { pagesViewed: '>=2', sessionDuration: '>=30s', converted: false },
    membershipDuration: 30,
    messagingStrategy: 'consideration',
    channels: ['display', 'youtube', 'search_rlsa'],
    frequencyCap: { impressionsPerDay: 5, impressionsPerWeek: 15 }
  },
  BOTTOM: {
    name: 'High Intent Prospects',
    rules: { viewedHighIntentPage: true, converted: false },
    membershipDuration: 14,
    messagingStrategy: 'conversion',
    channels: ['display', 'youtube', 'search_rlsa', 'demand_gen'],
    frequencyCap: { impressionsPerDay: 7, impressionsPerWeek: 25 }
  },
  POST_CONVERSION: {
    name: 'Customers',
    rules: { converted: true },
    membershipDuration: 180,
    messagingStrategy: 'retention',
    channels: ['display', 'youtube', 'search_rlsa'],
    frequencyCap: { impressionsPerDay: 2, impressionsPerWeek: 7 }
  }
};

async function buildRemarketingStrategy(customerId, config) {
  const { businessType, conversionActions, hasDynamicFeed } = config;

  const existingLists = await getRemarketingLists(customerId);
  const conversionData = await getFunnelConversionData(customerId);

  const strategy = {
    segments: buildFunnelSegments(conversionData, businessType),
    sequentialMessaging: designSequentialChains(conversionData),
    dynamicRemarketing: hasDynamicFeed ? configureDynamic(customerId) : null,
    rlsaStrategy: configureRLSA(conversionData),
    frequencyCapping: optimizeFrequencyCaps(conversionData),
    exclusions: buildExclusionMatrix(),
    crossDeviceStrategy: configureCrossDevice(customerId)
  };

  return strategy;
}

function buildFunnelSegments(conversionData, businessType) {
  const segments = [];

  for (const [stage, config] of Object.entries(FUNNEL_SEGMENTS)) {
    const windows = stage === 'BOTTOM'
      ? [1, 3, 7, 14]
      : stage === 'MID'
        ? [7, 14, 30]
        : [14, 30, 60, 90];

    for (const window of windows) {
      segments.push({
        name: `${config.name} - ${window}d`,
        funnelStage: stage,
        membershipDuration: window,
        rules: config.rules,
        estimatedSize: estimateAudienceSize(conversionData, config.rules, window),
        bidAdjustment: calculateBidAdjustment(stage, window),
        messagingTheme: config.messagingStrategy
      });
    }
  }

  return segments;
}

function calculateBidAdjustment(stage, windowDays) {
  const baseAdjustments = { TOP: 0, MID: 20, BOTTOM: 50, POST_CONVERSION: 15 };
  const recencyBoost = Math.max(0, 30 - windowDays);
  return `+${baseAdjustments[stage] + recencyBoost}%`;
}

顺序消息和动态再营销:

function designSequentialChains(conversionData) {
  return {
    newVisitorChain: [
      { day: 1, message: 'brand_introduction', creative: 'brand_video_15s', channel: 'youtube' },
      { day: 3, message: 'value_proposition', creative: 'benefit_display_ads', channel: 'display' },
      { day: 7, message: 'social_proof', creative: 'testimonial_ads', channel: 'display' },
      { day: 14, message: 'soft_cta', creative: 'content_offer', channel: 'demand_gen' }
    ],
    cartAbandonerChain: [
      { hour: 1, message: 'cart_reminder', creative: 'dynamic_product_ads', channel: 'display' },
      { day: 1, message: 'urgency', creative: 'limited_stock_messaging', channel: 'display' },
      { day: 3, message: 'incentive', creative: 'discount_offer', channel: 'display' },
      { day: 7, message: 'alternative_products', creative: 'related_products', channel: 'display' }
    ],
    customerRetentionChain: [
      { day: 30, message: 'thank_you', creative: 'loyalty_offer', channel: 'display' },
      { day: 60, message: 'cross_sell', creative: 'complementary_products', channel: 'display' },
      { day: 90, message: 'reactivation', creative: 'win_back_offer', channel: 'demand_gen' }
    ]
  };
}

function configureDynamic(customerId) {
  return {
    feedRequirements: {
      requiredAttributes: ['id', 'title', 'image_link', 'price', 'final_url'],
      recommendedAttributes: ['sale_price', 'brand', 'custom_label'],
      feedSource: 'merchant_center_or_custom'
    },
    templateStrategy: {
      singleProduct: { layout: 'product_image_price_cta', bestFor: 'product_page_viewers' },
      multiProduct: { layout: 'carousel_recently_viewed', bestFor: 'category_browsers' },
      offerOverlay: { layout: 'product_with_promo_badge', bestFor: 'cart_abandoners_with_offer' }
    },
    responsiveDisplayAds: {
      headlines: ['Come Back for {product_name}', 'Still Interested?', 'Don\'t Miss Out'],
      descriptions: ['Complete your purchase today.', 'Limited stock available.'],
      promotionText: 'Free shipping on orders over $50'
    }
  };
}

function configureRLSA(conversionData) {
  return {
    bidOnlyMode: {
      audiences: ['all_visitors_30d', 'engaged_visitors_30d'],
      bidAdjustments: {
        all_visitors: '+15%',
        engaged_visitors: '+30%',
        cart_abandoners: '+50%'
      },
      useCase: 'Increase bids for past visitors on existing keywords'
    },
    targetAndBidMode: {
      audiences: ['cart_abandoners_14d', 'past_purchasers_180d'],
      additionalKeywords: ['broad_match_generic_terms'],
      useCase: 'Show ads on broader queries only to high-intent past visitors'
    }
  };
}

function buildExclusionMatrix() {
  return {
    rules: [
      { campaign: 'prospecting', exclude: ['all_visitors_30d'] },
      { campaign: 'consideration_remarketing', exclude: ['converters_30d', 'top_of_funnel_only'] },
      { campaign: 'conversion_remarketing', exclude: ['converters_30d'] },
      { campaign: 'retention_remarketing', exclude: ['non_converters'] }
    ],
    rationale: 'Prevent audience overlap to ensure each user receives funnel-appropriate messaging'
  };
}

与 Buddy™ Agent 集成

再营销策略是 Buddy™ Agent 中负责留存和重新互动的编排层。该平台会自动管理整个再营销生命周期:创建受众名单、管理成员资格期限、部署顺序消息,以及优化频次上限。

Buddy™ 会按漏斗阶段监控再营销效果,并自动调整策略。当它检测到某个细分受众的转化率下降(广告疲劳信号)时,会调低频次上限并更新创意素材。当某个细分受众表现良好时,它会建议增加预算并扩大受众范围。

这项技能与受众定位技能紧密集成,用于构建名单;与广告文案生成技能集成,用于制作再营销创意素材;并与转化追踪技能集成,以确保准确定义转化后的受众。Buddy™ 提供统一的客户旅程视图,展示用户如何经过再营销漏斗,以及他们在哪里完成转化或流失。

最佳实践

  1. 按转化漏斗阶段细分再营销列表——绝不要向所有访客发送相同的信息
  2. 对漏斗底部受众采用较短的会员期限(7-14 天),以保持紧迫感
  3. 设置频次上限,防止广告疲劳(大多数细分受众每天展示 3-5 次)
  4. 构建循序渐进的信息链,逐步推动用户完成转化
  5. 将近期转化的用户排除在获客再营销之外,避免浪费展示次数
  6. 为电商采用动态再营销,向用户展示他们浏览过的具体产品
  7. 对高意向再营销列表应用 +30-50% 的 RLSA 出价调整
  8. 为每个转化漏斗阶段创建单独的再营销广告系列,并分配专属预算
  9. 每隔 4-6 周更新一次再营销创意,以对抗广告疲劳
  10. 使用跨设备再营销(已登录用户),确保信息在不同设备间保持连贯

平台兼容性

平台支持
Claude Code✅
Cursor✅
Codex✅
Gemini✅

相关技能

  • 受众定向 - 受众列表构建和细分为创建再营销列表提供支持
  • 广告文案生成 - 循序渐进的再营销信息需要针对每个转化漏斗阶段定制广告创意
  • 转化跟踪 - 准确的转化事件可界定转化后受众的边界
  • 实体记忆管理 - 跟踪再营销漏斗表现和跨会话的受众行为

关键词

再营销策略、再定向、RLSA、动态再营销、受众细分、频次上限、循序渐进的信息、客户旅程、跨设备再营销、再营销列表、购物车放弃、漏斗再营销、展示广告再营销、YouTube 再营销、再营销最佳实践


© 2026 googleadsagent.ai™ | Agent Skills™ | MIT License

评论

支持 Markdown