competitor-ad-tracking
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseCompetitor Ad Tracking
竞品广告跟踪
Use this skill when the task is paid-ad-library competitor research first and platform choice second. The job is not just to pull ads. The job is to pull the right ads, preserve the raw evidence, and turn them into useful competitive signal.
当任务核心是先进行付费广告库竞品研究、再选择平台时,使用此技能。这项工作不只是提取广告,而是提取合适的广告、保留原始证据,并将其转化为有用的竞争信号。
Prerequisites
前置条件
- Install the CLI once:
bash
npm install -g scrapesocial- Authenticate with or
SCRAPECREATORS_API_KEY.--api-key - Start from the strongest identifier you have:
- Domain or website: start with Google ads
- Brand or company name: start with Meta or LinkedIn
- Ad URL or ad ID: use the detail command directly
- Topic, pain point, or offer: use keyword search commands first
- 安装一次CLI工具:
bash
npm install -g scrapesocial- 使用或
SCRAPECREATORS_API_KEY进行身份验证。--api-key - 从你拥有的最明确的标识符开始:
- 域名或网站:从Google广告入手
- 品牌或公司名称:从Meta或LinkedIn入手
- 广告URL或广告ID:直接使用详情命令
- 主题、痛点或优惠:先使用关键词搜索命令
What makes ad extraction valuable
广告提取的价值所在
A raw ad dump is low value. A good extraction answers:
- What problems is this competitor paying to repeat?
- Which offers, proofs, and CTAs recur across multiple ads?
- Which creative formats keep showing up?
- What changed across dates, countries, or languages?
- Where is the whitespace for an original angle?
Always try to produce:
- An ad inventory
- A message map
- A creative-pattern summary
- A change log if this is a repeat pull
- A short "what to test differently" note
原始广告转储的价值很低。优质的提取需要回答:
- 竞品付费重复推广的是哪些问题?
- 哪些优惠、证明和CTA在多个广告中重复出现?
- 哪些创意格式持续出现?
- 不同日期、国家或语言的广告有哪些变化?
- 哪些空白领域可以打造独特的切入点?
始终尝试输出:
- 广告清单
- 消息映射图
- 创意模式总结
- 若为重复提取,需提供变更日志
- 简短的「差异化测试建议」说明
Guardrails
约束规则
- Never copy competitor headlines, scripts, visual compositions, or claims directly.
- Use extracted ads to understand category patterns, not to produce near-clones.
- Do not claim performance winners unless the payload actually includes performance data.
- Treat recurrence, freshness, and breadth as priority signals, not proof of effectiveness.
- If advertiser identity is ambiguous, stop and confirm the exact company before pulling more data.
- 切勿直接复制竞品的标题、脚本、视觉构图或宣传语。
- 利用提取的广告了解行业模式,而非制作仿品。
- 除非获取的内容中包含性能数据,否则不要宣称哪些是表现最佳的广告。
- 将重复度、新鲜度和覆盖范围视为优先信号,而非效果的证明。
- 若广告主身份不明确,在提取更多数据前请先确认具体公司。
Platform routing
平台路由
| Need | Best command path | Why |
|---|---|---|
| Known competitor website or domain | | Strongest domain-native lookup in this CLI. |
| Known competitor brand on Meta | | Best advertiser-level Meta Ad Library workflow. |
| Known competitor brand on LinkedIn | | Direct company-level search. |
| Topic or pain-point scan | | Best when the advertiser is not known yet. |
| One standout ad | | Pull detail only after shortlist. |
| 需求 | 最佳命令路径 | 原因 |
|---|---|---|
| 已知竞品网站或域名 | | 此CLI中最精准的域名原生查询方式。 |
| Meta平台上的已知竞品品牌 | | Meta广告库中最佳的广告主级工作流。 |
| LinkedIn平台上的已知竞品品牌 | | 直接的公司级搜索。 |
| 主题或痛点扫描 | | 当广告主未知时的最佳选择。 |
| 单个重点广告 | | 仅在筛选出短名单后提取详情。 |
Command notes
命令说明
facebook ads companies search- Use to find advertiser names and page IDs from a brand query.
facebook ads companies get- Use to list ads for one advertiser.
- is better for repeated and higher-reach signal.
--sort-by total_impressions - is better for current messaging.
--sort-by relevancy_monthly_grouped
facebook ads get- Use to inspect one specific ad.
- Add for short video ads when script text matters.
--get-transcript
google ads advertisers get- Use when the user gives a competitor site or domain.
- Add only after shortlisting because it costs 25 credits.
--get-ad-details
google ads get- Use to fetch one Google ad by URL.
linkedin ads search- Use or
--companyfor a known brand.--company-id - Use for category scans.
--keyword - Reuse exactly as returned.
--pagination-token
- Use
linkedin ads get- Use to fetch one LinkedIn ad by URL.
reddit ads search- Use for category-level and message-level scans.
- It is weaker than Meta or Google for exact advertiser tracking.
reddit ads get- Use to inspect one Reddit ad after shortlisting.
facebook ads companies search- 用于通过品牌查询找到广告主名称和页面ID。
facebook ads companies get- 用于列出单个广告主的所有广告。
- 更适合获取重复投放且覆盖范围广的信号。
--sort-by total_impressions - 更适合获取当前的推广消息。
--sort-by relevancy_monthly_grouped
facebook ads get- 用于查看单个特定广告的详情。
- 若脚本文本重要,可为短视频广告添加参数获取字幕。
--get-transcript
google ads advertisers get- 当用户提供竞品网站或域名时使用。
- 仅在筛选出短名单后添加,因为该操作消耗25个积分。
--get-ad-details
google ads get- 用于通过URL获取单个Google广告。
linkedin ads search- 针对已知品牌,使用或
--company参数。--company-id - 针对行业扫描,使用参数。
--keyword - 按返回值原样复用参数。
--pagination-token
- 针对已知品牌,使用
linkedin ads get- 用于通过URL获取单个LinkedIn广告。
reddit ads search- 用于行业级和消息级扫描。
- 在精准广告主跟踪方面,其效果弱于Meta或Google。
reddit ads get- 用于在筛选出短名单后查看单个Reddit广告的详情。
High-value workflows
高价值工作流
1. Known competitor, single-date snapshot
1. 已知竞品的单日快照
Use this when the user wants "show me Acme's current ads."
- Make a dated folder so future pulls are comparable.
- Pull Google by domain if the competitor site is known.
- Pull Meta by advertiser if the brand name is known.
- Pull LinkedIn by company if B2B or hiring or product marketing signals matter.
- Use detail commands only on representative or strategically important ads.
Example:
bash
mkdir -p research/acme/2026-03-08
scrapesocial google ads advertisers get \
--domain acme.com \
--start-date 2026-02-01 \
--end-date 2026-03-08 \
> research/acme/2026-03-08/google-ads-page1.json
scrapesocial facebook ads companies search \
--query "Acme" \
> research/acme/2026-03-08/meta-company-search.json
scrapesocial facebook ads companies get \
--page-id <page-id> \
--country US \
--status ACTIVE \
--sort-by relevancy_monthly_grouped \
--trim \
> research/acme/2026-03-08/meta-ads-page1.json
scrapesocial linkedin ads search \
--company "Acme" \
--countries US \
--start-date 2026-02-01 \
--end-date 2026-03-08 \
> research/acme/2026-03-08/linkedin-ads-page1.jsonGood follow-up questions:
- Are they pushing the same offer on every platform?
- Are the landing pages product pages, comparison pages, webinars, free trials, or demos?
- Are they talking to one segment or several?
当用户需求为「展示Acme公司当前的广告」时使用此工作流。
- 创建带日期的文件夹,以便未来提取的内容可对比。
- 若已知竞品网站,通过域名提取Google广告。
- 若已知品牌名称,通过广告主提取Meta广告。
- 若涉及B2B、招聘或产品营销信号,通过公司提取LinkedIn广告。
- 仅对具有代表性或战略重要性的广告使用详情命令。
示例:
bash
mkdir -p research/acme/2026-03-08
scrapesocial google ads advertisers get \
--domain acme.com \
--start-date 2026-02-01 \
--end-date 2026-03-08 \
> research/acme/2026-03-08/google-ads-page1.json
scrapesocial facebook ads companies search \
--query "Acme" \
> research/acme/2026-03-08/meta-company-search.json
scrapesocial facebook ads companies get \
--page-id <page-id> \
--country US \
--status ACTIVE \
--sort-by relevancy_monthly_grouped \
--trim \
> research/acme/2026-03-08/meta-ads-page1.json
scrapesocial linkedin ads search \
--company "Acme" \
--countries US \
--start-date 2026-02-01 \
--end-date 2026-03-08 \
> research/acme/2026-03-08/linkedin-ads-page1.json优质的跟进问题:
- 他们在所有平台上推广的是相同的优惠吗?
- 落地页是产品页、对比页、研讨会页面、免费试用页还是演示页?
- 他们面向的是单一客群还是多个客群?
2. Topic-first market scan
2. 主题优先的市场扫描
Use this when the user knows the category or pain point, but not the advertiser mix yet.
- Search Meta, LinkedIn, and Reddit by keyword.
- Note the advertisers that appear repeatedly.
- Pivot into advertiser-level pulls for the most relevant competitors.
Example:
bash
scrapesocial facebook ads search \
--query "project management" \
--country US \
--status ACTIVE \
--media-type VIDEO \
--trim
scrapesocial linkedin ads search \
--keyword "project management" \
--countries US
scrapesocial reddit ads search \
--query "project management" \
--industries TECH_B2B \
--formats VIDEOThis is valuable for:
- Identifying category hooks
- Seeing how competitors name the problem
- Spotting recurring offers and CTA structures
当用户了解行业或痛点,但未知广告主构成时使用此工作流。
- 通过关键词搜索Meta、LinkedIn和Reddit的广告。
- 记录重复出现的广告主。
- 针对最相关的竞品,转向广告主级别的提取。
示例:
bash
scrapesocial facebook ads search \
--query "project management" \
--country US \
--status ACTIVE \
--media-type VIDEO \
--trim
scrapesocial linkedin ads search \
--keyword "project management" \
--countries US
scrapesocial reddit ads search \
--query "project management" \
--industries TECH_B2B \
--formats VIDEO此工作流的价值在于:
- 识别行业切入点
- 了解竞品如何定义问题
- 发现重复出现的优惠和CTA结构
3. Standout-ad deep dive
3. 重点广告深度分析
Use this after the list pull, not before.
- Shortlist ads that repeat, look new, or represent a clear strategic angle.
- Pull detailed objects for only those ads.
- For short video ads on Meta, add transcripts.
Example:
bash
scrapesocial facebook ads get --id <ad-id> --get-transcript
scrapesocial google ads get --url <ad-url>
scrapesocial linkedin ads get --url <ad-url>
scrapesocial reddit ads get --id <ad-id>Look for:
- Exact hook and promise
- Proof element: testimonial, number, customer logo, stat, or demo
- Offer type: free trial, demo, guide, discount, comparison, or webinar
- CTA language
- Landing-page path or page type if exposed
此工作流仅在完成列表提取后使用,而非之前。
- 筛选出重复投放、最新发布或具有明确战略方向的广告。
- 仅对这些广告提取详细内容。
- 针对Meta上的短视频广告,获取字幕。
示例:
bash
scrapesocial facebook ads get --id <ad-id> --get-transcript
scrapesocial google ads get --url <ad-url>
scrapesocial linkedin ads get --url <ad-url>
scrapesocial reddit ads get --id <ad-id>重点关注:
- 确切的切入点和承诺
- 证明元素:客户证言、数据、客户logo、统计数据或产品演示
- 优惠类型:免费试用、演示、指南、折扣、对比或研讨会
- CTA话术
- 若可见,落地页路径或页面类型
4. Repeat tracking over time
4. 长期重复跟踪
Use this when the user wants monitoring rather than a one-off pull.
- Save raw outputs in .
research/<competitor>/<YYYY-MM-DD>/ - Reuse the same filters every run so comparisons stay valid.
- Compare:
- New ads
- Removed ads
- New offers
- New landing pages
- New countries or languages
- Creative-format shifts
- Only deep-dive net-new or strategically important ads.
A repeat pull is more valuable than a single pull because it shows:
- What the competitor keeps funding
- What they are testing now
- What campaigns appear seasonal or launch-driven
- Whether positioning is changing
当用户需求为监控而非一次性提取时使用此工作流。
- 将原始输出保存至目录。
research/<competitor>/<YYYY-MM-DD>/ - 每次运行使用相同的筛选条件,确保对比有效。
- 对比以下内容:
- 新发布的广告
- 已下线的广告
- 新的优惠
- 新的落地页
- 新增的投放国家或语言
- 创意格式的变化
- 仅对全新或具有战略重要性的广告进行深度分析。
重复提取比单次提取更有价值,因为它能展示:
- 竞品持续投入的内容
- 竞品当前正在测试的内容
- 哪些推广活动具有季节性或与产品上线相关
- 定位是否发生变化
What to extract from each ad
从每个广告中提取的内容
Do not just save the raw JSON and stop. Pull out:
- Platform
- Advertiser
- Ad ID or URL
- Date range or recency fields if present
- Country and language filters used
- Headline or primary copy
- CTA
- Media type
- Transcript or voiceover text if available
- Landing page URL or domain if present
- Offer
- Proof
- Hook or problem statement
不要仅保存原始JSON就结束工作,还需提取以下信息:
- 平台
- 广告主
- 广告ID或URL
- 日期范围或最近更新字段(若有)
- 使用的国家和语言筛选条件
- 标题或主要文案
- CTA
- 媒体类型
- 字幕或旁白文本(若有)
- 落地页URL或域名(若有)
- 优惠
- 证明
- 切入点或问题陈述
How to turn extracted ads into useful analysis
如何将提取的广告转化为有用的分析
Message map
消息映射图
For each competitor, group ads by:
- Problem
- Desired outcome
- Proof
- Offer
- Audience segment
- Funnel stage
针对每个竞品,按以下维度对广告进行分组:
- 问题
- 期望结果
- 证明
- 优惠
- 受众群体
- 漏斗阶段
Creative map
创意映射图
Track whether the ads lean on:
- Product UI or demo
- Founder or spokesperson
- Testimonial or social proof
- Before and after comparison
- Listicle or "mistakes" framing
- Event, webinar, or downloadable lead magnet
- Direct-response offer
跟踪广告是否采用以下形式:
- 产品UI或演示
- 创始人或代言人
- 客户证言或社交证明
- 前后对比
- 清单或「误区」框架
- 活动、研讨会或可下载的获客素材
- 直接响应式优惠
Change log
变更日志
Compare snapshots over time for:
- Net-new messages
- Retired messages
- New product launches
- Pricing or discount changes
- Localization or expansion
- Enterprise versus SMB split
对比不同时间点的快照,关注:
- 新增的消息
- 已停用的消息
- 新产品上线
- 定价或折扣变化
- 本地化或拓展
- 企业版与中小企业版的区分
Whitespace
空白领域
The highest-value output is not "here is what they do." It is:
- What every competitor says
- What no one is saying
- Which objections are overworked
- Which proof points are weak or repetitive
- Where an original position is available
最高价值的输出不是「他们在做什么」,而是:
- 所有竞品都在强调的内容
- 没有竞品提及的内容
- 哪些异议被过度使用
- 哪些证明点薄弱或重复
- 哪些领域可以打造独特的定位
Evidence hierarchy
证据优先级
Rank confidence like this:
- Same hook repeated across many ads
- Same hook repeated across platforms
- Same hook persists across multiple dates
- Same hook is paired with multiple creative variants
- Same hook is tied to multiple landing pages or offers
One isolated ad is weak signal. Repetition is stronger signal.
按以下顺序排列置信度:
- 多个广告重复使用相同的切入点
- 跨平台重复使用相同的切入点
- 多个时间段持续使用相同的切入点
- 相同切入点搭配多种创意变体
- 相同切入点对应多个落地页或优惠
单个孤立广告的信号较弱,重复出现的内容才是更强的信号。
Important limits
重要限制
- Ad libraries show existence, messaging, and some metadata. They do not automatically tell you revenue, ROAS, conversion rate, or true winner status.
- More ads can mean localization, testing, or coverage, not necessarily better performance.
- No single platform gives a complete view of the competitor's paid program.
- Reddit is better for theme discovery than exact advertiser monitoring.
- 广告库仅展示广告的存在、消息内容和部分元数据,不会自动提供收入、ROAS、转化率或真实的效果排名。
- 更多的广告可能意味着本地化、测试或覆盖范围广,而非效果更好。
- 没有单一平台能完整呈现竞品的付费推广计划。
- Reddit更适合主题发现,而非精准的广告主监控。
Minimal examples
极简示例
bash
scrapesocial facebook ads companies search --query "Notion"
scrapesocial facebook ads companies get --page-id <page-id> --status ACTIVE --country US --trim
scrapesocial facebook ads get --id <ad-id> --get-transcript
scrapesocial google ads advertisers get --domain notion.so
scrapesocial google ads get --url <ad-url>
scrapesocial linkedin ads search --company "Notion" --countries US
scrapesocial linkedin ads search --keyword "knowledge management" --countries US
scrapesocial linkedin ads get --url <ad-url>
scrapesocial reddit ads search --query "knowledge management" --industries TECH_B2B
scrapesocial reddit ads get --id <ad-id>bash
scrapesocial facebook ads companies search --query "Notion"
scrapesocial facebook ads companies get --page-id <page-id> --status ACTIVE --country US --trim
scrapesocial facebook ads get --id <ad-id> --get-transcript
scrapesocial google ads advertisers get --domain notion.so
scrapesocial google ads get --url <ad-url>
scrapesocial linkedin ads search --company "Notion" --countries US
scrapesocial linkedin ads search --keyword "knowledge management" --countries US
scrapesocial linkedin ads get --url <ad-url>
scrapesocial reddit ads search --query "knowledge management" --industries TECH_B2B
scrapesocial reddit ads get --id <ad-id>Pairing notes
搭配说明
- Pair with when the user wants paid and organic Meta activity side by side.
skillatlas/scrapesocial-facebook - Pair with when the user also needs demand language and objections from organic discussions.
skillatlas/scrapesocial-reddit - Pair with or
skillatlas/scrapesocial-youtubeif the user wants to compare paid creative with organic creative systems.skillatlas/scrapesocial-tiktok
- 当用户需要同时查看Meta的付费和自然流量活动时,搭配使用。
skillatlas/scrapesocial-facebook - 当用户还需要从自然讨论中获取需求话术和异议时,搭配使用。
skillatlas/scrapesocial-reddit - 当用户需要对比付费创意与自然创意体系时,搭配或
skillatlas/scrapesocial-youtube使用。skillatlas/scrapesocial-tiktok