Compare commits
51 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f23b665461 | |||
| 880386085e | |||
| dffa2fd3cb | |||
| db34fa2a21 | |||
| 0d586e4952 | |||
| 9125d8216e | |||
| 50e72e0a2d | |||
| 978051caf1 | |||
| e8623ad57d | |||
| e659c764dd | |||
| 58a9947df4 | |||
| ea4704a905 | |||
| 883f9b6380 | |||
| 743f718a7c | |||
| 5616e31192 | |||
| 2570f6ad4e | |||
| eb4256891a | |||
| 3448f557de | |||
| 9f9c2d6f59 | |||
| 7df49f2be8 | |||
| 2c7c108bd5 | |||
| fe670959f7 | |||
| 4874fe8979 | |||
| d88009d1a4 | |||
| 78da95de86 | |||
| 7c2e29c526 | |||
| 49f520f4eb | |||
| ef8e08ffd2 | |||
| e10c33406c | |||
| c31adfe89e | |||
| 1f295fa5c8 | |||
| af9fe5fb09 | |||
| bb54a76215 | |||
| 884cf5e108 | |||
| 295f1eef37 | |||
| 5c90bb8075 | |||
| 2fe1310881 | |||
| 6020ef6943 | |||
| 42ac956cb7 | |||
| d10c161c04 | |||
| 76d1f89df9 | |||
| 85b93be6d6 | |||
| dba8570870 | |||
| 314230b6db | |||
| 330d220aca | |||
| c4cb25cb6c | |||
| 4ceaf88e96 | |||
| 7d85256e19 | |||
| 7c13fccdd9 | |||
| b902ed2d79 | |||
| 47db68aaba |
@@ -12,17 +12,18 @@
|
||||
"plugins": [
|
||||
{
|
||||
"name": "marketing-skills",
|
||||
"description": "34 marketing skills for technical marketers and founders: ASO, CRO, copywriting, cold email, SEO, AI SEO, paid ads, ad creative, churn prevention, pricing strategy, referral programs, revenue operations, sales enablement, customer research, site architecture, and more",
|
||||
"description": "36 marketing skills for technical marketers and founders: ASO, CRO, copywriting, cold email, SEO, AI SEO, paid ads, ad creative, churn prevention, pricing strategy, referral programs, revenue operations, sales enablement, customer research, site architecture, and more",
|
||||
"source": "./",
|
||||
"strict": false,
|
||||
"skills": [
|
||||
"./skills/ab-test-setup",
|
||||
"./skills/ad-creative",
|
||||
"./skills/ai-seo",
|
||||
"./skills/aso",
|
||||
"./skills/analytics-tracking",
|
||||
"./skills/aso-audit",
|
||||
"./skills/churn-prevention",
|
||||
"./skills/cold-email",
|
||||
"./skills/community-marketing",
|
||||
"./skills/competitor-alternatives",
|
||||
"./skills/content-strategy",
|
||||
"./skills/copy-editing",
|
||||
|
||||
@@ -54,17 +54,19 @@ See each skill's **Related Skills** section for the full dependency map.
|
||||
<!-- SKILLS:START -->
|
||||
| Skill | Description |
|
||||
|-------|-------------|
|
||||
| [ab-test-setup](skills/ab-test-setup/) | When the user wants to plan, design, or implement an A/B test or experiment. Also use when the user mentions "A/B... |
|
||||
| [ab-test-setup](skills/ab-test-setup/) | When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program.... |
|
||||
| [ad-creative](skills/ad-creative/) | When the user wants to generate, iterate, or scale ad creative — headlines, descriptions, primary text, or full ad... |
|
||||
| [ai-seo](skills/ai-seo/) | When the user wants to optimize content for AI search engines, get cited by LLMs, or appear in AI-generated answers.... |
|
||||
| [analytics-tracking](skills/analytics-tracking/) | When the user wants to set up, improve, or audit analytics tracking and measurement. Also use when the user mentions... |
|
||||
| [aso-audit](skills/aso-audit/) | When the user wants to audit or optimize an App Store or Google Play listing. Also use when the user mentions 'ASO... |
|
||||
| [churn-prevention](skills/churn-prevention/) | When the user wants to reduce churn, build cancellation flows, set up save offers, recover failed payments, or... |
|
||||
| [cold-email](skills/cold-email/) | Write B2B cold emails and follow-up sequences that get replies. Use when the user wants to write cold outreach emails,... |
|
||||
| [community-marketing](skills/community-marketing/) | Build and leverage online communities to drive product growth and brand loyalty. Use when the user wants to create a... |
|
||||
| [competitor-alternatives](skills/competitor-alternatives/) | When the user wants to create competitor comparison or alternative pages for SEO and sales enablement. Also use when... |
|
||||
| [content-strategy](skills/content-strategy/) | When the user wants to plan a content strategy, decide what content to create, or figure out what topics to cover. Also... |
|
||||
| [copy-editing](skills/copy-editing/) | When the user wants to edit, review, or improve existing marketing copy. Also use when the user mentions 'edit this... |
|
||||
| [copy-editing](skills/copy-editing/) | When the user wants to edit, review, or improve existing marketing copy, or refresh outdated content. Also use when the... |
|
||||
| [copywriting](skills/copywriting/) | When the user wants to write, rewrite, or improve marketing copy for any page — including homepage, landing pages,... |
|
||||
| [customer-research](skills/customer-research/) | When the user wants to conduct, analyze, or synthesize customer research — including interview transcripts, surveys, support tickets, review mining, Reddit/G2/forum research, persona generation, and voice of customer (VOC)... |
|
||||
| [customer-research](skills/customer-research/) | When the user wants to conduct, analyze, or synthesize customer research. Use when the user mentions "customer... |
|
||||
| [email-sequence](skills/email-sequence/) | When the user wants to create or optimize an email sequence, drip campaign, automated email flow, or lifecycle email... |
|
||||
| [form-cro](skills/form-cro/) | When the user wants to optimize any form that is NOT signup/registration — including lead capture forms, contact forms,... |
|
||||
| [free-tool-strategy](skills/free-tool-strategy/) | When the user wants to plan, evaluate, or build a free tool for marketing purposes — lead generation, SEO value, or... |
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
---
|
||||
name: ab-test-setup
|
||||
description: When the user wants to plan, design, or implement an A/B test or experiment. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," or "how long should I run this test." Use this whenever someone is comparing two approaches and wants to measure which performs better. For tracking implementation, see analytics-tracking. For page-level conversion optimization, see page-cro.
|
||||
description: When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program," or "experiment playbook." Use this whenever someone is comparing two approaches and wants to measure which performs better, or when they want to build a systematic experimentation practice. For tracking implementation, see analytics-tracking. For page-level conversion optimization, see page-cro.
|
||||
metadata:
|
||||
version: 1.1.0
|
||||
version: 1.2.0
|
||||
---
|
||||
|
||||
# A/B Test Setup
|
||||
@@ -229,6 +229,93 @@ Document every test with:
|
||||
|
||||
---
|
||||
|
||||
## Growth Experimentation Program
|
||||
|
||||
Individual tests are valuable. A continuous experimentation program is a compounding asset. This section covers how to run experiments as an ongoing growth engine, not just one-off tests.
|
||||
|
||||
### The Experiment Loop
|
||||
|
||||
```
|
||||
1. Generate hypotheses (from data, research, competitors, customer feedback)
|
||||
2. Prioritize with ICE scoring
|
||||
3. Design and run the test
|
||||
4. Analyze results with statistical rigor
|
||||
5. Promote winners to a playbook
|
||||
6. Generate new hypotheses from learnings
|
||||
→ Repeat
|
||||
```
|
||||
|
||||
### Hypothesis Generation
|
||||
|
||||
Feed your experiment backlog from multiple sources:
|
||||
|
||||
| Source | What to Look For |
|
||||
|--------|-----------------|
|
||||
| Analytics | Drop-off points, low-converting pages, underperforming segments |
|
||||
| Customer research | Pain points, confusion, unmet expectations |
|
||||
| Competitor analysis | Features, messaging, or UX patterns they use that you don't |
|
||||
| Support tickets | Recurring questions or complaints about conversion flows |
|
||||
| Heatmaps/recordings | Where users hesitate, rage-click, or abandon |
|
||||
| Past experiments | "Significant loser" tests often reveal new angles to try |
|
||||
|
||||
### ICE Prioritization
|
||||
|
||||
Score each hypothesis 1-10 on three dimensions:
|
||||
|
||||
| Dimension | Question |
|
||||
|-----------|----------|
|
||||
| **Impact** | If this works, how much will it move the primary metric? |
|
||||
| **Confidence** | How sure are we this will work? (Based on data, not gut.) |
|
||||
| **Ease** | How fast and cheap can we ship and measure this? |
|
||||
|
||||
**ICE Score** = (Impact + Confidence + Ease) / 3
|
||||
|
||||
Run highest-scoring experiments first. Re-score monthly as context changes.
|
||||
|
||||
### Experiment Velocity
|
||||
|
||||
Track your experimentation rate as a leading indicator of growth:
|
||||
|
||||
| Metric | Target |
|
||||
|--------|--------|
|
||||
| Experiments launched per month | 4-8 for most teams |
|
||||
| Win rate | 20-30% is common for mature programs (sustained higher rates may indicate conservative hypotheses) |
|
||||
| Average test duration | 2-4 weeks |
|
||||
| Backlog depth | 20+ hypotheses queued |
|
||||
| Cumulative lift | Compound gains from all winners |
|
||||
|
||||
### The Experiment Playbook
|
||||
|
||||
When a test wins, don't just implement it — document the pattern:
|
||||
|
||||
```
|
||||
## [Experiment Name]
|
||||
**Date**: [date]
|
||||
**Hypothesis**: [the hypothesis]
|
||||
**Sample size**: [n per variant]
|
||||
**Result**: [winner/loser/inconclusive] — [primary metric] changed by [X%] (95% CI: [range], p=[value])
|
||||
**Guardrails**: [any guardrail metrics and their outcomes]
|
||||
**Segment deltas**: [notable differences by device, segment, or cohort]
|
||||
**Why it worked/failed**: [analysis]
|
||||
**Pattern**: [the reusable insight — e.g., "social proof near pricing CTAs increases plan selection"]
|
||||
**Apply to**: [other pages/flows where this pattern might work]
|
||||
**Status**: [implemented / parked / needs follow-up test]
|
||||
```
|
||||
|
||||
Over time, your playbook becomes a library of proven growth patterns specific to your product and audience.
|
||||
|
||||
### Experiment Cadence
|
||||
|
||||
**Weekly (30 min)**: Review running experiments for technical issues and guardrail metrics. Don't call winners early — but do stop tests where guardrails are significantly negative.
|
||||
|
||||
**Bi-weekly**: Conclude completed experiments. Analyze results, update playbook, launch next experiment from backlog.
|
||||
|
||||
**Monthly (1 hour)**: Review experiment velocity, win rate, cumulative lift. Replenish hypothesis backlog. Re-prioritize with ICE.
|
||||
|
||||
**Quarterly**: Audit the playbook. Which patterns have been applied broadly? Which winning patterns haven't been scaled yet? What areas of the funnel are under-tested?
|
||||
|
||||
---
|
||||
|
||||
## Common Mistakes
|
||||
|
||||
### Test Design
|
||||
|
||||
+47
-2
@@ -2,7 +2,7 @@
|
||||
name: ai-seo
|
||||
description: "When the user wants to optimize content for AI search engines, get cited by LLMs, or appear in AI-generated answers. Also use when the user mentions 'AI SEO,' 'AEO,' 'GEO,' 'LLMO,' 'answer engine optimization,' 'generative engine optimization,' 'LLM optimization,' 'AI Overviews,' 'optimize for ChatGPT,' 'optimize for Perplexity,' 'AI citations,' 'AI visibility,' 'zero-click search,' 'how do I show up in AI answers,' 'LLM mentions,' or 'optimize for Claude/Gemini.' Use this whenever someone wants their content to be cited or surfaced by AI assistants and AI search engines. For traditional technical and on-page SEO audits, see seo-audit. For structured data implementation, see schema-markup."
|
||||
metadata:
|
||||
version: 1.1.0
|
||||
version: 1.2.0
|
||||
---
|
||||
|
||||
# AI SEO
|
||||
@@ -226,6 +226,50 @@ AI systems don't just cite your website — they cite where you appear.
|
||||
- Create YouTube content for key how-to queries
|
||||
- Answer relevant Quora questions with depth
|
||||
|
||||
### Machine-Readable Files for AI Agents
|
||||
|
||||
AI agents aren't just answering questions — they're becoming buyers. When an AI agent evaluates tools on behalf of a user, it needs structured, parseable information. If your pricing is locked in a JavaScript-rendered page or a "contact sales" wall, agents will skip you and recommend competitors whose information they can actually read.
|
||||
|
||||
Add these machine-readable files to your site root:
|
||||
|
||||
**`/pricing.md` or `/pricing.txt`** — Structured pricing data for AI agents
|
||||
|
||||
```markdown
|
||||
# Pricing — [Your Product Name]
|
||||
|
||||
## Free
|
||||
- Price: $0/month
|
||||
- Limits: 100 emails/month, 1 user
|
||||
- Features: Basic templates, API access
|
||||
|
||||
## Pro
|
||||
- Price: $29/month (billed annually) | $35/month (billed monthly)
|
||||
- Limits: 10,000 emails/month, 5 users
|
||||
- Features: Custom domains, analytics, priority support
|
||||
|
||||
## Enterprise
|
||||
- Price: Custom — contact sales@example.com
|
||||
- Limits: Unlimited emails, unlimited users
|
||||
- Features: SSO, SLA, dedicated account manager
|
||||
```
|
||||
|
||||
**Why this matters now:**
|
||||
- AI agents increasingly compare products programmatically before a human ever visits your site
|
||||
- Opaque pricing gets filtered out of AI-mediated buying journeys
|
||||
- A simple markdown file is trivially parseable by any LLM — no rendering, no JavaScript, no login walls
|
||||
- Same principle as `robots.txt` (for crawlers), `llms.txt` (for AI context), and `AGENTS.md` (for agent capabilities)
|
||||
|
||||
**Best practices:**
|
||||
- Use consistent units (monthly vs. annual, per-seat vs. flat)
|
||||
- Include specific limits and thresholds, not just feature names
|
||||
- List what's included at each tier, not just what's different
|
||||
- Keep it updated — stale pricing is worse than no file
|
||||
- Link to it from your sitemap and main pricing page
|
||||
|
||||
**`/llms.txt`** — Context file for AI systems (see [llmstxt.org](https://llmstxt.org))
|
||||
|
||||
If you don't have one yet, add an `llms.txt` that gives AI systems a quick overview of what your product does, who it's for, and links to key pages (including your pricing).
|
||||
|
||||
### Schema Markup for AI
|
||||
|
||||
Structured data helps AI systems understand your content. Key schemas:
|
||||
@@ -309,7 +353,7 @@ Monthly manual check:
|
||||
- Feature comparison tables (you vs. category, not just competitors)
|
||||
- Specific metrics ("processes 10,000 transactions/sec" not "blazing fast")
|
||||
- Customer count or social proof with numbers
|
||||
- Pricing transparency (AI cites pages with visible pricing)
|
||||
- Pricing transparency (AI cites pages with visible pricing) — add a `/pricing.md` file so AI agents can parse your plans without rendering your page (see "Machine-Readable Files" above)
|
||||
- FAQ section addressing common buyer questions
|
||||
|
||||
### Blog Content
|
||||
@@ -358,6 +402,7 @@ Monthly manual check:
|
||||
- **Ignoring third-party presence** — You may get more AI citations from a Wikipedia mention than from your own blog
|
||||
- **No structured data** — Schema markup gives AI systems structured context about your content
|
||||
- **Keyword stuffing** — Unlike traditional SEO where it's just ineffective, keyword stuffing actively reduces AI visibility by 10% (Princeton GEO study)
|
||||
- **Hiding pricing behind "contact sales" or JS-rendered pages** — AI agents evaluating your product on behalf of buyers can't parse what they can't read. Add a `/pricing.md` file
|
||||
- **Blocking AI bots** — If GPTBot, PerplexityBot, or ClaudeBot are blocked in robots.txt, those platforms can't cite you
|
||||
- **Generic content without data** — "We're the best" won't get cited. "Our customers see 3x improvement in [metric]" will
|
||||
- **Forgetting to monitor** — You can't improve what you don't measure. Check AI visibility monthly at minimum
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
name: aso
|
||||
name: aso-audit
|
||||
description: "When the user wants to audit or optimize an App Store or Google Play listing. Also use when the user mentions 'ASO audit,' 'app store optimization,' 'optimize my app listing,' 'improve app visibility,' 'app store ranking,' 'audit my listing,' 'why aren't people downloading my app,' 'improve my app conversion,' 'keyword optimization for app,' or 'compare my app to competitors.' Use when the user shares an App Store or Google Play URL and wants to improve it."
|
||||
metadata:
|
||||
version: 1.0.0
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
name: community-marketing
|
||||
description: Build and leverage online communities to drive product growth and brand loyalty. Use when the user wants to create a community strategy, grow a Discord or Slack community, manage a forum or subreddit, build brand advocates, increase word-of-mouth, drive community-led growth, engage users post-signup, or turn customers into evangelists. Trigger phrases: "build a community," "community strategy," "Discord community," "Slack community," "community-led growth," "brand advocates," "user community," "forum strategy," "community engagement," "grow our community," "ambassador program," "community flywheel."
|
||||
description: "Build and leverage online communities to drive product growth and brand loyalty. Use when the user wants to create a community strategy, grow a Discord or Slack community, manage a forum or subreddit, build brand advocates, increase word-of-mouth, drive community-led growth, engage users post-signup, or turn customers into evangelists. Trigger phrases: \"build a community,\" \"community strategy,\" \"Discord community,\" \"Slack community,\" \"community-led growth,\" \"brand advocates,\" \"user community,\" \"forum strategy,\" \"community engagement,\" \"grow our community,\" \"ambassador program,\" \"community flywheel.\""
|
||||
metadata:
|
||||
version: 1.0.0
|
||||
---
|
||||
@@ -141,3 +141,23 @@ Depending on what the user needs, produce one of:
|
||||
- **Health Audit Report** — Current metrics, diagnosis, top 3 priorities to fix
|
||||
|
||||
Always be specific. Generic advice ("be consistent," "provide value") is not useful. Give the user something they can act on today.
|
||||
|
||||
---
|
||||
|
||||
## Task-Specific Questions
|
||||
|
||||
1. What platform are you building on (or considering)?
|
||||
2. What stage is the community at? (Pre-launch, early, growing, established)
|
||||
3. What's the primary business goal? (Retention, activation, word-of-mouth, support deflection)
|
||||
4. Who is the ideal community member and what motivates them?
|
||||
5. Do you have existing users or customers to seed from?
|
||||
6. How much time can you dedicate to community management weekly?
|
||||
|
||||
---
|
||||
|
||||
## Related Skills
|
||||
|
||||
- **referral-program**: For structured referral and ambassador incentive programs
|
||||
- **churn-prevention**: For retention strategies that complement community engagement
|
||||
- **social-content**: For content creation across social platforms
|
||||
- **customer-research**: For understanding your community members' needs and language
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
---
|
||||
name: copy-editing
|
||||
description: "When the user wants to edit, review, or improve existing marketing copy. Also use when the user mentions 'edit this copy,' 'review my copy,' 'copy feedback,' 'proofread,' 'polish this,' 'make this better,' 'copy sweep,' 'tighten this up,' 'this reads awkwardly,' 'clean up this text,' 'too wordy,' or 'sharpen the messaging.' Use this when the user already has copy and wants it improved rather than rewritten from scratch. For writing new copy, see copywriting."
|
||||
description: "When the user wants to edit, review, or improve existing marketing copy, or refresh outdated content. Also use when the user mentions 'edit this copy,' 'review my copy,' 'copy feedback,' 'proofread,' 'polish this,' 'make this better,' 'copy sweep,' 'tighten this up,' 'this reads awkwardly,' 'clean up this text,' 'too wordy,' 'sharpen the messaging,' 'refresh this content,' 'update this page,' 'this content is outdated,' or 'content audit.' Use this when the user already has copy and wants it improved or refreshed rather than rewritten from scratch. For writing new copy, see copywriting."
|
||||
metadata:
|
||||
version: 1.1.0
|
||||
version: 1.3.0
|
||||
---
|
||||
|
||||
# Copy Editing
|
||||
@@ -256,6 +256,57 @@ For every statement, ask "Okay, so what?" If the copy doesn't answer that questi
|
||||
|
||||
---
|
||||
|
||||
## Expert Panel Scoring
|
||||
|
||||
Use this after completing the Seven Sweeps for an additional quality gate. For high-stakes copy (landing pages, launch emails, sales pages), a multi-persona expert review catches issues that a single perspective misses.
|
||||
|
||||
### How It Works
|
||||
|
||||
1. **Assemble 3-5 expert personas** relevant to the copy type
|
||||
2. **Each persona scores the copy 1-10** on their area of expertise
|
||||
3. **Collect specific critiques** — not just scores, but what to fix
|
||||
4. **Revise based on feedback** — address the lowest-scoring areas first
|
||||
5. **Re-score after revisions** — iterate until all personas score 7+, with an average of 8+ across the panel
|
||||
|
||||
### Recommended Expert Panels
|
||||
|
||||
**Landing page copy:**
|
||||
- Conversion copywriter (clarity, CTA strength, benefit hierarchy)
|
||||
- UX writer (scannability, cognitive load, user flow)
|
||||
- Target customer persona (does this speak to me? do I trust it?)
|
||||
- Brand strategist (voice consistency, positioning accuracy)
|
||||
|
||||
**Email sequence:**
|
||||
- Email marketing specialist (subject lines, open/click optimization)
|
||||
- Copywriter (hooks, storytelling, persuasion)
|
||||
- Spam filter analyst (deliverability red flags, trigger words)
|
||||
- Target customer persona (relevance, value, unsubscribe risk)
|
||||
|
||||
**Sales page / long-form:**
|
||||
- Direct response copywriter (offer structure, objection handling, urgency)
|
||||
- Skeptical buyer persona (proof gaps, trust issues, red flags)
|
||||
- Editor (flow, readability, conciseness)
|
||||
- SEO specialist (keyword coverage, search intent alignment)
|
||||
|
||||
### Scoring Rubric
|
||||
|
||||
| Score | Meaning |
|
||||
|-------|---------|
|
||||
| 9-10 | Publish-ready. No meaningful improvements. |
|
||||
| 7-8 | Strong. Minor tweaks only. |
|
||||
| 5-6 | Functional but has clear gaps. Needs another pass. |
|
||||
| 3-4 | Significant issues. Major revision needed. |
|
||||
| 1-2 | Fundamentally broken. Rethink approach. |
|
||||
|
||||
### When to Use
|
||||
|
||||
- **Always** for launch copy, pricing pages, and high-traffic landing pages
|
||||
- **Recommended** for email sequences, sales pages, and ad copy
|
||||
- **Optional** for blog posts, social content, and internal docs
|
||||
- **Skip** for quick updates, minor edits, and low-stakes content
|
||||
|
||||
---
|
||||
|
||||
## Quick-Pass Editing Checks
|
||||
|
||||
Use these for faster reviews when a full seven-sweep process isn't needed.
|
||||
@@ -416,6 +467,15 @@ This iterative process ensures each edit doesn't create new problems while respe
|
||||
## References
|
||||
|
||||
- [Plain English Alternatives](references/plain-english-alternatives.md): Replace complex words with simpler alternatives
|
||||
- [Content Refresh](references/content-refresh.md): Full checklist, refresh vs. rewrite matrix, and cadence guide
|
||||
|
||||
---
|
||||
|
||||
## Content Refresh Editing
|
||||
|
||||
Copy editing isn't just for new content. Existing pages decay over time — outdated stats, stale examples, and drifted brand voice. Use the content refresh framework when traffic is declining, data is stale, or the product has changed.
|
||||
|
||||
**For the full refresh checklist, refresh vs. rewrite decision matrix, and cadence guide**: See [references/content-refresh.md](references/content-refresh.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -425,6 +485,7 @@ This iterative process ensures each edit doesn't create new problems while respe
|
||||
2. What action should readers take?
|
||||
3. Are there specific concerns or known issues?
|
||||
4. What proof/evidence do you have available?
|
||||
5. Is this new copy or a refresh of existing content?
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
# Content Refresh Editing
|
||||
|
||||
Copy editing isn't just for new content. Existing pages and posts decay over time — outdated stats, stale examples, drifted brand voice, and missed SEO opportunities. A content refresh applies the same editing rigor to content that's already published.
|
||||
|
||||
## When to Refresh
|
||||
|
||||
- **Traffic declining** on a page that used to perform well
|
||||
- **Stats or data** are more than 12 months old
|
||||
- **Product has changed** — features, pricing, or positioning no longer match
|
||||
- **Competitors updated** their version of the same content
|
||||
- **AI search visibility** matters — outdated content gets cited less (see ai-seo skill)
|
||||
|
||||
## Content Refresh Checklist
|
||||
|
||||
1. **Freshness pass** — Update all dates, stats, and examples. Replace "in 2024" with current data. Remove references to deprecated features or tools.
|
||||
2. **Accuracy pass** — Verify all claims are still true. Check that linked resources still exist. Confirm pricing and feature descriptions match current state.
|
||||
3. **Voice pass** — Does the tone match your current brand voice? Older content often reflects an earlier stage of the company.
|
||||
4. **SEO pass** — Has search intent shifted for this topic? Are there new keywords or questions to address? Add "Last updated: [date]" prominently.
|
||||
5. **Proof pass** — Can you add newer testimonials, case studies, or data points that didn't exist when this was first published?
|
||||
6. **Structure pass** — Add comparison tables, FAQ sections, or other scannable formats that make the content easier to consume.
|
||||
|
||||
## Refresh vs. Rewrite
|
||||
|
||||
| Signal | Action |
|
||||
|--------|--------|
|
||||
| Core message still valid, details outdated | Refresh (update facts, stats, examples) |
|
||||
| Brand voice has evolved significantly | Refresh + voice rewrite |
|
||||
| Topic angle or audience has shifted | Full rewrite |
|
||||
| Page structure doesn't match current search intent | Full rewrite |
|
||||
| Just needs updated stats and links | Light refresh |
|
||||
|
||||
## Refresh Cadence
|
||||
|
||||
- **Pricing and product pages**: Every quarter, or when pricing/features change
|
||||
- **High-traffic blog posts**: Every 6 months
|
||||
- **Comparison and alternatives pages**: Every 3-6 months (competitors change fast)
|
||||
- **Evergreen guides**: Annually, unless traffic drops sooner
|
||||
- **Low-traffic pages**: Only when traffic data suggests an opportunity
|
||||
@@ -121,17 +121,18 @@ Choose sources based on your ICP type — then read `references/source-guides.md
|
||||
|
||||
| ICP Type | Primary Sources |
|
||||
|----------|----------------|
|
||||
| B2B SaaS / technical buyers | Reddit (role-specific subs), G2/Capterra, Hacker News, LinkedIn, Indie Hackers |
|
||||
| SMB / founders | Reddit (r/entrepreneur, r/smallbusiness), Indie Hackers, Product Hunt, Facebook Groups |
|
||||
| B2B SaaS / technical buyers | Reddit (role-specific subs), G2/Capterra, Hacker News, LinkedIn, Indie Hackers, SparkToro |
|
||||
| SMB / founders | Reddit (r/entrepreneur, r/smallbusiness), Indie Hackers, Product Hunt, Facebook Groups, SparkToro |
|
||||
| Developer / DevOps | r/devops, r/programming, Hacker News, Stack Overflow, Discord servers |
|
||||
| B2C / consumer | App store reviews (1-3 star), Reddit hobby/lifestyle subs, YouTube comments, TikTok/Instagram comments |
|
||||
| Enterprise | LinkedIn, industry analyst reports, G2 Enterprise filter, job postings |
|
||||
| Enterprise | LinkedIn, industry analyst reports, G2 Enterprise filter, job postings, SparkToro |
|
||||
|
||||
**Quick decision guide:**
|
||||
- Have a product category? → Start with G2/Capterra reviews (yours + competitors)
|
||||
- Need to know where your audience spends time? → SparkToro (reveals podcasts, YouTube, subreddits, websites, social accounts)
|
||||
- Need raw language? → Reddit and YouTube comments
|
||||
- Need trigger events? → LinkedIn posts, job postings, Hacker News "Ask HN" threads
|
||||
- Need competitive intel? → Competitor 4-star reviews on G2; Product Hunt discussions
|
||||
- Need competitive intel? → Competitor 4-star reviews on G2; Product Hunt discussions; SparkToro competitor audience analysis
|
||||
|
||||
### What to Extract from Each Source
|
||||
|
||||
|
||||
@@ -282,6 +282,61 @@ Comments on review videos are especially valuable — these are people actively
|
||||
|
||||
---
|
||||
|
||||
## SparkToro (Audience Intelligence)
|
||||
|
||||
SparkToro is a behavioral audience research tool. Instead of mining individual posts and comments, it aggregates clickstream, search, and social data to show what your audience does at scale — what they read, watch, listen to, follow, and search for.
|
||||
|
||||
### When to Use SparkToro vs. Manual Research
|
||||
|
||||
- **SparkToro first** when you need to understand where your ICP spends time, what content they consume, and which influencers they follow — it answers these questions in seconds with aggregated data
|
||||
- **Manual research first** (Reddit, G2, communities) when you need raw language, exact quotes, emotional context, and the "why" behind behavior
|
||||
- **Best together**: Use SparkToro to identify which podcasts, subreddits, and websites matter, then go mine those sources manually for voice-of-customer language
|
||||
|
||||
### Key Queries to Run
|
||||
|
||||
**By competitor:**
|
||||
- "People who follow @competitor" — reveals shared audience affinities
|
||||
- "People who visit competitor.com" — shows what else they consume
|
||||
|
||||
**By audience description:**
|
||||
- "People who frequently talk about [topic]" — finds audience behaviors
|
||||
- "People whose bio contains [job title]" — profiles a role-based segment
|
||||
|
||||
**By your own audience:**
|
||||
- "People who visit yourdomain.com" — understand your actual audience
|
||||
- Compare against competitor audience profiles to find gaps
|
||||
|
||||
### What to Extract
|
||||
|
||||
| Data Type | What It Tells You | Use It For |
|
||||
|-----------|------------------|------------|
|
||||
| Top websites visited | Where your audience reads | Content partnerships, guest posting targets |
|
||||
| Top podcasts | What they listen to | Podcast guesting, sponsorship decisions |
|
||||
| Top YouTube channels | What they watch | Video content strategy, ad placements |
|
||||
| Top subreddits | Where they discuss | Community participation, Reddit ad targeting |
|
||||
| Search keywords | What they Google | SEO and content topic planning |
|
||||
| AI prompt topics | What they ask AI tools | Emerging content opportunities |
|
||||
| Social accounts followed | Who influences them | Influencer partnerships, co-marketing |
|
||||
| Demographics | Who they are | Persona building, ad targeting |
|
||||
|
||||
### Source Weighting
|
||||
|
||||
SparkToro data is aggregated and anonymized — it shows patterns, not individual opinions. Treat it as:
|
||||
- **High confidence** for behavioral data (what they visit, follow, search for)
|
||||
- **Medium confidence** for demographic data (self-reported, may be incomplete)
|
||||
- **Not a substitute** for qualitative research (doesn't capture language, emotions, or the "why")
|
||||
|
||||
### Limitations
|
||||
|
||||
- Free tier: 5 reports/month, shallow results (top 5–10)
|
||||
- No public API — all research done through web interface
|
||||
- Skews English-language, US-centric
|
||||
- Shows what audiences do, not why — pair with qualitative sources
|
||||
|
||||
See [tools/integrations/sparktoro.md](../../../tools/integrations/sparktoro.md) for full tool details and pricing.
|
||||
|
||||
---
|
||||
|
||||
## Organizing Your Research
|
||||
|
||||
Use a simple tagging system across all sources:
|
||||
@@ -319,6 +374,7 @@ Not all sources carry equal weight. Use this guide when assigning confidence lab
|
||||
| Survey (multiple choice) | Low-medium | Artifacts of the options you provided |
|
||||
| NPS verbatims | Medium | Correlates with score; prompted by the survey moment |
|
||||
| YouTube/TikTok comments | Medium | Skews toward engaged viewers; social performance |
|
||||
| SparkToro audience data | Medium-high | Aggregated behavioral data; strong for "what" but not "why" |
|
||||
| Job postings | Low-medium | Aspirational, not necessarily reflective of current pain |
|
||||
|
||||
### Confidence Labels in Practice
|
||||
|
||||
@@ -245,6 +245,8 @@ Before launching campaigns, ensure proper tracking and account setup.
|
||||
|
||||
**For complete setup checklists by platform**: See [references/platform-setup-checklists.md](references/platform-setup-checklists.md)
|
||||
|
||||
**For conversion pixel installation and event setup**: See [references/conversion-tracking.md](references/conversion-tracking.md)
|
||||
|
||||
### Universal Pre-Launch Checklist
|
||||
- [ ] Conversion tracking tested with real conversion
|
||||
- [ ] Landing page loads fast (<3 sec)
|
||||
@@ -302,7 +304,7 @@ For implementation, see the [tools registry](../../tools/REGISTRY.md). Key adver
|
||||
| **LinkedIn Ads** | B2B, job title targeting | - | [linkedin-ads.md](../../tools/integrations/linkedin-ads.md) |
|
||||
| **TikTok Ads** | Younger demographics, video | - | [tiktok-ads.md](../../tools/integrations/tiktok-ads.md) |
|
||||
|
||||
For tracking, see also: [ga4.md](../../tools/integrations/ga4.md), [segment.md](../../tools/integrations/segment.md)
|
||||
For tracking setup, see [references/conversion-tracking.md](references/conversion-tracking.md), [ga4.md](../../tools/integrations/ga4.md), [segment.md](../../tools/integrations/segment.md)
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -0,0 +1,361 @@
|
||||
# Conversion Tracking Setup
|
||||
|
||||
How to set up conversion tracking pixels across ad platforms. This guide covers installation, event configuration, and validation — everything a marketer needs to ensure ad spend is properly attributed.
|
||||
|
||||
---
|
||||
|
||||
## Why This Matters
|
||||
|
||||
Without conversion tracking:
|
||||
- Ad platforms can't optimize for your actual goals
|
||||
- You're flying blind on ROAS and CPA
|
||||
- Retargeting audiences can't be built
|
||||
- You'll waste budget on impressions that don't convert
|
||||
|
||||
Get tracking right before spending a dollar on ads.
|
||||
|
||||
---
|
||||
|
||||
## Platform Pixels Overview
|
||||
|
||||
| Platform | Pixel/Tag Name | Events API | Key Events |
|
||||
|----------|---------------|:----------:|------------|
|
||||
| **Google Ads** | Google tag (gtag.js) | Enhanced Conversions | purchase, sign_up, generate_lead |
|
||||
| **Meta** | Meta Pixel + CAPI | Conversions API | Purchase, Lead, ViewContent, AddToCart |
|
||||
| **LinkedIn** | Insight Tag | Conversions API | conversion (URL or event-based) |
|
||||
| **TikTok** | TikTok Pixel | Events API | Purchase, ViewContent, AddToCart, CompleteRegistration |
|
||||
| **Twitter/X** | Twitter Pixel | - | Purchase, SignUp, Download |
|
||||
|
||||
---
|
||||
|
||||
## Google Ads
|
||||
|
||||
### Install the Google tag
|
||||
|
||||
Add to every page, in `<head>`:
|
||||
|
||||
```html
|
||||
<script async src="https://www.googletagmanager.com/gtag/js?id=AW-XXXXXXXXX"></script>
|
||||
<script>
|
||||
window.dataLayer = window.dataLayer || [];
|
||||
function gtag(){dataLayer.push(arguments);}
|
||||
gtag('js', new Date());
|
||||
gtag('config', 'AW-XXXXXXXXX');
|
||||
</script>
|
||||
```
|
||||
|
||||
Replace `AW-XXXXXXXXX` with your Conversion ID from Google Ads > Tools > Conversions.
|
||||
|
||||
### Set up conversion actions
|
||||
|
||||
In Google Ads > Goals > Conversions > New conversion action:
|
||||
|
||||
| Conversion | Category | Value | Count |
|
||||
|-----------|----------|-------|-------|
|
||||
| Purchase | Purchase | Dynamic (order value) | Every |
|
||||
| Sign up / Lead | Sign-up | Fixed ($X estimated value) | One |
|
||||
| Demo request | Lead | Fixed ($X estimated value) | One |
|
||||
| Free trial start | Sign-up | Fixed ($X estimated value) | One |
|
||||
|
||||
### Fire conversion events
|
||||
|
||||
```javascript
|
||||
// Purchase
|
||||
gtag('event', 'conversion', {
|
||||
'send_to': 'AW-XXXXXXXXX/CONVERSION_LABEL',
|
||||
'value': 99.00,
|
||||
'currency': 'USD',
|
||||
'transaction_id': 'ORDER-123'
|
||||
});
|
||||
|
||||
// Lead / Sign up
|
||||
gtag('event', 'conversion', {
|
||||
'send_to': 'AW-XXXXXXXXX/CONVERSION_LABEL',
|
||||
'value': 50.00,
|
||||
'currency': 'USD'
|
||||
});
|
||||
```
|
||||
|
||||
### Enhanced Conversions
|
||||
|
||||
Sends hashed first-party data (email, phone) to improve attribution after cookie restrictions. Enable in Google Ads > Goals > Settings > Enhanced conversions.
|
||||
|
||||
```javascript
|
||||
gtag('set', 'user_data', {
|
||||
'email': 'user@example.com', // auto-hashed by gtag
|
||||
'phone_number': '+11234567890'
|
||||
});
|
||||
```
|
||||
|
||||
### Google Tag Manager alternative
|
||||
|
||||
If using GTM instead of inline gtag.js:
|
||||
1. Install GTM container on all pages
|
||||
2. Create Google Ads conversion tags in GTM
|
||||
3. Set triggers for conversion events (form submissions, purchases)
|
||||
4. Use the Data Layer to pass dynamic values (order amount, transaction ID)
|
||||
5. Test with GTM Preview mode before publishing
|
||||
|
||||
---
|
||||
|
||||
## Meta (Facebook/Instagram)
|
||||
|
||||
### Install the Meta Pixel
|
||||
|
||||
Add to every page, in `<head>`:
|
||||
|
||||
```html
|
||||
<script>
|
||||
!function(f,b,e,v,n,t,s)
|
||||
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
|
||||
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
|
||||
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
|
||||
n.queue=[];t=b.createElement(e);t.async=!0;
|
||||
t.src=v;s=b.getElementsByTagName(e)[0];
|
||||
s.parentNode.insertBefore(t,s)}(window, document,'script',
|
||||
'https://connect.facebook.net/en_US/fbevents.js');
|
||||
fbq('init', 'YOUR_PIXEL_ID');
|
||||
fbq('track', 'PageView');
|
||||
</script>
|
||||
```
|
||||
|
||||
Replace `YOUR_PIXEL_ID` from Meta Events Manager.
|
||||
|
||||
### Standard events
|
||||
|
||||
```javascript
|
||||
// View a product or key page
|
||||
fbq('track', 'ViewContent', {
|
||||
content_name: 'Pro Plan',
|
||||
content_category: 'Pricing',
|
||||
value: 29.00,
|
||||
currency: 'USD'
|
||||
});
|
||||
|
||||
// Lead capture (form submit, demo request)
|
||||
fbq('track', 'Lead', {
|
||||
content_name: 'Demo Request',
|
||||
value: 50.00,
|
||||
currency: 'USD'
|
||||
});
|
||||
|
||||
// Purchase
|
||||
fbq('track', 'Purchase', {
|
||||
value: 99.00,
|
||||
currency: 'USD',
|
||||
content_type: 'product',
|
||||
contents: [{ id: 'pro-plan', quantity: 1 }]
|
||||
});
|
||||
|
||||
// Add to cart (e-commerce)
|
||||
fbq('track', 'AddToCart', {
|
||||
content_ids: ['SKU-123'],
|
||||
content_type: 'product',
|
||||
value: 49.00,
|
||||
currency: 'USD'
|
||||
});
|
||||
```
|
||||
|
||||
### Conversions API (CAPI)
|
||||
|
||||
Server-side tracking that works alongside the pixel. Required for accurate tracking after iOS 14+ and cookie restrictions.
|
||||
|
||||
Set up via:
|
||||
- **Direct integration** — send events from your server to Meta's API
|
||||
- **Partner integrations** — Shopify, WooCommerce, Segment, etc. have built-in CAPI support
|
||||
- **Conversions API Gateway** — Meta's managed solution via AWS
|
||||
|
||||
Key: send the same events from both pixel (browser) AND CAPI (server), with a shared `event_id` for deduplication.
|
||||
|
||||
### Aggregated Event Measurement
|
||||
|
||||
Required for iOS 14+ tracking. In Events Manager > Aggregated Event Measurement:
|
||||
1. Verify your domain
|
||||
2. Configure and prioritize your top 8 events in order of business importance
|
||||
3. Purchase should typically be #1, Lead #2
|
||||
|
||||
---
|
||||
|
||||
## LinkedIn
|
||||
|
||||
### Install the Insight Tag
|
||||
|
||||
Add to every page, before `</body>`:
|
||||
|
||||
```html
|
||||
<script type="text/javascript">
|
||||
_linkedin_partner_id = "YOUR_PARTNER_ID";
|
||||
window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || [];
|
||||
window._linkedin_data_partner_ids.push(_linkedin_partner_id);
|
||||
(function(l) {
|
||||
if (!l){window.lintrk = function(a,b){window.lintrk.q.push([a,b])};
|
||||
window.lintrk.q=[]}
|
||||
var s = document.getElementsByTagName("script")[0];
|
||||
var b = document.createElement("script");
|
||||
b.type = "text/javascript";b.async = true;
|
||||
b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js";
|
||||
s.parentNode.insertBefore(b, s);})(window.lintrk);
|
||||
</script>
|
||||
```
|
||||
|
||||
### Conversion tracking
|
||||
|
||||
LinkedIn supports two methods:
|
||||
|
||||
**URL-based**: Fires when someone visits a specific URL (e.g., `/thank-you`).
|
||||
Set up in Campaign Manager > Analyze > Conversion Tracking > Create Conversion.
|
||||
|
||||
**Event-based**: Fire manually on specific actions:
|
||||
|
||||
```javascript
|
||||
window.lintrk('track', { conversion_id: YOUR_CONVERSION_ID });
|
||||
```
|
||||
|
||||
### LinkedIn CAPI
|
||||
|
||||
For server-side tracking, LinkedIn offers a Conversions API. Set up via partner integrations (Segment, Tealium) or direct API calls. Deduplicates with the Insight Tag automatically when configured correctly.
|
||||
|
||||
---
|
||||
|
||||
## TikTok
|
||||
|
||||
### Install the TikTok Pixel
|
||||
|
||||
Add to every page, in `<head>`:
|
||||
|
||||
```html
|
||||
<script>
|
||||
!function (w, d, t) {
|
||||
w.TiktokAnalyticsObject=t;var ttq=w[t]=w[t]||[];
|
||||
ttq.methods=["page","track","identify","instances","debug","on","off",
|
||||
"once","ready","alias","group","enableCookie","disableCookie","holdConsent",
|
||||
"revokeConsent","grantConsent"],ttq.setAndDefer=function(t,e)
|
||||
{t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}};
|
||||
for(var i=0;i<ttq.methods.length;i++)ttq.setAndDefer(ttq,ttq.methods[i]);
|
||||
ttq.instance=function(t){for(var e=ttq._i[t]||[],n=0;
|
||||
n<ttq.methods.length;n++)ttq.setAndDefer(e,ttq.methods[n]);return e};
|
||||
ttq.load=function(e,n){var r="https://analytics.tiktok.com/i18n/pixel/events.js",
|
||||
o=n&&n.partner;ttq._i=ttq._i||{},ttq._i[e]=[],ttq._i[e]._u=r,
|
||||
ttq._t=ttq._t||{},ttq._t[e]=+new Date,ttq._o=ttq._o||{},
|
||||
ttq._o[e]=n||{};var s=document.createElement("script");
|
||||
s.type="text/javascript",s.async=!0,s.src=r+"?sdkid="+e+"&lib="+t;
|
||||
var a=document.getElementsByTagName("script")[0];
|
||||
a.parentNode.insertBefore(s,a)};
|
||||
ttq.load('YOUR_PIXEL_ID');
|
||||
ttq.page();
|
||||
}(window, document, 'ttq');
|
||||
</script>
|
||||
```
|
||||
|
||||
### Standard events
|
||||
|
||||
```javascript
|
||||
// View content
|
||||
ttq.track('ViewContent', {
|
||||
content_id: 'pro-plan',
|
||||
content_type: 'product',
|
||||
content_name: 'Pro Plan',
|
||||
value: 29.00,
|
||||
currency: 'USD'
|
||||
});
|
||||
|
||||
// Complete registration / sign up
|
||||
ttq.track('CompleteRegistration', {
|
||||
content_name: 'Free Trial'
|
||||
});
|
||||
|
||||
// Purchase
|
||||
ttq.track('Purchase', {
|
||||
content_id: 'pro-plan',
|
||||
content_type: 'product',
|
||||
value: 99.00,
|
||||
currency: 'USD',
|
||||
quantity: 1
|
||||
});
|
||||
|
||||
// Add to cart
|
||||
ttq.track('AddToCart', {
|
||||
content_id: 'SKU-123',
|
||||
content_type: 'product',
|
||||
value: 49.00,
|
||||
currency: 'USD'
|
||||
});
|
||||
```
|
||||
|
||||
### Events API (server-side)
|
||||
|
||||
TikTok's Events API works like Meta's CAPI — send the same events from your server for better attribution. Use `event_id` for deduplication with browser pixel events.
|
||||
|
||||
### Advanced Matching
|
||||
|
||||
Pass hashed user data for better attribution:
|
||||
|
||||
```javascript
|
||||
ttq.identify({
|
||||
email: 'user@example.com', // auto-hashed
|
||||
phone_number: '+11234567890'
|
||||
});
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Validation Checklist
|
||||
|
||||
After installing any pixel, verify before going live:
|
||||
|
||||
### Browser-side checks
|
||||
|
||||
- [ ] Pixel fires on every page (check via browser extension)
|
||||
- [ ] Conversion events fire at the right moment (after confirmed action, not on button click)
|
||||
- [ ] Event parameters contain correct values (currency, amount, content IDs)
|
||||
- [ ] No duplicate events firing on the same action
|
||||
- [ ] Events fire on both desktop and mobile
|
||||
|
||||
### Platform-side checks
|
||||
|
||||
- [ ] Events appear in the platform's event manager/diagnostics
|
||||
- [ ] Test conversions show correct values
|
||||
- [ ] Event match quality is acceptable (Meta: score > 6)
|
||||
- [ ] Server-side events are deduplicating with browser events (not double-counting)
|
||||
|
||||
### Debugging tools
|
||||
|
||||
| Platform | Tool |
|
||||
|----------|------|
|
||||
| Google | Google Tag Assistant, Chrome DevTools Network tab |
|
||||
| Meta | Meta Pixel Helper (Chrome extension), Events Manager Test Events |
|
||||
| LinkedIn | Insight Tag Validator in Campaign Manager |
|
||||
| TikTok | TikTok Pixel Helper (Chrome extension), Events Manager |
|
||||
| All | GTM Preview Mode (if using Google Tag Manager) |
|
||||
|
||||
---
|
||||
|
||||
## Common Mistakes
|
||||
|
||||
- **Firing purchase events on button click instead of confirmed payment** — always fire on the success/thank-you page or after server confirmation
|
||||
- **Missing deduplication between pixel and server events** — without a shared `event_id`, you'll double-count conversions
|
||||
- **Not testing on mobile** — many pixels break on mobile browsers or in-app webviews
|
||||
- **Hardcoded test values** — remove test transaction amounts before going live
|
||||
- **Forgetting to exclude internal traffic** — your team's visits inflate conversion data
|
||||
- **Installing pixels without consent management** — GDPR/CCPA require user consent before firing tracking pixels in applicable regions
|
||||
- **Pixel installed but no conversion actions created** — the pixel collects data, but the ad platform won't optimize without defined conversion actions
|
||||
|
||||
---
|
||||
|
||||
## When to Use Server-Side Tracking
|
||||
|
||||
Browser-only tracking is increasingly unreliable due to:
|
||||
- iOS 14+ App Tracking Transparency
|
||||
- Third-party cookie deprecation
|
||||
- Ad blockers (30%+ of tech audiences)
|
||||
|
||||
**Use server-side (CAPI/Events API) when:**
|
||||
- Running Meta or TikTok ads (strongly recommended)
|
||||
- Your audience is tech-savvy (higher ad blocker usage)
|
||||
- You need accurate purchase/revenue attribution
|
||||
- You're spending >$5K/month on any platform
|
||||
|
||||
**Server-side is optional when:**
|
||||
- Running Google Ads only (Enhanced Conversions covers most gaps)
|
||||
- Low ad spend / testing phase
|
||||
- B2B with LinkedIn only (Insight Tag is still reliable)
|
||||
@@ -2,7 +2,7 @@
|
||||
name: social-content
|
||||
description: "When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, Facebook, or other platforms. Also use when the user mentions 'LinkedIn post,' 'Twitter thread,' 'social media,' 'content calendar,' 'social scheduling,' 'engagement,' 'viral content,' 'what should I post,' 'repurpose this content,' 'tweet ideas,' 'LinkedIn carousel,' 'social media strategy,' or 'grow my following.' Use this for any social media content creation, repurposing, or scheduling task. For broader content strategy, see content-strategy."
|
||||
metadata:
|
||||
version: 1.1.0
|
||||
version: 1.2.0
|
||||
---
|
||||
|
||||
# Social Content
|
||||
@@ -49,6 +49,7 @@ Gather this context (ask if not provided):
|
||||
| Facebook | Communities, local businesses | 1-2x/day | Groups, native video |
|
||||
|
||||
**For detailed platform strategies**: See [references/platforms.md](references/platforms.md)
|
||||
|
||||
**For hashtag limits and character counts**: See [references/platform-limits.md](references/platform-limits.md)
|
||||
|
||||
---
|
||||
@@ -108,7 +109,7 @@ The first line determines whether anyone reads the rest.
|
||||
|
||||
## Content Repurposing System
|
||||
|
||||
Turn one piece of content into many:
|
||||
Turn one piece of content into many. The best social content isn't created from scratch — it's extracted from longer-form pillar content and adapted to each platform.
|
||||
|
||||
### Blog Post → Social Content
|
||||
|
||||
@@ -120,13 +121,61 @@ Turn one piece of content into many:
|
||||
| Instagram | Carousel with visuals |
|
||||
| Instagram | Reel summarizing the post |
|
||||
|
||||
### Podcast / Video → Social Content
|
||||
|
||||
Extract "content atoms" — self-contained moments from any long-form content that work on their own:
|
||||
|
||||
| Atom Type | What to Look For | Best Platform |
|
||||
|-----------|-----------------|---------------|
|
||||
| Quotable moment | A bold claim, hot take, or memorable line (15-60 sec) | Twitter/X, LinkedIn, TikTok |
|
||||
| Story arc | A complete mini-story with setup, conflict, resolution (60-90 sec) | Instagram Reels, TikTok, YouTube Shorts |
|
||||
| Tactical tip | A specific how-to or framework explained clearly (30-60 sec) | LinkedIn, YouTube Shorts |
|
||||
| Controversial take | A contrarian opinion that sparks debate | Twitter/X, LinkedIn |
|
||||
| Data/stat callout | A surprising number or research finding | LinkedIn carousel, Twitter/X |
|
||||
| Behind-the-scenes | Authentic, unpolished moments | Instagram Stories, TikTok |
|
||||
|
||||
**Podcast repurposing workflow:**
|
||||
1. **Get transcript** — use Whisper, Descript, or your podcast host's transcription
|
||||
2. **Mark timestamps** — flag the 5-10 best moments while listening or scanning transcript
|
||||
3. **Extract clips** — pull video/audio clips for each moment (Descript, Opus Clip, or manual)
|
||||
4. **Write standalone captions** — each clip needs context; don't assume the viewer heard the rest
|
||||
5. **Add subtitles** — most social video is watched without sound
|
||||
6. **Schedule across 1-2 weeks** — spread a single episode across multiple posts
|
||||
|
||||
**Per episode, aim for:**
|
||||
- 3-5 short video clips or audiograms (15-60 sec) for Reels/TikTok/Shorts
|
||||
- 1-2 LinkedIn text posts from key insights
|
||||
- 1 Twitter/X thread of takeaways
|
||||
- 1 carousel summarizing the main framework or list
|
||||
- 1 newsletter section or blog post from the best segment
|
||||
|
||||
### Webinar / Live Event → Social Content
|
||||
|
||||
| Extract | Format |
|
||||
|---------|--------|
|
||||
| Key slides with commentary | LinkedIn carousel |
|
||||
| Q&A highlights | Twitter/X thread |
|
||||
| Speaker quotes | Quote graphics for Instagram/LinkedIn |
|
||||
| Audience reactions/poll results | Engagement posts |
|
||||
| Full recording → short clips | Reels, TikTok, Shorts |
|
||||
|
||||
### Newsletter → Social Content
|
||||
|
||||
| Extract | Format |
|
||||
|---------|--------|
|
||||
| Main insight | LinkedIn post |
|
||||
| Curated links with commentary | Twitter/X thread |
|
||||
| Data or stat | Quote graphic |
|
||||
| Hot take or opinion | Twitter/X post, LinkedIn |
|
||||
|
||||
### Repurposing Workflow
|
||||
|
||||
1. **Create pillar content** (blog, video, podcast)
|
||||
2. **Extract key insights** (3-5 per piece)
|
||||
3. **Adapt to each platform** (format and tone)
|
||||
4. **Schedule across the week** (spread distribution)
|
||||
5. **Update and reshare** (evergreen content can repeat)
|
||||
1. **Create pillar content** (blog, video, podcast, webinar, newsletter)
|
||||
2. **Extract content atoms** (5-10 per piece — quotes, stories, tips, data)
|
||||
3. **Adapt to each platform** (format, length, and tone)
|
||||
4. **Write standalone captions** (each post must work without context)
|
||||
5. **Schedule across the week** (spread distribution, don't dump all at once)
|
||||
6. **Update and reshare** (evergreen content can repeat every 3-6 months)
|
||||
|
||||
---
|
||||
|
||||
|
||||
+37
-4
@@ -61,7 +61,7 @@ Quick reference for AI agents to discover tool capabilities and integration meth
|
||||
| meta-ads | Ads | ✓ | - | [✓](clis/meta-ads.js) | ✓ | [meta-ads.md](integrations/meta-ads.md) |
|
||||
| linkedin-ads | Ads | ✓ | - | [✓](clis/linkedin-ads.js) | - | [linkedin-ads.md](integrations/linkedin-ads.md) |
|
||||
| tiktok-ads | Ads | ✓ | - | [✓](clis/tiktok-ads.js) | ✓ | [tiktok-ads.md](integrations/tiktok-ads.md) |
|
||||
| zapier | Automation | ✓ | ✓ | [✓](clis/zapier.js) | - | [zapier.md](integrations/zapier.md) |
|
||||
| zapier | Automation | ✓ | ✓ | [✓](clis/zapier.js) | ✓ | [zapier.md](integrations/zapier.md) |
|
||||
| hotjar | CRO | ✓ | - | [✓](clis/hotjar.js) | - | [hotjar.md](integrations/hotjar.md) |
|
||||
| optimizely | A/B Testing | ✓ | - | [✓](clis/optimizely.js) | ✓ | [optimizely.md](integrations/optimizely.md) |
|
||||
| calendly | Scheduling | ✓ | - | [✓](clis/calendly.js) | - | [calendly.md](integrations/calendly.md) |
|
||||
@@ -74,6 +74,9 @@ Quick reference for AI agents to discover tool capabilities and integration meth
|
||||
| pendo | Product Analytics | ✓ | - | [✓](clis/pendo.js) | - | [pendo.md](integrations/pendo.md) |
|
||||
| similarweb | Competitive Intelligence | ✓ | - | [✓](clis/similarweb.js) | - | [similarweb.md](integrations/similarweb.md) |
|
||||
| firehose | Competitive Intelligence | ✓ | - | - | - | [firehose.md](integrations/firehose.md) |
|
||||
| sparktoro | Audience Research | - | - | - | - | [sparktoro.md](integrations/sparktoro.md) |
|
||||
| rb2b | Visitor Identification | ✓ | - | - | - | [rb2b.md](integrations/rb2b.md) |
|
||||
| gong | Revenue Intelligence | ✓ | - | - | - | [gong.md](integrations/gong.md) |
|
||||
| airops | AI Content | ✓ | - | [✓](clis/airops.js) | - | [airops.md](integrations/airops.md) |
|
||||
| buffer | Social | ✓ | - | [✓](clis/buffer.js) | - | [buffer.md](integrations/buffer.md) |
|
||||
| wistia | Video | ✓ | - | [✓](clis/wistia.js) | - | [wistia.md](integrations/wistia.md) |
|
||||
@@ -199,9 +202,9 @@ Workflow automation and integration platforms.
|
||||
|
||||
| Tool | Best For | MCP Available |
|
||||
|------|----------|:-------------:|
|
||||
| **zapier** | No-code integrations | ✓ |
|
||||
| **zapier** | No-code integrations + SDK for 8,000+ apps | ✓ |
|
||||
|
||||
**Agent recommendation**: Zapier for connecting tools without code.
|
||||
**Agent recommendation**: Zapier SDK for agents that need to interact with any app directly. Zaps for always-on automations.
|
||||
|
||||
### CRO & A/B Testing
|
||||
|
||||
@@ -340,6 +343,36 @@ Traffic analytics, competitor benchmarking, and market research.
|
||||
|
||||
**Agent recommendation**: Similarweb for competitor traffic analysis and market benchmarking.
|
||||
|
||||
### Audience Research
|
||||
|
||||
Audience intelligence and behavioral research tools.
|
||||
|
||||
| Tool | Best For | Notes |
|
||||
|------|----------|-------|
|
||||
| **sparktoro** | Audience affinities, behavioral data | Clickstream + social data |
|
||||
|
||||
**Agent recommendation**: SparkToro for discovering where your ICP spends time — what they read, watch, listen to, follow, and search for. Essential for customer research, content strategy, and media buying decisions.
|
||||
|
||||
### Visitor Identification
|
||||
|
||||
Website visitor de-anonymization for B2B sales and marketing.
|
||||
|
||||
| Tool | Best For | Notes |
|
||||
|------|----------|-------|
|
||||
| **rb2b** | Person-level visitor ID, intent signals | LinkedIn profiles, emails, page-level data |
|
||||
|
||||
**Agent recommendation**: RB2B for identifying anonymous B2B website visitors and routing high-intent visitors to outreach tools. Pairs well with Clay for enrichment and Instantly/Lemlist for cold email.
|
||||
|
||||
### Revenue Intelligence
|
||||
|
||||
Sales conversation analytics, call recording, and deal intelligence.
|
||||
|
||||
| Tool | Best For | Notes |
|
||||
|------|----------|-------|
|
||||
| **gong** | Call recording, transcript analysis, deal insights | REST API, 10k API calls/day |
|
||||
|
||||
**Agent recommendation**: Gong for mining sales call transcripts for customer research, competitive intelligence, and coaching insights. Essential for revenue attribution and win/loss analysis.
|
||||
|
||||
### AI Content
|
||||
|
||||
AI-powered content generation and optimization platforms.
|
||||
@@ -423,7 +456,7 @@ These tools have Model Context Protocol servers available, enabling direct agent
|
||||
- **mailchimp** - Email campaign management
|
||||
- **google-ads** - Ad campaign management
|
||||
- **resend** - Transactional email sending
|
||||
- **zapier** - Workflow automation
|
||||
- **zapier** - Workflow automation + SDK for 8,000+ app integrations
|
||||
- **zoominfo** - B2B contacts and intent data
|
||||
- **clay** - Data enrichment and outbound automation
|
||||
- **supermetrics** - Cross-platform marketing data
|
||||
|
||||
@@ -122,7 +122,9 @@ async function main() {
|
||||
case 'hooks':
|
||||
switch (sub) {
|
||||
case 'send': {
|
||||
// Sends a POST to a Zapier webhook catch hook URL (e.g. https://hooks.zapier.com/hooks/catch/...)
|
||||
if (!args.url) { result = { error: '--url required' }; break }
|
||||
if (!args.url.startsWith('https://')) { result = { error: '--url must use https://' }; break }
|
||||
if (!args.data) { result = { error: '--data required (JSON string)' }; break }
|
||||
let data
|
||||
try {
|
||||
|
||||
@@ -0,0 +1,144 @@
|
||||
# Gong
|
||||
|
||||
Revenue intelligence platform that records, transcribes, and analyzes sales conversations (calls, video meetings, emails) to surface deal insights, coaching opportunities, and competitive intelligence.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST API, Basic Auth or OAuth2 |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | - | REST API only; community Python client via dltHub |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: Basic Auth (Access Key + Secret) or OAuth2 for published apps
|
||||
- **Get key**: Admin-only — Settings > API at https://app.gong.io
|
||||
- **Base URL**: Tenant-specific — retrieve from your Gong API settings (typically `https://{tenant}.api.gong.io/v2/`)
|
||||
- **Docs**: https://help.gong.io/docs/what-the-gong-api-provides
|
||||
|
||||
## API Endpoints
|
||||
|
||||
Most Gong API endpoints use **POST** with JSON request bodies for filtering. Check the [official API docs](https://gong.app.gong.io/settings/api/documentation) for current endpoint availability.
|
||||
|
||||
### Calls
|
||||
|
||||
```bash
|
||||
# List calls (with date/user filters)
|
||||
POST /v2/calls/extensive
|
||||
|
||||
# Get call transcripts (batch, by call IDs)
|
||||
POST /v2/calls/transcript
|
||||
```
|
||||
|
||||
### Users & Stats
|
||||
|
||||
```bash
|
||||
# List users
|
||||
GET /v2/users
|
||||
|
||||
# Get activity stats (talk ratio, questions asked, longest monologue)
|
||||
POST /v2/stats/activity/day-by-day
|
||||
```
|
||||
|
||||
### Engagement Flows
|
||||
|
||||
```bash
|
||||
# List flows
|
||||
GET /v2/flows
|
||||
|
||||
# Get flow analytics
|
||||
GET /v2/flows/{id}/analytics
|
||||
```
|
||||
|
||||
## Key Data Points
|
||||
|
||||
### Per Call
|
||||
- Full transcript with speaker labels and timestamps
|
||||
- Talk-to-listen ratio per participant
|
||||
- Topics discussed (auto-detected)
|
||||
- Questions asked (count and content)
|
||||
- Longest monologue duration
|
||||
- Next steps mentioned
|
||||
- Competitor mentions
|
||||
- Pricing discussions flagged
|
||||
|
||||
### Per Deal
|
||||
- All associated calls and emails
|
||||
- Deal stage progression
|
||||
- Risk signals (gone dark, competitor mentioned, champion left)
|
||||
- Engagement score
|
||||
|
||||
### Per Rep
|
||||
- Talk ratio trends
|
||||
- Question frequency
|
||||
- Topic coverage vs. playbook
|
||||
- Win rate correlation with behaviors
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Extract Competitive Intelligence from Calls
|
||||
|
||||
1. Query calls mentioning competitor names
|
||||
2. Extract: objections raised, features compared, pricing discussed
|
||||
3. Synthesize into competitive battlecard updates
|
||||
4. Track competitor mention frequency over time
|
||||
|
||||
### Mine Calls for Customer Research
|
||||
|
||||
1. Pull transcripts from recent won/lost deals
|
||||
2. Extract: pain points, trigger events, decision criteria, language used
|
||||
3. Feed into persona building and messaging work
|
||||
4. Identify recurring objections for sales enablement
|
||||
|
||||
### Revenue Attribution
|
||||
|
||||
1. Pull call data alongside CRM deal data
|
||||
2. Map which content/pages were discussed in winning deals
|
||||
3. Identify which talking points correlate with closed-won
|
||||
4. Build content-to-revenue attribution reports
|
||||
|
||||
### Rep Coaching Insights
|
||||
|
||||
1. Compare top performer call patterns vs. team average
|
||||
2. Identify: talk ratio, question frequency, topic coverage gaps
|
||||
3. Surface specific call moments for coaching review
|
||||
4. Track improvement over time
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 3 API calls per second
|
||||
- 10,000 API calls per day
|
||||
- Pagination required for large result sets
|
||||
|
||||
## When to Use
|
||||
|
||||
- Mining sales call transcripts for customer research and VOC data
|
||||
- Extracting competitive intelligence from prospect conversations
|
||||
- Building revenue attribution models (content → deal influence)
|
||||
- Analyzing win/loss patterns across deal transcripts
|
||||
- Coaching sales reps based on conversation analytics
|
||||
- Identifying common objections and buying signals
|
||||
|
||||
## Limitations
|
||||
|
||||
- API access requires admin credentials
|
||||
- Transcript quality depends on call audio quality
|
||||
- Rate limits (10k/day) may constrain large-scale analysis
|
||||
- Pricing is enterprise-level (not publicly listed, typically $100+/user/month)
|
||||
- Requires team adoption — records calls via integrations, but also supports uploading calls from non-integrated telephony systems
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- customer-research
|
||||
- sales-enablement
|
||||
- competitor-alternatives
|
||||
- revops
|
||||
- cold-email
|
||||
|
||||
## Sources
|
||||
|
||||
- [Gong API overview](https://help.gong.io/docs/what-the-gong-api-provides)
|
||||
- [Gong API documentation](https://gong.app.gong.io/settings/api/documentation)
|
||||
- [Call upload support](https://help.gong.io/docs/uploading-calls-from-a-non-integrated-telephony-system)
|
||||
@@ -0,0 +1,110 @@
|
||||
# RB2B
|
||||
|
||||
Website visitor identification platform that de-anonymizes B2B website traffic, revealing the individual people visiting your site with LinkedIn profiles, emails, and company data.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | Limited | API Partner Program (separate from standard app) |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | - | Not available |
|
||||
|
||||
Most teams use RB2B via its native integrations (Slack, CRM push, Zapier, webhooks) rather than direct API access. A separate [API Partner Program](https://www.rb2b.com/apis) exists for programmatic access.
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: Native integrations (no API key needed for standard use)
|
||||
- **API Partner Program**: Separate credentials via https://www.rb2b.com/apis
|
||||
- **Free tier**: Limited credits/month with Slack alerts
|
||||
|
||||
## Pricing Tiers
|
||||
|
||||
Pricing changes frequently — verify at https://www.rb2b.com/pricing.
|
||||
|
||||
| Plan | Approx. Price | Key Features |
|
||||
|------|--------------|-------------|
|
||||
| Free | $0 | Limited credits, Slack alerts, LinkedIn profiles |
|
||||
| Starter | ~$79/mo | Person-level ID, basic integrations |
|
||||
| Pro | ~$129-349/mo | CSV export, CRM push, validated emails |
|
||||
| Pro+ | ~$299+/mo | All integrations, higher credit volume |
|
||||
|
||||
## Key Integrations
|
||||
|
||||
RB2B pushes identified visitor data to 50+ tools:
|
||||
- **CRM**: Salesforce, HubSpot
|
||||
- **Outreach**: Instantly, HeyReach, Lemlist
|
||||
- **Enrichment**: Clay, Apollo, Clearbit
|
||||
- **Automation**: Zapier, Make
|
||||
- **Alerts**: Slack (real-time notifications)
|
||||
|
||||
## What RB2B Reveals Per Visitor
|
||||
|
||||
- Full name and LinkedIn profile URL
|
||||
- Job title and company
|
||||
- Validated business email (Pro+)
|
||||
- Pages visited and visit duration
|
||||
- Number of visits and return frequency
|
||||
- Company data (size, industry, location)
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Real-Time Visitor Alerts
|
||||
|
||||
Configure Slack alerts for high-intent visitors:
|
||||
- Visitors who hit pricing page
|
||||
- Visitors who return 3+ times
|
||||
- Visitors from target account list
|
||||
- Visitors matching ICP job titles
|
||||
|
||||
### Visitor-to-Outreach Pipeline
|
||||
|
||||
1. RB2B identifies visitor with LinkedIn + email
|
||||
2. Filter by ICP criteria (title, company size, pages visited)
|
||||
3. Route to outreach tool (Instantly, Lemlist) or CRM (HubSpot, Salesforce)
|
||||
4. Trigger personalized cold email referencing pages they visited
|
||||
|
||||
### Intent Scoring
|
||||
|
||||
Score visitors by behavior signals:
|
||||
- **High intent**: Pricing page, demo page, comparison pages, 3+ visits
|
||||
- **Medium intent**: Feature pages, case studies, 2 visits
|
||||
- **Low intent**: Blog only, single visit, bounced quickly
|
||||
|
||||
### Suppression Lists
|
||||
|
||||
Prevent outreach to:
|
||||
- Existing customers (match against CRM)
|
||||
- Active deals in pipeline
|
||||
- Competitors and agencies
|
||||
- Recently contacted prospects
|
||||
|
||||
## When to Use
|
||||
|
||||
- Identifying anonymous website visitors for sales outreach
|
||||
- Building ABM (account-based marketing) target lists from site traffic
|
||||
- Understanding which companies are researching your product
|
||||
- Triggering personalized outreach based on page-level intent signals
|
||||
- Feeding enrichment tools (Clay, Apollo) with warm visitor data
|
||||
|
||||
## Limitations
|
||||
|
||||
- Person-level identification works best for US B2B traffic
|
||||
- Not all visitors can be identified (typical match rates: 15-30%)
|
||||
- Requires sufficient website traffic to be cost-effective
|
||||
- Privacy considerations — ensure compliance with applicable regulations
|
||||
- Free tier limited to Slack alerts (no CRM push or email export)
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- cold-email
|
||||
- revops
|
||||
- customer-research
|
||||
- paid-ads
|
||||
|
||||
## Sources
|
||||
|
||||
- [RB2B pricing](https://www.rb2b.com/pricing)
|
||||
- [RB2B plans comparison](https://support.rb2b.com/en/articles/9173659-rb2b-plans-side-by-side-comparisons)
|
||||
- [RB2B API Partner Program](https://support.rb2b.com/en/articles/12579420-rb2b-apis-rb2b-s-api-partner-program)
|
||||
@@ -0,0 +1,127 @@
|
||||
# SparkToro
|
||||
|
||||
Audience research platform that reveals what your target audience reads, watches, listens to, follows, and searches for — using clickstream data, Google search data, and public social profiles.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | - | Not yet public (coming soon) |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | - | Not available |
|
||||
|
||||
SparkToro is primarily a web-based research tool. No public API, CLI, or SDK is currently available. Use the web interface at https://sparktoro.com for all queries.
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: Account login at https://sparktoro.com
|
||||
- **Free tier**: 5 reports/month with limited results
|
||||
- **Paid plans**: $50–$300/month with expanded results and exports
|
||||
|
||||
## Pricing Tiers
|
||||
|
||||
| Plan | Price | Reports/Month | Users | Result Depth |
|
||||
|------|-------|---------------|-------|-------------|
|
||||
| Free | $0 | 5 | 1 | Top 5–10 results |
|
||||
| Personal | $50/mo | 50 | 1 | Top 50 results |
|
||||
| Business | $150/mo | 500 | 10 | Top 150 results, contact data, AI advice |
|
||||
| Agency | $300/mo | Unlimited | 100 | Top 300 results, full CSV export |
|
||||
|
||||
## What SparkToro Reveals
|
||||
|
||||
### Audience Behaviors
|
||||
- **Websites** they visit and engage with
|
||||
- **Podcasts** they listen to
|
||||
- **YouTube channels** they watch
|
||||
- **Subreddits** they participate in
|
||||
- **Social accounts** they follow
|
||||
- **Search keywords** they use on Google
|
||||
- **AI prompt topics** they ask ChatGPT, Claude, Gemini
|
||||
|
||||
### Audience Demographics
|
||||
- Gender, age ranges
|
||||
- Job titles and roles
|
||||
- Industries and skills
|
||||
- Education levels
|
||||
- Geographic distribution
|
||||
- Interests and affinities
|
||||
|
||||
### Audience Characteristics
|
||||
- Bio descriptions and self-identifiers
|
||||
- Language patterns in posts and comments
|
||||
- Preferred social networks and platforms
|
||||
- E-commerce platforms they use
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
Since SparkToro has no API, these are the research workflows agents should guide users through.
|
||||
|
||||
### Audience Profile Research
|
||||
|
||||
Query SparkToro with phrases like:
|
||||
- "People who follow @competitor" — reveals shared audience behaviors
|
||||
- "People who visit competitor.com" — shows what else they consume
|
||||
- "People who frequently talk about [topic]" — finds audience affinities
|
||||
- "People whose bio contains [job title]" — profiles a role-based segment
|
||||
|
||||
### Finding Where Your ICP Spends Time
|
||||
|
||||
1. Search for your ICP by description, competitor followers, or website visitors
|
||||
2. Extract: top websites visited, podcasts listened to, YouTube channels watched, subreddits
|
||||
3. Use this to prioritize: guest podcast appearances, content partnerships, ad placements, community participation
|
||||
|
||||
### Discovering Content Topics
|
||||
|
||||
1. Search your audience segment
|
||||
2. Review the "Search Keywords" tab — what they Google
|
||||
3. Review the "AI Prompt Topics" tab — what they ask AI tools
|
||||
4. Use these to inform content strategy and SEO keyword targeting
|
||||
|
||||
### Building Data-Backed Personas
|
||||
|
||||
1. Run 3–5 queries for different segments of your audience
|
||||
2. Compare demographic breakdowns across segments
|
||||
3. Note which behaviors and affinities are shared vs. unique per segment
|
||||
4. Export data and build personas grounded in observed behavior, not assumptions
|
||||
|
||||
### Competitive Audience Analysis
|
||||
|
||||
1. Search "People who follow @competitor" or "People who visit competitor.com"
|
||||
2. Compare against your own audience profile
|
||||
3. Identify: channels they use that you don't, content they consume that you don't produce, influencers they follow that you haven't engaged
|
||||
|
||||
## Data Sources
|
||||
|
||||
SparkToro aggregates from three sources:
|
||||
- **Clickstream data** — anonymized browsing behavior
|
||||
- **Google search results** — search keyword patterns
|
||||
- **Public social profiles** — bios, follows, engagement
|
||||
|
||||
## When to Use
|
||||
|
||||
- Identifying where your ICP spends time online (podcasts, YouTube, subreddits, websites)
|
||||
- Finding influencers and social accounts your audience follows
|
||||
- Discovering content topics and search keywords your audience cares about
|
||||
- Building data-backed personas instead of assumption-based ones
|
||||
- Planning podcast guest appearances, sponsorships, or content partnerships
|
||||
- Understanding what your competitors' audience looks like
|
||||
- Validating audience assumptions with behavioral data
|
||||
- Discovering AI prompt topics your audience uses
|
||||
|
||||
## Limitations
|
||||
|
||||
- No public API — all research is done through the web interface
|
||||
- Free tier limited to 5 reports/month with shallow results
|
||||
- Data skews toward English-language, US-centric audiences
|
||||
- Clickstream data may not capture all niche audiences
|
||||
- Cannot track individual users — all data is aggregated and anonymized
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- customer-research
|
||||
- content-strategy
|
||||
- competitor-alternatives
|
||||
- paid-ads
|
||||
- social-content
|
||||
- cold-email
|
||||
+129
-35
@@ -1,6 +1,6 @@
|
||||
# Zapier
|
||||
|
||||
Workflow automation platform connecting apps without code.
|
||||
Workflow automation platform connecting 8,000+ apps. The Zapier SDK gives AI agents direct access to any app's actions without building OAuth flows or reverse-engineering APIs.
|
||||
|
||||
## Capabilities
|
||||
|
||||
@@ -8,16 +8,110 @@ Workflow automation platform connecting apps without code.
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST API for Zaps, tasks, and webhooks |
|
||||
| MCP | ✓ | Available via Zapier MCP server |
|
||||
| CLI | - | Not available |
|
||||
| SDK | - | API and webhooks only |
|
||||
| CLI | ✓ | `@zapier/zapier-sdk-cli` for app discovery and type generation |
|
||||
| SDK | ✓ | `@zapier/zapier-sdk` — TypeScript SDK for 8,000+ app integrations |
|
||||
|
||||
## Authentication
|
||||
|
||||
### Legacy API (Zaps management)
|
||||
|
||||
- **Type**: API Key
|
||||
- **Header**: `X-API-Key: {api_key}`
|
||||
- **Get key**: Settings > API in Zapier account
|
||||
|
||||
## Common Agent Operations
|
||||
### SDK Authentication
|
||||
|
||||
**Browser-based login (development):**
|
||||
```bash
|
||||
npx zapier-sdk login
|
||||
```
|
||||
|
||||
**Server-side (production):**
|
||||
- Client Credentials — store as environment variables
|
||||
- Direct token — set `ZAPIER_CREDENTIALS` env var
|
||||
|
||||
Browser-based login only works locally. Use Client Credentials for any server-side deployment.
|
||||
|
||||
## SDK Quick Start
|
||||
|
||||
### Install
|
||||
|
||||
```bash
|
||||
npm install @zapier/zapier-sdk
|
||||
npm install -D @zapier/zapier-sdk-cli @types/node typescript
|
||||
npm pkg set type=module
|
||||
```
|
||||
|
||||
### Initialize
|
||||
|
||||
```typescript
|
||||
import { createZapierSdk } from "@zapier/zapier-sdk";
|
||||
const zapier = createZapierSdk();
|
||||
```
|
||||
|
||||
### CLI Commands
|
||||
|
||||
| Command | Purpose |
|
||||
|---------|---------|
|
||||
| `npx zapier-sdk login` | Authenticate (dev only) |
|
||||
| `npx zapier-sdk list-apps --search "query"` | Search available apps |
|
||||
| `npx zapier-sdk list-actions APP_KEY` | List actions for an app |
|
||||
| `npx zapier-sdk add [app-key]` | Generate TypeScript types |
|
||||
|
||||
### SDK Methods
|
||||
|
||||
| Method | Purpose |
|
||||
|--------|---------|
|
||||
| `zapier.listConnections()` | List authenticated app connections |
|
||||
| `zapier.findFirstConnection()` | Find a specific connection |
|
||||
| `zapier.runAction()` | Execute an action on a connected app |
|
||||
| `zapier.apps.slack()` | App proxy pattern for clean syntax |
|
||||
| `zapier.fetch()` | Custom authenticated API calls |
|
||||
|
||||
### Example: Send a Slack Message
|
||||
|
||||
```typescript
|
||||
import { createZapierSdk } from "@zapier/zapier-sdk";
|
||||
|
||||
const zapier = createZapierSdk();
|
||||
const slack = await zapier.apps.slack();
|
||||
|
||||
await slack.sendChannelMessage({
|
||||
channel: "#marketing",
|
||||
message: "Campaign launched!"
|
||||
});
|
||||
```
|
||||
|
||||
### Example: Create a HubSpot Contact
|
||||
|
||||
```typescript
|
||||
const hubspot = await zapier.apps.hubspot();
|
||||
|
||||
await hubspot.createContact({
|
||||
email: "lead@example.com",
|
||||
firstName: "Jane",
|
||||
lastName: "Doe"
|
||||
});
|
||||
```
|
||||
|
||||
### Pagination
|
||||
|
||||
Use `.items()` for large datasets:
|
||||
|
||||
```typescript
|
||||
const contacts = await hubspot.listContacts({ maxItems: 100 });
|
||||
for await (const contact of contacts.items()) {
|
||||
console.log(contact.email);
|
||||
}
|
||||
```
|
||||
|
||||
### Governance Note
|
||||
|
||||
Direct API calls via `zapier.fetch()` are not subject to org app/action restriction policies. Use pre-built actions where possible if your org has governance requirements.
|
||||
|
||||
---
|
||||
|
||||
## Zaps API (Legacy)
|
||||
|
||||
### List Zaps
|
||||
|
||||
@@ -82,30 +176,29 @@ POST https://hooks.zapier.com/hooks/catch/{account_id}/{hook_id}/
|
||||
|
||||
## Common Marketing Automations
|
||||
|
||||
### Lead capture to CRM
|
||||
```
|
||||
Typeform → Zapier → HubSpot
|
||||
### With SDK (recommended for agents)
|
||||
|
||||
```typescript
|
||||
// Lead capture to CRM
|
||||
const hubspot = await zapier.apps.hubspot();
|
||||
await hubspot.createContact({ email, firstName, lastName });
|
||||
|
||||
// New customer notification
|
||||
const slack = await zapier.apps.slack();
|
||||
await slack.sendChannelMessage({ channel: "#revenue", message: `New customer: ${email}` });
|
||||
|
||||
// Add to email sequence
|
||||
const customerio = await zapier.apps.customerio();
|
||||
await customerio.createOrUpdatePerson({ email, plan: "pro" });
|
||||
```
|
||||
|
||||
### New customer notifications
|
||||
```
|
||||
Stripe (new customer) → Zapier → Slack
|
||||
```
|
||||
### With Zaps (no-code)
|
||||
|
||||
### Email sequence triggers
|
||||
```
|
||||
Form submission → Zapier → Customer.io
|
||||
```
|
||||
|
||||
### Social proof automation
|
||||
```
|
||||
New review → Zapier → Twitter/Slack
|
||||
```
|
||||
|
||||
### Referral tracking
|
||||
```
|
||||
New referral → Zapier → Spreadsheet + Slack
|
||||
```
|
||||
- Typeform → Zapier → HubSpot (lead capture)
|
||||
- Stripe → Zapier → Slack (new customer alerts)
|
||||
- Form submission → Zapier → Customer.io (email sequences)
|
||||
- New review → Zapier → Slack (social proof)
|
||||
- New referral → Zapier → Spreadsheet + Slack (referral tracking)
|
||||
|
||||
## Webhook Payload Structure
|
||||
|
||||
@@ -123,24 +216,24 @@ When sending to Zapier, structure data as flat JSON:
|
||||
|
||||
## Key Concepts
|
||||
|
||||
- **Zap** - Automated workflow
|
||||
- **Zap** - Automated workflow (no-code)
|
||||
- **SDK** - Programmatic access to 8,000+ app integrations
|
||||
- **Trigger** - Event that starts a Zap
|
||||
- **Action** - Task performed by Zap
|
||||
- **Action** - Task performed by Zap or SDK
|
||||
- **Task** - Single action execution
|
||||
- **Filter** - Conditional logic
|
||||
- **Path** - Branching logic
|
||||
- **Connection** - Authenticated link to an app (shared between Zaps and SDK)
|
||||
|
||||
## When to Use
|
||||
|
||||
- Connecting marketing tools without code
|
||||
- Automating lead routing
|
||||
- Syncing data between platforms
|
||||
- Triggering notifications
|
||||
- Building marketing workflows
|
||||
- **SDK**: When an AI agent needs to interact with any app directly — send messages, create records, sync data
|
||||
- **Zaps**: When you need always-on automation without code
|
||||
- **Webhooks**: When triggering workflows from your own app
|
||||
- **API**: When managing Zaps programmatically
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 100 requests per minute
|
||||
- API: 100 requests per minute
|
||||
- SDK: Rate limits per connected app
|
||||
- Task limits by plan tier
|
||||
|
||||
## Relevant Skills
|
||||
@@ -148,3 +241,4 @@ When sending to Zapier, structure data as flat JSON:
|
||||
- email-sequence
|
||||
- analytics-tracking
|
||||
- referral-program
|
||||
- revops
|
||||
|
||||
@@ -1,270 +0,0 @@
|
||||
# Truelist.io SEO Tracker
|
||||
|
||||
Last updated: 2026-03-18
|
||||
Data sources: Ahrefs (date: 2026-03-01) + Google Search Console (Jan–Mar 2026)
|
||||
|
||||
---
|
||||
|
||||
## Site Health Snapshot
|
||||
|
||||
| Metric | Value |
|
||||
|---|---|
|
||||
| Domain Rating | 45 |
|
||||
| Ahrefs Rank | 1,006,134 |
|
||||
| Live referring domains | 385 |
|
||||
| GSC total clicks (Jan–Mar) | 2,566 |
|
||||
| GSC total impressions (Jan–Mar) | 932,430 |
|
||||
| Overall CTR | 0.28% ⚠️ |
|
||||
| Pages with impressions | 638 |
|
||||
| Unique queries | 18,843 |
|
||||
|
||||
---
|
||||
|
||||
## New Pages to Build
|
||||
|
||||
### Marketing / Landing Pages
|
||||
|
||||
These are product-focused, conversion-oriented pages. Build these first.
|
||||
|
||||
#### Competitor Alternative Pages
|
||||
|
||||
| Target Keyword | Vol (Ahrefs) | KD | GSC Imps | Priority | Status |
|
||||
|---|---|---|---|---|---|
|
||||
| hunter.io alternative | 100 | 0 | — | 🔥 High | Not built |
|
||||
| kickbox alternative | — | — | — | Medium | Not built |
|
||||
| zerobounce alternatives | — | — | 300 | Medium | `/zerobounce-alternative` exists but ranking pos 45 |
|
||||
| emaillistverify alternative | — | — | — | Low | `/emaillistverify-alternative` exists |
|
||||
|
||||
> **Note**: `/neverbounce-alternative`, `/zerobounce-alternative`, `/mailercheck-alternative`, `/mails-so-alternative`, `/millionverifier-alternative`, `/validity-alternative`, `/verifalia-alternative` already exist. `/hunter-io-list-verification` exists but is not an "alternative" page.
|
||||
|
||||
#### Use Case / Feature Landing Pages
|
||||
|
||||
| Target Keyword | Vol (Ahrefs) | KD | GSC Imps | Priority | Status |
|
||||
|---|---|---|---|---|---|
|
||||
| bulk email verification | 500 | 57 | 1,251 (pos 73) | 🔥 High | `/use-cases/bulk-email-verification` exists but not ranking |
|
||||
| email list cleaning service | 250 | 22 | 1,255 (pos 17) | 🔥 High | Split across 4 pages — needs dedicated landing page |
|
||||
| email validation service | 300 | 45 | 1,064 (pos 49) | High | No strong page |
|
||||
| email verification service | — | — | 898 (pos 66) | High | No strong page |
|
||||
| email list validation | — | — | 803 (pos 37) | High | No strong page |
|
||||
| email validation api | 500 | 19 | 851 (pos 66) | 🔥 High | `/docs/api` exists but weak for this query |
|
||||
| email verification api | — | — | 914 (pos 69) | High | Same — optimize `/docs/api` or create `/features/api` page |
|
||||
| email hygiene | — | — | 481 (pos 52) | Medium | No dedicated page |
|
||||
| real-time email validation | — | — | — | Medium | `/use-cases/real-time-form-validation` exists |
|
||||
| disposable email checker | 150 | 4 | 236 (pos 10) | Medium | `/blog/disposable-email-checker` exists — should be a tool page |
|
||||
|
||||
#### Email Warm-Up Cluster
|
||||
> High-value cluster, low-to-moderate KD, not currently targeted
|
||||
|
||||
| Target Keyword | Vol | KD | Priority | Status |
|
||||
|---|---|---|---|---|
|
||||
| email warm up | 4,000 | 30 | 🔥 High | No page |
|
||||
| email warm up tools | 250 | 12 | High | No page |
|
||||
| email warm up services | 200 | 36 | Medium | No page |
|
||||
|
||||
> Could be a landing page (`/email-warmup` or `/tools/email-warmup`) + a blog post cluster.
|
||||
|
||||
#### Catch-All Email Cluster
|
||||
> Near-zero KD, directly relevant to their product
|
||||
|
||||
| Target Keyword | Vol | KD | Priority | Status |
|
||||
|---|---|---|---|---|
|
||||
| catch all email | 200 | 1 | 🔥 High | No page |
|
||||
| catch all email address | 100 | 5 | High | No page |
|
||||
|
||||
> Recommend: `/tools/catch-all-email-checker` or `/blog/catch-all-email` (see blog section)
|
||||
|
||||
#### Email Append Cluster
|
||||
> KD 1–4 across all terms, niche but easy wins
|
||||
|
||||
| Target Keyword | Vol | KD | Priority | Status |
|
||||
|---|---|---|---|---|
|
||||
| email append service | 150 | 1 | High | No page |
|
||||
| best email append service | 150 | 2 | High | No page |
|
||||
| email append | 200 | 3 | Medium | No page |
|
||||
| reverse email append | 200 | 0 | Medium | No page |
|
||||
|
||||
---
|
||||
|
||||
### Blog Posts
|
||||
|
||||
These are educational/informational posts. Good candidates for a content queue.
|
||||
|
||||
#### Email Deliverability Cluster
|
||||
> Confirmed demand from GSC, low KD, high relevance to product
|
||||
|
||||
| Target Keyword | Vol | KD | GSC Imps | Priority | Status |
|
||||
|---|---|---|---|---|---|
|
||||
| improve email deliverability | 700 | 17 | — | 🔥 High | No post |
|
||||
| email sender reputation | 450 | 16 | 378 (pos 69) | 🔥 High | No dedicated post |
|
||||
| email domain reputation | 200 | 15 | — | High | No dedicated post |
|
||||
| email deliverability | 2,300 | 45 | 280 (pos 73) | High | No post |
|
||||
| check email deliverability | 700 | 70 | 280 (pos 73) | Medium | `/tools/email-deliverability-checker` exists |
|
||||
| email deliverability news | 600 | 5 | — | Low | News/roundup format |
|
||||
|
||||
#### Email Bounce Cluster
|
||||
> Already have some content but gaps remain
|
||||
|
||||
| Target Keyword | Vol | KD | GSC Imps | Priority | Status |
|
||||
|---|---|---|---|---|---|
|
||||
| email bounce checker | 500 | 73 | 731 (pos 41) | 🔥 High | `/blog/email-bounce-checker` exists at pos 18 — needs refresh |
|
||||
| what is email bounce rate | 100 | 14 | — | High | No post |
|
||||
| average email bounce rate | 60 | 18 | — | Medium | No post |
|
||||
| reduce email bounce rate | 60 | — | — | Medium | No post |
|
||||
| hard bounce vs soft bounce | — | — | — | Medium | `/blog/what-is-a-hard-bounce-email` exists |
|
||||
|
||||
#### Email Warm-Up Blog Posts
|
||||
> Pair with landing page above
|
||||
|
||||
| Target Keyword | Vol | KD | Priority | Status |
|
||||
|---|---|---|---|---|
|
||||
| how to warm up email domain | 250 | 4 | 🔥 High | No post |
|
||||
| what is email warm up | — | — | High | No post |
|
||||
|
||||
#### Catch-All Email Blog Posts
|
||||
|
||||
| Target Keyword | Vol | KD | Priority | Status |
|
||||
|---|---|---|---|---|
|
||||
| what is a catch all email | 150 | 2 | 🔥 High | No post |
|
||||
| what does catch all email mean | 100 | — | High | No post |
|
||||
|
||||
#### Email Append Blog Posts
|
||||
|
||||
| Target Keyword | Vol | KD | Priority | Status |
|
||||
|---|---|---|---|---|
|
||||
| what is email append | — | 3 | High | No post |
|
||||
| email data append best practices | — | — | Medium | No post |
|
||||
|
||||
#### SPF / DKIM / DMARC Cluster
|
||||
> 7,295 GSC impressions across 32 queries, zero clicks — clear content gap
|
||||
|
||||
| Target Keyword | Vol | KD | GSC Imps | Priority | Status |
|
||||
|---|---|---|---|---|---|
|
||||
| dmarc policy | — | — | 609 (pos 75) | 🔥 High | No post |
|
||||
| dmarc generator | — | — | 376 (pos 70) | High | No post |
|
||||
| spf record generator | — | — | 343 (pos 47) | High | No post |
|
||||
| dkim checker | — | — | 344 (pos 67) | High | No post |
|
||||
| spf checker | — | — | 249 (pos 71) | Medium | `/tools/spf-record-checker` exists at pos 68 |
|
||||
| what is dmarc | — | — | — | Medium | No post |
|
||||
|
||||
#### Email Validation / Verification Blog Posts
|
||||
|
||||
| Target Keyword | Vol | KD | GSC Imps | Priority | Status |
|
||||
|---|---|---|---|---|---|
|
||||
| email list validation | — | — | 803 (pos 37) | High | No strong post |
|
||||
| bulk email verification | 500 | 57 | 1,251 (pos 73) | High | `/blog/bulk-email-verifier-free` exists at pos 13 — expand |
|
||||
| free email validation | 400 | 70 | — | Medium | `/blog/free-email-validation` exists at pos 27 |
|
||||
| email list verification | — | — | 652 (pos 43) | Medium | No strong post |
|
||||
| email hygiene best practices | — | — | — | Medium | No post |
|
||||
| email exists check | — | — | 1,210 (pos 49) | Medium | 2 posts cannibalizing — consolidate |
|
||||
|
||||
#### Data Quality Cluster
|
||||
> Unexpected impression volume — off-brand but present
|
||||
|
||||
| Target Keyword | GSC Imps | Position | Priority | Notes |
|
||||
|---|---|---|---|---|
|
||||
| data management best practices | 687 | 63 | Low | Off-brand, deprioritize |
|
||||
| data quality management tools | 542 | 61 | Low | Off-brand, deprioritize |
|
||||
| data quality solutions | 509 | 77 | Low | Off-brand, deprioritize |
|
||||
|
||||
> **Recommendation**: Don't invest in data quality content — it's not product-adjacent enough to convert.
|
||||
|
||||
---
|
||||
|
||||
## Content Refreshes
|
||||
|
||||
> Separate section — tackle after new pages are built.
|
||||
|
||||
### Priority 1: Cannibalization Fixes
|
||||
|
||||
| Issue | Pages | Combined Imps | Fix |
|
||||
|---|---|---|---|
|
||||
| Email format (duplicate posts) | `/blog/format-of-email-address` (pos 11) + `/blog/format-of-an-email-address` (pos 16) | 122,049 | Merge into one canonical post, 301 the other |
|
||||
| Email list cleaning (4 pages splitting queries) | `/blog/email-list-cleaning-services`, `/blog/email-list-cleaning-tools`, `/blog/best-email-list-cleaning-service`, `/use-cases/email-list-cleaning` | ~12,000 | Pick one winner, redirect the rest |
|
||||
| Email exists (2 posts) | `/blog/email-address-exists-check` + `/blog/check-if-email-exists` | ~1,200 | Merge |
|
||||
|
||||
### Priority 2: Title/Meta Rewrites (ranking but not clicking)
|
||||
|
||||
| Page | Imps | CTR | Position | Fix |
|
||||
|---|---|---|---|---|
|
||||
| `/blog/best-marketing-automation-software` | 47,591 | 0.00% | 5.6 | Zero clicks at pos 5 — wrong audience entirely. Redirect or rewrite for email validation angle |
|
||||
| `/blog/best-email-verification-tool` | 26,152 | 0.04% | 6.2 | Rewrite title/meta — this should be getting 3–5% CTR |
|
||||
| `/blog/best-crm-with-email-marketing` | 38,399 | 0.03% | 17.0 | Off-brand — redirect to relevant page |
|
||||
| `/blog/email-subject-line-best-practices` | 37,397 | 0.07% | 10.1 | Title refresh — 37K imps, 25 clicks |
|
||||
| `/blog/mx-record-lookup` | 16,561 | 0.03% | 13.1 | Content + title refresh |
|
||||
| `/blog/best-email-validation-tool` | 11,175 | 0.05% | 12.6 | Title/meta rewrite |
|
||||
|
||||
### Priority 3: Full Content Overhauls
|
||||
|
||||
| Page | Imps | Position | Issue |
|
||||
|---|---|---|---|
|
||||
| `/tools/free-email-checker` | 11,275 | 78 | Ranking for "email checker" (30K vol) at pos 80 — needs full rewrite |
|
||||
| `/tools/spf-record-checker` | — | 68 | Big keyword, deep ranking — needs content overhaul |
|
||||
| `/blog/check-if-email-address-is-valid` | 15,918 | 32.6 | Stuck on page 3, 20 keywords, 1 ref domain |
|
||||
| `/tools/free-email-verifier` | 14,139 | 42.6 | High impressions, deep position |
|
||||
|
||||
---
|
||||
|
||||
## Backlink Building Targets
|
||||
|
||||
> In priority order — pages near page 1 with high impressions and zero/few backlinks.
|
||||
|
||||
| Page | Imps | Position | Ref Domains | Why |
|
||||
|---|---|---|---|---|
|
||||
| `/blog/format-of-email-address` | 60,084 | 11.3 | 0 | One nudge hits page 1 on massive impression volume |
|
||||
| `/blog/email-subject-line-best-practices` | 37,397 | 10.1 | 0 | Borderline page 1, 37K imps |
|
||||
| `/blog/free-email-validation` | 11,368 | 27.4 | 0 | Core product keyword, 1,500 vol |
|
||||
| `/blog/mx-record-lookup` | 16,561 | 13.1 | 0 | High imps, no links |
|
||||
| `/blog/email-bounce-checker` | 8,093 | 18.1 | 0 | High imps, no links |
|
||||
| `/tools/domain-reputation-checker` | 9,874 | 18.9 | 0 | Tool page, linkable |
|
||||
| `/neverbounce-alternative` | 3,536 | 26.9 | 0 | 1–2 links could push to #1 |
|
||||
| `/blog/bulk-email-verifier-free` | 5,773 | 13.3 | 0 | Near page 1 |
|
||||
|
||||
---
|
||||
|
||||
## Progress Tracking
|
||||
|
||||
### Marketing Landing Pages
|
||||
- [ ] `/hunter-io-alternative` — hunter.io alternative (KD 0)
|
||||
- [ ] Dedicated email warm-up landing page
|
||||
- [ ] Dedicated catch-all email page/tool
|
||||
- [ ] Dedicated email append service page
|
||||
- [ ] Strengthen `/use-cases/bulk-email-verification`
|
||||
- [ ] Strengthen `/features/api` for "email validation api" queries
|
||||
- [ ] Email list cleaning consolidated landing page
|
||||
|
||||
### Blog Posts Queue
|
||||
- [ ] How to warm up an email domain (KD 4)
|
||||
- [ ] What is a catch-all email (KD 2)
|
||||
- [ ] What is email append (KD 3)
|
||||
- [ ] Improve email deliverability guide (KD 17)
|
||||
- [ ] Email sender reputation guide (KD 16)
|
||||
- [ ] DMARC policy guide
|
||||
- [ ] SPF record generator guide
|
||||
- [ ] DKIM checker guide
|
||||
- [ ] What is email bounce rate (KD 14)
|
||||
- [ ] Reduce email bounce rate guide
|
||||
- [ ] Email list validation guide
|
||||
- [ ] Email hygiene best practices
|
||||
|
||||
### Cannibalization Fixes
|
||||
- [ ] Merge email format posts (122K impressions at stake)
|
||||
- [ ] Consolidate email list cleaning pages
|
||||
- [ ] Merge email exists posts
|
||||
|
||||
### Title/Meta Rewrites
|
||||
- [ ] `/blog/best-email-verification-tool` (26K imps, 0.04% CTR)
|
||||
- [ ] `/blog/email-subject-line-best-practices` (37K imps, 0.07% CTR)
|
||||
- [ ] `/blog/mx-record-lookup` (16K imps, 0.03% CTR)
|
||||
- [ ] `/blog/best-marketing-automation-software` (48K imps, 0.00% CTR) — redirect decision needed
|
||||
- [ ] `/blog/best-crm-with-email-marketing` (38K imps, 0.03% CTR) — redirect decision needed
|
||||
|
||||
### Content Overhauls
|
||||
- [ ] `/tools/free-email-checker` — full rewrite
|
||||
- [ ] `/tools/spf-record-checker` — full overhaul
|
||||
- [ ] `/blog/check-if-email-address-is-valid` — refresh + links
|
||||
|
||||
### Backlink Campaigns
|
||||
- [ ] `/blog/format-of-email-address` — 3–5 links
|
||||
- [ ] `/blog/email-subject-line-best-practices` — 2–3 links
|
||||
- [ ] `/blog/free-email-validation` — 3–5 links
|
||||
- [ ] `/neverbounce-alternative` — 1–2 links
|
||||
Reference in New Issue
Block a user