Compare commits
46 Commits
v1.0.0
...
feature/sk
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1999e8f8b3 | ||
|
|
59596ef704 | ||
|
|
d1580aa3b4 | ||
|
|
71f7e48a6b | ||
|
|
0e9d69889f | ||
|
|
edcc34aa6d | ||
|
|
1477781b17 | ||
|
|
72f7f5dfd3 | ||
|
|
e73773f003 | ||
|
|
33c0130ba3 | ||
|
|
962dee3250 | ||
|
|
0906dd07ff | ||
|
|
492097485f | ||
|
|
e9555417c4 | ||
|
|
4c389d0939 | ||
|
|
07744d9d37 | ||
|
|
f98eded89c | ||
|
|
8b59184a5e | ||
|
|
c541f68aae | ||
|
|
5d760773a9 | ||
|
|
91d2e6d5f9 | ||
|
|
f0ec19bb14 | ||
|
|
9766734ca6 | ||
|
|
98e74b79d7 | ||
|
|
c29ee7e6db | ||
|
|
cbbf6852bb | ||
|
|
becdd54cf9 | ||
|
|
ce02e31251 | ||
|
|
72f692862e | ||
|
|
159fc80908 | ||
|
|
5dc1e7b97b | ||
|
|
94f0c12348 | ||
|
|
241462dda3 | ||
|
|
a83ca6953b | ||
|
|
f58dba09c8 | ||
|
|
e63e4f7e4b | ||
|
|
42ff0d6e54 | ||
|
|
f75a379afd | ||
|
|
48a398ee3a | ||
|
|
6406f9e89b | ||
|
|
8a1dcc657e | ||
|
|
21f0ce7f6e | ||
|
|
042be94db1 | ||
|
|
96897a5964 | ||
|
|
96fa94e8b7 | ||
|
|
559b158650 |
@@ -12,13 +12,14 @@
|
||||
"plugins": [
|
||||
{
|
||||
"name": "marketing-skills",
|
||||
"description": "23 marketing skills for technical marketers and founders: CRO, copywriting, SEO, paid ads, pricing strategy, referral programs, and more",
|
||||
"description": "25 marketing skills for technical marketers and founders: CRO, copywriting, SEO, paid ads, pricing strategy, referral programs, and more",
|
||||
"source": "./",
|
||||
"strict": false,
|
||||
"skills": [
|
||||
"./skills/ab-test-setup",
|
||||
"./skills/analytics-tracking",
|
||||
"./skills/competitor-alternatives",
|
||||
"./skills/content-strategy",
|
||||
"./skills/copy-editing",
|
||||
"./skills/copywriting",
|
||||
"./skills/email-sequence",
|
||||
@@ -33,6 +34,7 @@
|
||||
"./skills/paywall-upgrade-cro",
|
||||
"./skills/popup-cro",
|
||||
"./skills/pricing-strategy",
|
||||
"./skills/product-marketing-context",
|
||||
"./skills/programmatic-seo",
|
||||
"./skills/referral-program",
|
||||
"./skills/schema-markup",
|
||||
|
||||
8
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
8
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Agent Skills Specification
|
||||
url: https://agentskills.io/specification.md
|
||||
about: Learn the skill format before creating or requesting a skill
|
||||
- name: Contributing Guide
|
||||
url: https://github.com/coreyhaines31/marketingskills/blob/main/CONTRIBUTING.md
|
||||
about: How to contribute a new skill to this repository
|
||||
74
.github/ISSUE_TEMPLATE/skill-request.yml
vendored
Normal file
74
.github/ISSUE_TEMPLATE/skill-request.yml
vendored
Normal file
@@ -0,0 +1,74 @@
|
||||
name: Skill Request
|
||||
description: Request a new marketing skill
|
||||
title: "Skill Request: [skill-name]"
|
||||
labels: ["enhancement"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for suggesting a new skill! Please fill out the details below.
|
||||
|
||||
- type: input
|
||||
id: skill-name
|
||||
attributes:
|
||||
label: Suggested skill name
|
||||
description: Lowercase, hyphens only (e.g., "landing-page-audit")
|
||||
placeholder: "my-skill-name"
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: What should this skill do?
|
||||
description: Describe the skill's purpose and capabilities
|
||||
placeholder: "This skill should help with..."
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: triggers
|
||||
attributes:
|
||||
label: When should it be used?
|
||||
description: What trigger phrases or scenarios should activate this skill?
|
||||
placeholder: |
|
||||
- When the user says "..."
|
||||
- When working on...
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: examples
|
||||
attributes:
|
||||
label: Example use cases
|
||||
description: Provide 1-3 specific examples of how you'd use this skill
|
||||
placeholder: |
|
||||
1. I want to...
|
||||
2. Help me...
|
||||
validations:
|
||||
required: false
|
||||
|
||||
- type: dropdown
|
||||
id: category
|
||||
attributes:
|
||||
label: Category
|
||||
description: Which category does this skill fit into?
|
||||
options:
|
||||
- CRO (Conversion Rate Optimization)
|
||||
- Copywriting
|
||||
- SEO
|
||||
- Paid Ads
|
||||
- Growth / Strategy
|
||||
- Analytics
|
||||
- Other
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: related-skills
|
||||
attributes:
|
||||
label: Related existing skills
|
||||
description: Are there existing skills this relates to or differs from?
|
||||
placeholder: "Similar to page-cro but focused on..."
|
||||
validations:
|
||||
required: false
|
||||
15
.github/PULL_REQUEST_TEMPLATE/documentation.md
vendored
Normal file
15
.github/PULL_REQUEST_TEMPLATE/documentation.md
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
## Documentation
|
||||
|
||||
## Summary
|
||||
|
||||
<!-- What documentation changes are you making? -->
|
||||
|
||||
## Files changed
|
||||
|
||||
<!-- List the files you're updating -->
|
||||
|
||||
## Checklist
|
||||
|
||||
- [ ] Links are valid
|
||||
- [ ] Formatting is consistent with existing docs
|
||||
- [ ] No sensitive data or credentials
|
||||
16
.github/PULL_REQUEST_TEMPLATE/new-skill.md
vendored
Normal file
16
.github/PULL_REQUEST_TEMPLATE/new-skill.md
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
## New Skill
|
||||
|
||||
**Skill name:** `skills/SKILL-NAME`
|
||||
|
||||
## Summary
|
||||
|
||||
<!-- What does this skill do and when should it be used? -->
|
||||
|
||||
## Checklist
|
||||
|
||||
- [ ] `name` matches directory name exactly
|
||||
- [ ] `name` follows naming rules (lowercase, hyphens, no `--`)
|
||||
- [ ] `description` is 1-1024 chars with trigger phrases
|
||||
- [ ] `SKILL.md` is under 500 lines
|
||||
- [ ] No sensitive data or credentials
|
||||
- [ ] Tested locally with AI agent
|
||||
21
.github/PULL_REQUEST_TEMPLATE/skill-update.md
vendored
Normal file
21
.github/PULL_REQUEST_TEMPLATE/skill-update.md
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
## Skill Update
|
||||
|
||||
**Skill:** `skills/SKILL-NAME`
|
||||
|
||||
## Summary
|
||||
|
||||
<!-- What changes are you making and why? -->
|
||||
|
||||
## Type of update
|
||||
|
||||
- [ ] Bug fix
|
||||
- [ ] Improved instructions
|
||||
- [ ] Added references/scripts
|
||||
- [ ] Other
|
||||
|
||||
## Checklist
|
||||
|
||||
- [ ] Changes are focused and minimal
|
||||
- [ ] `SKILL.md` is still under 500 lines
|
||||
- [ ] No sensitive data or credentials
|
||||
- [ ] Tested locally with AI agent
|
||||
184
.github/scripts/sync-skills.js
vendored
Normal file
184
.github/scripts/sync-skills.js
vendored
Normal file
@@ -0,0 +1,184 @@
|
||||
#!/usr/bin/env node
|
||||
/**
|
||||
* Sync marketplace.json and README.md with skills directory.
|
||||
*
|
||||
* Scans the skills/ directory for valid skills (directories containing SKILL.md)
|
||||
* and updates marketplace.json and the README skills table to match.
|
||||
*/
|
||||
|
||||
const fs = require("fs");
|
||||
const path = require("path");
|
||||
|
||||
const SKILLS_DIR = "skills";
|
||||
const MARKETPLACE_FILE = ".claude-plugin/marketplace.json";
|
||||
const README_FILE = "README.md";
|
||||
|
||||
/**
|
||||
* Parse YAML frontmatter from a SKILL.md file
|
||||
*/
|
||||
function parseFrontmatter(content) {
|
||||
const match = content.match(/^---\n([\s\S]*?)\n---/);
|
||||
if (!match) return {};
|
||||
|
||||
const frontmatter = {};
|
||||
const lines = match[1].split("\n");
|
||||
|
||||
for (const line of lines) {
|
||||
const colonIndex = line.indexOf(":");
|
||||
if (colonIndex === -1) continue;
|
||||
|
||||
const key = line.slice(0, colonIndex).trim();
|
||||
let value = line.slice(colonIndex + 1).trim();
|
||||
|
||||
// Remove quotes if present
|
||||
if ((value.startsWith('"') && value.endsWith('"')) ||
|
||||
(value.startsWith("'") && value.endsWith("'"))) {
|
||||
value = value.slice(1, -1);
|
||||
}
|
||||
|
||||
frontmatter[key] = value;
|
||||
}
|
||||
|
||||
return frontmatter;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all skills with their metadata
|
||||
*/
|
||||
function getSkillsWithMetadata() {
|
||||
if (!fs.existsSync(SKILLS_DIR)) {
|
||||
return [];
|
||||
}
|
||||
|
||||
return fs
|
||||
.readdirSync(SKILLS_DIR, { withFileTypes: true })
|
||||
.filter((entry) => {
|
||||
if (!entry.isDirectory()) return false;
|
||||
const skillFile = path.join(SKILLS_DIR, entry.name, "SKILL.md");
|
||||
return fs.existsSync(skillFile);
|
||||
})
|
||||
.map((entry) => {
|
||||
const skillFile = path.join(SKILLS_DIR, entry.name, "SKILL.md");
|
||||
const content = fs.readFileSync(skillFile, "utf8");
|
||||
const frontmatter = parseFrontmatter(content);
|
||||
|
||||
return {
|
||||
dir: entry.name,
|
||||
path: `./${SKILLS_DIR}/${entry.name}`,
|
||||
name: frontmatter.name || entry.name,
|
||||
description: frontmatter.description || "",
|
||||
};
|
||||
})
|
||||
.sort((a, b) => a.name.localeCompare(b.name));
|
||||
}
|
||||
|
||||
/**
|
||||
* Update skill count in description
|
||||
*/
|
||||
function updateSkillCount(description, count) {
|
||||
return description.replace(/\d+ marketing skills/, `${count} marketing skills`);
|
||||
}
|
||||
|
||||
/**
|
||||
* Truncate description to a maximum length
|
||||
*/
|
||||
function truncateDescription(description, maxLength = 120) {
|
||||
if (description.length <= maxLength) return description;
|
||||
|
||||
// Find last space before maxLength to avoid cutting words
|
||||
const truncated = description.slice(0, maxLength);
|
||||
const lastSpace = truncated.lastIndexOf(" ");
|
||||
|
||||
return truncated.slice(0, lastSpace) + "...";
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate the skills table for README
|
||||
*/
|
||||
function generateSkillsTable(skills) {
|
||||
const header = "| Skill | Description |\n|-------|-------------|";
|
||||
const rows = skills.map((skill) => {
|
||||
const link = `[${skill.name}](skills/${skill.dir}/)`;
|
||||
const description = truncateDescription(skill.description);
|
||||
return `| ${link} | ${description} |`;
|
||||
});
|
||||
|
||||
return [header, ...rows].join("\n");
|
||||
}
|
||||
|
||||
/**
|
||||
* Update README.md with new skills table
|
||||
*/
|
||||
function updateReadme(skills) {
|
||||
const content = fs.readFileSync(README_FILE, "utf8");
|
||||
|
||||
// Match content between skill list markers
|
||||
const tableRegex = /(<!-- SKILLS:START -->\n)[\s\S]*?(\n<!-- SKILLS:END -->)/;
|
||||
const newTable = generateSkillsTable(skills);
|
||||
|
||||
if (!tableRegex.test(content)) {
|
||||
console.log("WARNING: Could not find skill markers in README.md");
|
||||
return false;
|
||||
}
|
||||
|
||||
const newContent = content.replace(tableRegex, `$1${newTable}$2`);
|
||||
|
||||
if (newContent === content) {
|
||||
return false;
|
||||
}
|
||||
|
||||
fs.writeFileSync(README_FILE, newContent);
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Update marketplace.json with skills list
|
||||
*/
|
||||
function updateMarketplace(skills) {
|
||||
const marketplace = JSON.parse(fs.readFileSync(MARKETPLACE_FILE, "utf8"));
|
||||
const plugin = marketplace.plugins[0];
|
||||
const existingSkills = plugin.skills || [];
|
||||
const currentSkills = skills.map((s) => s.path);
|
||||
|
||||
if (JSON.stringify(currentSkills) === JSON.stringify(existingSkills)) {
|
||||
return { updated: false };
|
||||
}
|
||||
|
||||
plugin.skills = currentSkills;
|
||||
plugin.description = updateSkillCount(plugin.description, currentSkills.length);
|
||||
|
||||
fs.writeFileSync(MARKETPLACE_FILE, JSON.stringify(marketplace, null, 2) + "\n");
|
||||
|
||||
const added = currentSkills.filter((s) => !existingSkills.includes(s));
|
||||
const removed = existingSkills.filter((s) => !currentSkills.includes(s));
|
||||
|
||||
return { updated: true, added, removed };
|
||||
}
|
||||
|
||||
function main() {
|
||||
const skills = getSkillsWithMetadata();
|
||||
|
||||
const marketplaceResult = updateMarketplace(skills);
|
||||
const readmeUpdated = updateReadme(skills);
|
||||
|
||||
if (!marketplaceResult.updated && !readmeUpdated) {
|
||||
console.log("Everything is already in sync");
|
||||
return;
|
||||
}
|
||||
|
||||
if (marketplaceResult.updated) {
|
||||
if (marketplaceResult.added.length) {
|
||||
console.log(`Added: ${marketplaceResult.added.join(", ")}`);
|
||||
}
|
||||
if (marketplaceResult.removed.length) {
|
||||
console.log(`Removed: ${marketplaceResult.removed.join(", ")}`);
|
||||
}
|
||||
console.log(`Updated marketplace.json (${skills.length} skills)`);
|
||||
}
|
||||
|
||||
if (readmeUpdated) {
|
||||
console.log("Updated README.md skills table");
|
||||
}
|
||||
}
|
||||
|
||||
main();
|
||||
30
.github/workflows/sync-skills.yml
vendored
Normal file
30
.github/workflows/sync-skills.yml
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
name: Sync Skills
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
paths:
|
||||
- 'skills/**'
|
||||
|
||||
jobs:
|
||||
sync:
|
||||
runs-on: ubuntu-slim
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
persist-credentials: true
|
||||
|
||||
- name: Sync skills
|
||||
run: node .github/scripts/sync-skills.js
|
||||
|
||||
- name: Commit changes
|
||||
uses: stefanzweifel/git-auto-commit-action@v7
|
||||
with:
|
||||
commit_user_name: Coreybot
|
||||
commit_user_email: coreybot+github-actions[bot]@users.noreply.github.com
|
||||
commit_message: "chore: sync skills with marketplace.json and README"
|
||||
file_pattern: ".claude-plugin/marketplace.json README.md"
|
||||
65
.github/workflows/validate-skill.yml
vendored
Normal file
65
.github/workflows/validate-skill.yml
vendored
Normal file
@@ -0,0 +1,65 @@
|
||||
name: Validate Agent Skill
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
paths:
|
||||
- "**/SKILL.md"
|
||||
pull_request:
|
||||
branches: [main]
|
||||
paths:
|
||||
- "**/SKILL.md"
|
||||
|
||||
concurrency:
|
||||
group: validate-skill-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
detect-changes:
|
||||
runs-on: ubuntu-slim
|
||||
if: github.event.pull_request.draft != true && github.actor != 'dependabot[bot]'
|
||||
outputs:
|
||||
skills: ${{ steps.changed-skills.outputs.skills }}
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Get changed skills
|
||||
id: changed-skills
|
||||
run: |
|
||||
if [ "${{ github.event_name }}" = "pull_request" ]; then
|
||||
BASE=${{ github.event.pull_request.base.sha }}
|
||||
HEAD=${{ github.event.pull_request.head.sha }}
|
||||
else
|
||||
BASE=${{ github.event.before }}
|
||||
HEAD=${{ github.event.after }}
|
||||
fi
|
||||
|
||||
# Find changed SKILL.md files and extract skill directories
|
||||
SKILLS=$(git diff --name-only $BASE $HEAD | \
|
||||
grep 'SKILL.md$' | \
|
||||
xargs -I {} dirname {} | \
|
||||
sort -u | \
|
||||
jq -R -s -c 'split("\n") | map(select(length > 0))')
|
||||
|
||||
echo "skills=$SKILLS" >> $GITHUB_OUTPUT
|
||||
echo "Changed skills: $SKILLS"
|
||||
|
||||
validate:
|
||||
needs: detect-changes
|
||||
if: needs.detect-changes.outputs.skills != '[]'
|
||||
runs-on: ubuntu-slim
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
skill: ${{ fromJson(needs.detect-changes.outputs.skills) }}
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Validate ${{ matrix.skill }}
|
||||
uses: Flash-Brew-Digital/validate-skill@v1
|
||||
with:
|
||||
path: ${{ matrix.skill }}
|
||||
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
# Remotion video project
|
||||
video/
|
||||
208
AGENTS.md
Normal file
208
AGENTS.md
Normal file
@@ -0,0 +1,208 @@
|
||||
# AGENTS.md
|
||||
|
||||
Guidelines for AI agents working in this repository.
|
||||
|
||||
## Repository Overview
|
||||
|
||||
This repository contains **Agent Skills** for AI agents following the [Agent Skills specification](https://agentskills.io/specification.md). It also serves as a **Claude Code plugin marketplace** via `.claude-plugin/marketplace.json`.
|
||||
|
||||
- **Name**: Marketing Skills
|
||||
- **GitHub**: [coreyhaines31/marketingskills](https://github.com/coreyhaines31/marketingskills)
|
||||
- **Creator**: Corey Haines
|
||||
- **License**: MIT
|
||||
|
||||
## Repository Structure
|
||||
|
||||
```
|
||||
marketingskills/
|
||||
├── .claude-plugin/
|
||||
│ └── marketplace.json # Claude Code plugin marketplace manifest
|
||||
├── skills/ # Agent Skills
|
||||
│ └── skill-name/
|
||||
│ └── SKILL.md # Required skill file
|
||||
├── CONTRIBUTING.md
|
||||
├── LICENSE
|
||||
└── README.md
|
||||
```
|
||||
|
||||
## Build / Lint / Test Commands
|
||||
|
||||
**Not applicable** - This is a content-only repository with no executable code.
|
||||
|
||||
Verify manually:
|
||||
- YAML frontmatter is valid
|
||||
- `name` field matches directory name exactly
|
||||
- `name` is 1-64 chars, lowercase alphanumeric and hyphens only
|
||||
- `description` is 1-1024 characters
|
||||
|
||||
## Agent Skills Specification
|
||||
|
||||
Skills follow the [Agent Skills spec](https://agentskills.io/specification.md).
|
||||
|
||||
### Required Frontmatter
|
||||
|
||||
```yaml
|
||||
---
|
||||
name: skill-name
|
||||
description: What this skill does and when to use it. Include trigger phrases.
|
||||
---
|
||||
```
|
||||
|
||||
### Frontmatter Field Constraints
|
||||
|
||||
| Field | Required | Constraints |
|
||||
|---------------|----------|------------------------------------------------------------------|
|
||||
| `name` | Yes | 1-64 chars, lowercase `a-z`, numbers, hyphens. Must match dir. |
|
||||
| `description` | Yes | 1-1024 chars. Describe what it does and when to use it. |
|
||||
| `license` | No | License name (default: MIT) |
|
||||
| `metadata` | No | Key-value pairs (author, version, etc.) |
|
||||
|
||||
### Name Field Rules
|
||||
|
||||
- Lowercase letters, numbers, and hyphens only
|
||||
- Cannot start or end with hyphen
|
||||
- No consecutive hyphens (`--`)
|
||||
- Must match parent directory name exactly
|
||||
|
||||
**Valid**: `page-cro`, `email-sequence`, `ab-test-setup`
|
||||
**Invalid**: `Page-CRO`, `-page`, `page--cro`
|
||||
|
||||
### Optional Skill Directories
|
||||
|
||||
```
|
||||
skills/skill-name/
|
||||
├── SKILL.md # Required - main instructions (<500 lines)
|
||||
├── references/ # Optional - detailed docs loaded on demand
|
||||
├── scripts/ # Optional - executable code
|
||||
└── assets/ # Optional - templates, data files
|
||||
```
|
||||
|
||||
## Writing Style Guidelines
|
||||
|
||||
### Structure
|
||||
|
||||
- Keep `SKILL.md` under 500 lines (move details to `references/`)
|
||||
- Use H2 (`##`) for main sections, H3 (`###`) for subsections
|
||||
- Use bullet points and numbered lists liberally
|
||||
- Short paragraphs (2-4 sentences max)
|
||||
|
||||
### Tone
|
||||
|
||||
- Direct and instructional
|
||||
- Second person ("You are a conversion rate optimization expert")
|
||||
- Professional but approachable
|
||||
|
||||
### Formatting
|
||||
|
||||
- Bold (`**text**`) for key terms
|
||||
- Code blocks for examples and templates
|
||||
- Tables for reference data
|
||||
- No excessive emojis
|
||||
|
||||
### Clarity Principles
|
||||
|
||||
- Clarity over cleverness
|
||||
- Specific over vague
|
||||
- Active voice over passive
|
||||
- One idea per section
|
||||
|
||||
### Description Field Best Practices
|
||||
|
||||
The `description` is critical for skill discovery. Include:
|
||||
1. What the skill does
|
||||
2. When to use it (trigger phrases)
|
||||
3. Related skills for scope boundaries
|
||||
|
||||
```yaml
|
||||
description: When the user wants to optimize conversions on any marketing page. Use when the user says "CRO," "conversion rate optimization," "this page isn't converting." For signup flows, see signup-flow-cro.
|
||||
```
|
||||
|
||||
## Claude Code Plugin
|
||||
|
||||
This repo also serves as a plugin marketplace. The manifest at `.claude-plugin/marketplace.json` lists all skills for installation via:
|
||||
|
||||
```bash
|
||||
/plugin marketplace add coreyhaines31/marketingskills
|
||||
/plugin install marketing-skills
|
||||
```
|
||||
|
||||
See [Claude Code plugins documentation](https://code.claude.com/docs/en/plugins.md) for details.
|
||||
|
||||
## Git Workflow
|
||||
|
||||
### Branch Naming
|
||||
|
||||
- New skills: `feature/skill-name`
|
||||
- Improvements: `fix/skill-name-description`
|
||||
- Documentation: `docs/description`
|
||||
|
||||
### Commit Messages
|
||||
|
||||
Follow the [Conventional Commits](https://www.conventionalcommits.org/) specification:
|
||||
|
||||
- `feat: add skill-name skill`
|
||||
- `fix: improve clarity in page-cro`
|
||||
- `docs: update README`
|
||||
|
||||
### Pull Request Checklist
|
||||
|
||||
- [ ] `name` matches directory name exactly
|
||||
- [ ] `name` follows naming rules (lowercase, hyphens, no `--`)
|
||||
- [ ] `description` is 1-1024 chars with trigger phrases
|
||||
- [ ] `SKILL.md` is under 500 lines
|
||||
- [ ] No sensitive data or credentials
|
||||
|
||||
## Tool Integrations
|
||||
|
||||
This repository includes a tools registry for agent-compatible marketing tools.
|
||||
|
||||
- **Tool discovery**: Read `tools/REGISTRY.md` to see available tools and their capabilities
|
||||
- **Integration details**: See `tools/integrations/{tool}.md` for API endpoints, auth, and common operations
|
||||
- **MCP-enabled tools**: ga4, stripe, mailchimp, google-ads, resend, zapier
|
||||
|
||||
### Registry Structure
|
||||
|
||||
```
|
||||
tools/
|
||||
├── REGISTRY.md # Index of all tools with capabilities
|
||||
└── integrations/ # Detailed integration guides
|
||||
├── ga4.md
|
||||
├── stripe.md
|
||||
├── rewardful.md
|
||||
└── ...
|
||||
```
|
||||
|
||||
### When to Use Tools
|
||||
|
||||
Skills reference relevant tools for implementation. For example:
|
||||
- `referral-program` skill → rewardful, tolt, dub-co, mention-me guides
|
||||
- `analytics-tracking` skill → ga4, mixpanel, segment guides
|
||||
- `email-sequence` skill → customer-io, mailchimp, resend guides
|
||||
- `paid-ads` skill → google-ads, meta-ads, linkedin-ads guides
|
||||
|
||||
## Checking for Updates
|
||||
|
||||
When using any skill from this repository:
|
||||
|
||||
1. **Once per session**, on first skill use, check for updates:
|
||||
- Fetch `VERSIONS.md` from GitHub: https://raw.githubusercontent.com/coreyhaines31/marketingskills/main/VERSIONS.md
|
||||
- Compare versions against local skill files
|
||||
|
||||
2. **Only prompt if meaningful**:
|
||||
- 2 or more skills have updates, OR
|
||||
- Any skill has a major version bump (e.g., 1.x to 2.x)
|
||||
|
||||
3. **Non-blocking notification** at end of response:
|
||||
```
|
||||
---
|
||||
Skills update available: X marketing skills have updates.
|
||||
Say "update skills" to update automatically, or run `git pull` in your marketingskills folder.
|
||||
```
|
||||
|
||||
4. **If user says "update skills"**:
|
||||
- Run `git pull` in the marketingskills directory
|
||||
- Confirm what was updated
|
||||
|
||||
## Skill Categories
|
||||
|
||||
See `README.md` for the current list of skills organized by category. When adding new skills, follow the naming patterns of existing skills in that category.
|
||||
89
CONTRIBUTING.md
Normal file
89
CONTRIBUTING.md
Normal file
@@ -0,0 +1,89 @@
|
||||
# Contributing
|
||||
|
||||
Thanks for your interest in contributing to Marketing Skills! This guide will help you add new skills or improve existing ones.
|
||||
|
||||
## Requesting a Skill
|
||||
|
||||
You can also suggest new skills by [opening a skill request](https://github.com/coreyhaines31/marketingskills/issues/new?template=skill-request.yml).
|
||||
|
||||
## Adding a New Skill
|
||||
|
||||
### 1. Create the skill directory
|
||||
|
||||
```bash
|
||||
mkdir -p skills/your-skill-name
|
||||
```
|
||||
|
||||
### 2. Create the SKILL.md file
|
||||
|
||||
Every skill needs a `SKILL.md` file with YAML frontmatter:
|
||||
|
||||
```yaml
|
||||
---
|
||||
name: your-skill-name
|
||||
description: When to use this skill. Include trigger phrases and keywords that help agents identify relevant tasks.
|
||||
---
|
||||
|
||||
# Your Skill Name
|
||||
|
||||
Instructions for the agent go here...
|
||||
```
|
||||
|
||||
Optional frontmatter fields: `license` (default: MIT), `metadata` (author, version, etc.)
|
||||
|
||||
### 3. Follow the naming conventions
|
||||
|
||||
- **Directory name**: lowercase, hyphens only (e.g., `email-sequence`)
|
||||
- **Name field**: must match directory name exactly
|
||||
- **Description**: 1-1024 characters, include trigger phrases
|
||||
|
||||
### 4. Structure your skill
|
||||
|
||||
```
|
||||
skills/your-skill-name/
|
||||
├── SKILL.md # Required - main instructions
|
||||
├── references/ # Optional - additional documentation
|
||||
│ └── guide.md
|
||||
├── scripts/ # Optional - executable code
|
||||
│ └── helper.py
|
||||
└── assets/ # Optional - templates, images, data
|
||||
└── template.json
|
||||
```
|
||||
|
||||
### 5. Write effective instructions
|
||||
|
||||
- Keep `SKILL.md` under 500 lines
|
||||
- Move detailed reference material to `references/`
|
||||
- Include step-by-step instructions
|
||||
- Add examples of inputs and outputs
|
||||
- Cover common edge cases
|
||||
|
||||
## Improving Existing Skills
|
||||
|
||||
1. Read the existing skill thoroughly
|
||||
2. Test your changes locally
|
||||
3. Keep changes focused and minimal
|
||||
4. Update the version in metadata if making significant changes
|
||||
|
||||
## Submitting Your Contribution
|
||||
|
||||
1. Fork the repository
|
||||
2. Create a feature branch (`git checkout -b feature/new-skill-name`)
|
||||
3. Make your changes
|
||||
4. Test locally with an AI agent
|
||||
5. Submit a pull request using the appropriate template:
|
||||
- [New Skill](?template=new-skill.md)
|
||||
- [Skill Update](?template=skill-update.md)
|
||||
- [Documentation](?template=documentation.md)
|
||||
|
||||
## Skill Quality Checklist
|
||||
|
||||
- [ ] `name` matches directory name
|
||||
- [ ] `description` clearly explains when to use the skill
|
||||
- [ ] Instructions are clear and actionable
|
||||
- [ ] No sensitive data or credentials
|
||||
- [ ] Follows existing skill patterns in the repo
|
||||
|
||||
## Questions?
|
||||
|
||||
Open an issue if you have questions or need help with your contribution.
|
||||
21
LICENSE
Normal file
21
LICENSE
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2025 Corey Haines
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
118
README.md
118
README.md
@@ -2,7 +2,9 @@
|
||||
|
||||
A collection of AI agent skills focused on marketing tasks. Built for technical marketers and founders who want Claude Code (or similar AI coding assistants) to help with conversion optimization, copywriting, SEO, analytics, and growth engineering.
|
||||
|
||||
Built by [Corey Haines](https://corey.co). Need hands-on help? Check out [Conversion Factory](https://conversionfactory.co) — Corey's agency for conversion optimization, landing pages, and growth strategy.
|
||||
Built by [Corey Haines](https://corey.co?ref=marketingskills). Need hands-on help? Check out [Conversion Factory](https://conversionfactory.co?ref=marketingskills) — Corey's agency for conversion optimization, landing pages, and growth strategy. Want to learn more about marketing? Subscribe to [Swipe Files](https://swipefiles.com?ref=marketingskills).
|
||||
|
||||
New to the terminal and coding agents? Check out the companion guide [Coding for Marketers](https://codingformarketers.com?ref=marketingskills).
|
||||
|
||||
**Contributions welcome!** Found a way to improve a skill or have a new one to add? [Open a PR](#contributing).
|
||||
|
||||
@@ -12,47 +14,51 @@ Skills are markdown files that give AI agents specialized knowledge and workflow
|
||||
|
||||
## Available Skills
|
||||
|
||||
| Skill | Description | Triggers |
|
||||
|-------|-------------|----------|
|
||||
| [ab-test-setup](skills/ab-test-setup/) | Plan and implement A/B tests | "A/B test," "split test," "experiment" |
|
||||
| [analytics-tracking](skills/analytics-tracking/) | Set up tracking and measurement | "tracking," "GA4," "GTM," "events" |
|
||||
| [competitor-alternatives](skills/competitor-alternatives/) | Competitor comparison and alternative pages | "vs page," "alternative page," "[X] vs [Y]" |
|
||||
| [copy-editing](skills/copy-editing/) | Edit and polish existing copy | "edit this copy," "review my copy," "copy sweep" |
|
||||
| [copywriting](skills/copywriting/) | Write or improve marketing copy | "write copy," "rewrite," "headlines," "CTA copy" |
|
||||
| [email-sequence](skills/email-sequence/) | Build email sequences and drip campaigns | "email sequence," "drip campaign," "nurture" |
|
||||
| [form-cro](skills/form-cro/) | Optimize lead capture and contact forms | "form optimization," "lead form," "contact form" |
|
||||
| [free-tool-strategy](skills/free-tool-strategy/) | Plan engineering-as-marketing tools | "free tool," "calculator," "lead gen tool" |
|
||||
| [launch-strategy](skills/launch-strategy/) | Product launches and feature announcements | "launch," "Product Hunt," "feature release" |
|
||||
| [marketing-ideas](skills/marketing-ideas/) | 140 SaaS marketing ideas and strategies | "marketing ideas," "growth ideas," "how to market" |
|
||||
| [marketing-psychology](skills/marketing-psychology/) | 70+ mental models for marketing | "psychology," "mental models," "cognitive bias" |
|
||||
| [onboarding-cro](skills/onboarding-cro/) | Improve user activation and onboarding | "onboarding," "activation," "first-run experience" |
|
||||
| [page-cro](skills/page-cro/) | Conversion optimization for any marketing page | "optimize [page]," "CRO," "page isn't converting" |
|
||||
| [paid-ads](skills/paid-ads/) | Create and optimize paid ad campaigns | "PPC," "Google Ads," "Meta ads," "paid media" |
|
||||
| [paywall-upgrade-cro](skills/paywall-upgrade-cro/) | In-app paywalls and upgrade screens | "paywall," "upgrade screen," "feature gate" |
|
||||
| [popup-cro](skills/popup-cro/) | Create/optimize popups and modals | "popup," "modal," "exit intent" |
|
||||
| [pricing-strategy](skills/pricing-strategy/) | Design pricing, packaging, and monetization | "pricing," "tiers," "freemium," "willingness to pay" |
|
||||
| [programmatic-seo](skills/programmatic-seo/) | Build SEO pages at scale | "programmatic SEO," "template pages," "pages at scale" |
|
||||
| [referral-program](skills/referral-program/) | Design referral and affiliate programs | "referral," "affiliate," "word of mouth," "viral" |
|
||||
| [schema-markup](skills/schema-markup/) | Add structured data and rich snippets | "schema," "JSON-LD," "structured data" |
|
||||
| [seo-audit](skills/seo-audit/) | Audit technical and on-page SEO | "SEO audit," "technical SEO," "not ranking" |
|
||||
| [signup-flow-cro](skills/signup-flow-cro/) | Optimize signup and registration flows | "signup optimization," "registration form" |
|
||||
| [social-content](skills/social-content/) | Create and schedule social media content | "LinkedIn post," "Twitter thread," "social media" |
|
||||
<!-- 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... |
|
||||
| [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... |
|
||||
| [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... |
|
||||
| [copywriting](skills/copywriting/) | When the user wants to write, rewrite, or improve marketing copy for any page — including homepage, landing pages,... |
|
||||
| [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... |
|
||||
| [launch-strategy](skills/launch-strategy/) | When the user wants to plan a product launch, feature announcement, or release strategy. Also use when the user... |
|
||||
| [marketing-ideas](skills/marketing-ideas/) | When the user needs marketing ideas, inspiration, or strategies for their SaaS or software product. Also use when the... |
|
||||
| [marketing-psychology](skills/marketing-psychology/) | When the user wants to apply psychological principles, mental models, or behavioral science to marketing. Also use when... |
|
||||
| [onboarding-cro](skills/onboarding-cro/) | When the user wants to optimize post-signup onboarding, user activation, first-run experience, or time-to-value. Also... |
|
||||
| [page-cro](skills/page-cro/) | When the user wants to optimize, improve, or increase conversions on any marketing page — including homepage, landing... |
|
||||
| [paid-ads](skills/paid-ads/) | When the user wants help with paid advertising campaigns on Google Ads, Meta (Facebook/Instagram), LinkedIn, Twitter/X,... |
|
||||
| [paywall-upgrade-cro](skills/paywall-upgrade-cro/) | When the user wants to create or optimize in-app paywalls, upgrade screens, upsell modals, or feature gates. Also use... |
|
||||
| [popup-cro](skills/popup-cro/) | When the user wants to create or optimize popups, modals, overlays, slide-ins, or banners for conversion purposes. Also... |
|
||||
| [pricing-strategy](skills/pricing-strategy/) | When the user wants help with pricing decisions, packaging, or monetization strategy. Also use when the user mentions... |
|
||||
| [product-marketing-context](skills/product-marketing-context/) | When the user wants to create or update their product marketing context document. Also use when the user mentions... |
|
||||
| [programmatic-seo](skills/programmatic-seo/) | When the user wants to create SEO-driven pages at scale using templates and data. Also use when the user mentions... |
|
||||
| [referral-program](skills/referral-program/) | When the user wants to create, optimize, or analyze a referral program, affiliate program, or word-of-mouth strategy.... |
|
||||
| [schema-markup](skills/schema-markup/) | When the user wants to add, fix, or optimize schema markup and structured data on their site. Also use when the user... |
|
||||
| [seo-audit](skills/seo-audit/) | When the user wants to audit, review, or diagnose SEO issues on their site. Also use when the user mentions "SEO... |
|
||||
| [signup-flow-cro](skills/signup-flow-cro/) | When the user wants to optimize signup, registration, account creation, or trial activation flows. Also use when the... |
|
||||
| [social-content](skills/social-content/) | When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram,... |
|
||||
<!-- SKILLS:END -->
|
||||
|
||||
## Installation
|
||||
|
||||
### Option 1: CLI Install (Recommended)
|
||||
|
||||
Use [add-skill](https://github.com/vercel-labs/add-skill) to install skills directly:
|
||||
Use [npx skills](https://github.com/vercel-labs/skills) to install skills directly:
|
||||
|
||||
```bash
|
||||
# Install all skills
|
||||
npx add-skill coreyhaines31/marketingskills
|
||||
npx skills add coreyhaines31/marketingskills
|
||||
|
||||
# Install specific skills
|
||||
npx add-skill coreyhaines31/marketingskills --skill page-cro copywriting
|
||||
npx skills add coreyhaines31/marketingskills --skill page-cro copywriting
|
||||
|
||||
# List available skills
|
||||
npx add-skill coreyhaines31/marketingskills --list
|
||||
npx skills add coreyhaines31/marketingskills --list
|
||||
```
|
||||
|
||||
This automatically installs to your `.claude/skills/` directory.
|
||||
@@ -94,6 +100,21 @@ Then reference skills from `.claude/marketingskills/skills/`.
|
||||
2. Customize skills for your specific needs
|
||||
3. Clone your fork into your projects
|
||||
|
||||
### Option 6: SkillKit (Multi-Agent)
|
||||
|
||||
Use [SkillKit](https://github.com/rohitg00/skillkit) to install skills across multiple AI agents (Claude Code, Cursor, Copilot, etc.):
|
||||
|
||||
```bash
|
||||
# Install all skills
|
||||
npx skillkit install coreyhaines31/marketingskills
|
||||
|
||||
# Install specific skills
|
||||
npx skillkit install coreyhaines31/marketingskills --skill page-cro copywriting
|
||||
|
||||
# List available skills
|
||||
npx skillkit install coreyhaines31/marketingskills --list
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Once installed, just ask Claude Code to help with marketing tasks:
|
||||
@@ -164,41 +185,8 @@ You can also invoke skills directly:
|
||||
|
||||
Found a way to improve a skill? Have a new skill to suggest? PRs and issues welcome!
|
||||
|
||||
**Ideas for contributions:**
|
||||
- Improve existing skill instructions or frameworks
|
||||
- Add new experiment ideas or best practices
|
||||
- Fix typos or clarify confusing sections
|
||||
- Suggest new skills (open an issue first to discuss)
|
||||
- Add examples or case studies
|
||||
|
||||
**How to contribute:**
|
||||
1. Fork the repo
|
||||
2. Edit the skill file(s)
|
||||
3. Submit a PR with a clear description of what you improved
|
||||
|
||||
### Skill File Structure
|
||||
|
||||
Each skill is a directory containing a `SKILL.md` file:
|
||||
|
||||
```
|
||||
skills/
|
||||
skill-name/
|
||||
SKILL.md
|
||||
```
|
||||
|
||||
The `SKILL.md` file follows this format:
|
||||
|
||||
```markdown
|
||||
---
|
||||
name: skill-name
|
||||
description: One-line description for skill selection
|
||||
---
|
||||
|
||||
# Skill Name
|
||||
|
||||
[Full instructions for the AI agent]
|
||||
```
|
||||
See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines on adding or improving skills.
|
||||
|
||||
## License
|
||||
|
||||
MIT - Use these however you want.
|
||||
[MIT](LICENSE) - Use these however you want.
|
||||
|
||||
37
VERSIONS.md
Normal file
37
VERSIONS.md
Normal file
@@ -0,0 +1,37 @@
|
||||
# Marketing Skills Versions
|
||||
|
||||
Current versions of all skills. Agents can compare against local versions to check for updates.
|
||||
|
||||
| Skill | Version | Last Updated |
|
||||
|-------|---------|--------------|
|
||||
| ab-test-setup | 1.0.0 | 2026-01-27 |
|
||||
| analytics-tracking | 1.0.0 | 2026-01-27 |
|
||||
| competitor-alternatives | 1.0.0 | 2026-01-27 |
|
||||
| content-strategy | 1.0.0 | 2026-01-27 |
|
||||
| copy-editing | 1.0.0 | 2026-01-27 |
|
||||
| copywriting | 1.0.0 | 2026-01-27 |
|
||||
| email-sequence | 1.0.0 | 2026-01-27 |
|
||||
| form-cro | 1.0.0 | 2026-01-27 |
|
||||
| free-tool-strategy | 1.0.0 | 2026-01-27 |
|
||||
| launch-strategy | 1.0.0 | 2026-01-27 |
|
||||
| marketing-ideas | 1.0.0 | 2026-01-27 |
|
||||
| marketing-psychology | 1.0.0 | 2026-01-27 |
|
||||
| onboarding-cro | 1.0.0 | 2026-01-27 |
|
||||
| page-cro | 1.0.0 | 2026-01-27 |
|
||||
| paid-ads | 1.0.0 | 2026-01-27 |
|
||||
| paywall-upgrade-cro | 1.0.0 | 2026-01-27 |
|
||||
| popup-cro | 1.0.0 | 2026-01-27 |
|
||||
| pricing-strategy | 1.0.0 | 2026-01-27 |
|
||||
| product-marketing-context | 1.0.0 | 2026-01-27 |
|
||||
| programmatic-seo | 1.0.0 | 2026-01-27 |
|
||||
| referral-program | 1.0.0 | 2026-01-27 |
|
||||
| schema-markup | 1.0.0 | 2026-01-27 |
|
||||
| seo-audit | 1.0.0 | 2026-01-27 |
|
||||
| signup-flow-cro | 1.0.0 | 2026-01-27 |
|
||||
| social-content | 1.0.0 | 2026-01-27 |
|
||||
|
||||
## Recent Changes
|
||||
|
||||
### 2026-01-27
|
||||
- Initial version tracking added
|
||||
- Added tools registry with 29 integration guides
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: ab-test-setup
|
||||
version: 1.0.0
|
||||
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," or "hypothesis." For tracking implementation, see analytics-tracking.
|
||||
---
|
||||
|
||||
@@ -9,22 +10,14 @@ You are an expert in experimentation and A/B testing. Your goal is to help desig
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before designing a test, understand:
|
||||
|
||||
1. **Test Context**
|
||||
- What are you trying to improve?
|
||||
- What change are you considering?
|
||||
- What made you want to test this?
|
||||
|
||||
2. **Current State**
|
||||
- Baseline conversion rate?
|
||||
- Current traffic volume?
|
||||
- Any historical test data?
|
||||
|
||||
3. **Constraints**
|
||||
- Technical implementation complexity?
|
||||
- Timeline requirements?
|
||||
- Tools available?
|
||||
1. **Test Context** - What are you trying to improve? What change are you considering?
|
||||
2. **Current State** - Baseline conversion rate? Current traffic volume?
|
||||
3. **Constraints** - Technical complexity? Timeline? Tools available?
|
||||
|
||||
---
|
||||
|
||||
@@ -38,7 +31,6 @@ Before designing a test, understand:
|
||||
### 2. Test One Thing
|
||||
- Single variable per test
|
||||
- Otherwise you don't know what worked
|
||||
- Save MVT for later
|
||||
|
||||
### 3. Statistical Rigor
|
||||
- Pre-determine sample size
|
||||
@@ -64,81 +56,41 @@ for [audience].
|
||||
We'll know this is true when [metrics].
|
||||
```
|
||||
|
||||
### Examples
|
||||
### Example
|
||||
|
||||
**Weak hypothesis:**
|
||||
"Changing the button color might increase clicks."
|
||||
**Weak**: "Changing the button color might increase clicks."
|
||||
|
||||
**Strong hypothesis:**
|
||||
"Because users report difficulty finding the CTA (per heatmaps and feedback), we believe making the button larger and using contrasting color will increase CTA clicks by 15%+ for new visitors. We'll measure click-through rate from page view to signup start."
|
||||
|
||||
### Good Hypotheses Include
|
||||
|
||||
- **Observation**: What prompted this idea
|
||||
- **Change**: Specific modification
|
||||
- **Effect**: Expected outcome and direction
|
||||
- **Audience**: Who this applies to
|
||||
- **Metric**: How you'll measure success
|
||||
**Strong**: "Because users report difficulty finding the CTA (per heatmaps and feedback), we believe making the button larger and using contrasting color will increase CTA clicks by 15%+ for new visitors. We'll measure click-through rate from page view to signup start."
|
||||
|
||||
---
|
||||
|
||||
## Test Types
|
||||
|
||||
### A/B Test (Split Test)
|
||||
- Two versions: Control (A) vs. Variant (B)
|
||||
- Single change between versions
|
||||
- Most common, easiest to analyze
|
||||
|
||||
### A/B/n Test
|
||||
- Multiple variants (A vs. B vs. C...)
|
||||
- Requires more traffic
|
||||
- Good for testing several options
|
||||
|
||||
### Multivariate Test (MVT)
|
||||
- Multiple changes in combinations
|
||||
- Tests interactions between changes
|
||||
- Requires significantly more traffic
|
||||
- Complex analysis
|
||||
|
||||
### Split URL Test
|
||||
- Different URLs for variants
|
||||
- Good for major page changes
|
||||
- Easier implementation sometimes
|
||||
| Type | Description | Traffic Needed |
|
||||
|------|-------------|----------------|
|
||||
| A/B | Two versions, single change | Moderate |
|
||||
| A/B/n | Multiple variants | Higher |
|
||||
| MVT | Multiple changes in combinations | Very high |
|
||||
| Split URL | Different URLs for variants | Moderate |
|
||||
|
||||
---
|
||||
|
||||
## Sample Size Calculation
|
||||
|
||||
### Inputs Needed
|
||||
|
||||
1. **Baseline conversion rate**: Your current rate
|
||||
2. **Minimum detectable effect (MDE)**: Smallest change worth detecting
|
||||
3. **Statistical significance level**: Usually 95%
|
||||
4. **Statistical power**: Usually 80%
|
||||
## Sample Size
|
||||
|
||||
### Quick Reference
|
||||
|
||||
| Baseline Rate | 10% Lift | 20% Lift | 50% Lift |
|
||||
|---------------|----------|----------|----------|
|
||||
| Baseline | 10% Lift | 20% Lift | 50% Lift |
|
||||
|----------|----------|----------|----------|
|
||||
| 1% | 150k/variant | 39k/variant | 6k/variant |
|
||||
| 3% | 47k/variant | 12k/variant | 2k/variant |
|
||||
| 5% | 27k/variant | 7k/variant | 1.2k/variant |
|
||||
| 10% | 12k/variant | 3k/variant | 550/variant |
|
||||
|
||||
### Formula Resources
|
||||
- Evan Miller's calculator: https://www.evanmiller.org/ab-testing/sample-size.html
|
||||
- Optimizely's calculator: https://www.optimizely.com/sample-size-calculator/
|
||||
**Calculators:**
|
||||
- [Evan Miller's](https://www.evanmiller.org/ab-testing/sample-size.html)
|
||||
- [Optimizely's](https://www.optimizely.com/sample-size-calculator/)
|
||||
|
||||
### Test Duration
|
||||
|
||||
```
|
||||
Duration = Sample size needed per variant × Number of variants
|
||||
───────────────────────────────────────────────────
|
||||
Daily traffic to test page × Conversion rate
|
||||
```
|
||||
|
||||
Minimum: 1-2 business cycles (usually 1-2 weeks)
|
||||
Maximum: Avoid running too long (novelty effects, external factors)
|
||||
**For detailed sample size tables and duration calculations**: See [references/sample-size-guide.md](references/sample-size-guide.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -152,228 +104,106 @@ Maximum: Avoid running too long (novelty effects, external factors)
|
||||
### Secondary Metrics
|
||||
- Support primary metric interpretation
|
||||
- Explain why/how the change worked
|
||||
- Help understand user behavior
|
||||
|
||||
### Guardrail Metrics
|
||||
- Things that shouldn't get worse
|
||||
- Revenue, retention, satisfaction
|
||||
- Stop test if significantly negative
|
||||
|
||||
### Metric Examples by Test Type
|
||||
|
||||
**Homepage CTA test:**
|
||||
- Primary: CTA click-through rate
|
||||
- Secondary: Time to click, scroll depth
|
||||
- Guardrail: Bounce rate, downstream conversion
|
||||
|
||||
**Pricing page test:**
|
||||
- Primary: Plan selection rate
|
||||
- Secondary: Time on page, plan distribution
|
||||
- Guardrail: Support tickets, refund rate
|
||||
|
||||
**Signup flow test:**
|
||||
- Primary: Signup completion rate
|
||||
- Secondary: Field-level completion, time to complete
|
||||
- Guardrail: User activation rate (post-signup quality)
|
||||
### Example: Pricing Page Test
|
||||
- **Primary**: Plan selection rate
|
||||
- **Secondary**: Time on page, plan distribution
|
||||
- **Guardrail**: Support tickets, refund rate
|
||||
|
||||
---
|
||||
|
||||
## Designing Variants
|
||||
|
||||
### Control (A)
|
||||
- Current experience, unchanged
|
||||
- Don't modify during test
|
||||
### What to Vary
|
||||
|
||||
### Variant (B+)
|
||||
| Category | Examples |
|
||||
|----------|----------|
|
||||
| Headlines/Copy | Message angle, value prop, specificity, tone |
|
||||
| Visual Design | Layout, color, images, hierarchy |
|
||||
| CTA | Button copy, size, placement, number |
|
||||
| Content | Information included, order, amount, social proof |
|
||||
|
||||
**Best practices:**
|
||||
### Best Practices
|
||||
- Single, meaningful change
|
||||
- Bold enough to make a difference
|
||||
- True to the hypothesis
|
||||
|
||||
**What to vary:**
|
||||
|
||||
Headlines/Copy:
|
||||
- Message angle
|
||||
- Value proposition
|
||||
- Specificity level
|
||||
- Tone/voice
|
||||
|
||||
Visual Design:
|
||||
- Layout structure
|
||||
- Color and contrast
|
||||
- Image selection
|
||||
- Visual hierarchy
|
||||
|
||||
CTA:
|
||||
- Button copy
|
||||
- Size/prominence
|
||||
- Placement
|
||||
- Number of CTAs
|
||||
|
||||
Content:
|
||||
- Information included
|
||||
- Order of information
|
||||
- Amount of content
|
||||
- Social proof type
|
||||
|
||||
### Documenting Variants
|
||||
|
||||
```
|
||||
Control (A):
|
||||
- Screenshot
|
||||
- Description of current state
|
||||
|
||||
Variant (B):
|
||||
- Screenshot or mockup
|
||||
- Specific changes made
|
||||
- Hypothesis for why this will win
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Traffic Allocation
|
||||
|
||||
### Standard Split
|
||||
- 50/50 for A/B test
|
||||
- Equal split for multiple variants
|
||||
| Approach | Split | When to Use |
|
||||
|----------|-------|-------------|
|
||||
| Standard | 50/50 | Default for A/B |
|
||||
| Conservative | 90/10, 80/20 | Limit risk of bad variant |
|
||||
| Ramping | Start small, increase | Technical risk mitigation |
|
||||
|
||||
### Conservative Rollout
|
||||
- 90/10 or 80/20 initially
|
||||
- Limits risk of bad variant
|
||||
- Longer to reach significance
|
||||
|
||||
### Ramping
|
||||
- Start small, increase over time
|
||||
- Good for technical risk mitigation
|
||||
- Most tools support this
|
||||
|
||||
### Considerations
|
||||
**Considerations:**
|
||||
- Consistency: Users see same variant on return
|
||||
- Segment sizes: Ensure segments are large enough
|
||||
- Time of day/week: Balanced exposure
|
||||
- Balanced exposure across time of day/week
|
||||
|
||||
---
|
||||
|
||||
## Implementation Approaches
|
||||
## Implementation
|
||||
|
||||
### Client-Side Testing
|
||||
|
||||
**Tools**: PostHog, Optimizely, VWO, custom
|
||||
|
||||
**How it works**:
|
||||
### Client-Side
|
||||
- JavaScript modifies page after load
|
||||
- Quick to implement
|
||||
- Can cause flicker
|
||||
- Quick to implement, can cause flicker
|
||||
- Tools: PostHog, Optimizely, VWO
|
||||
|
||||
**Best for**:
|
||||
- Marketing pages
|
||||
- Copy/visual changes
|
||||
- Quick iteration
|
||||
|
||||
### Server-Side Testing
|
||||
|
||||
**Tools**: PostHog, LaunchDarkly, Split, custom
|
||||
|
||||
**How it works**:
|
||||
- Variant determined before page renders
|
||||
- No flicker
|
||||
- Requires development work
|
||||
|
||||
**Best for**:
|
||||
- Product features
|
||||
- Complex changes
|
||||
- Performance-sensitive pages
|
||||
|
||||
### Feature Flags
|
||||
|
||||
- Binary on/off (not true A/B)
|
||||
- Good for rollouts
|
||||
- Can convert to A/B with percentage split
|
||||
### Server-Side
|
||||
- Variant determined before render
|
||||
- No flicker, requires dev work
|
||||
- Tools: PostHog, LaunchDarkly, Split
|
||||
|
||||
---
|
||||
|
||||
## Running the Test
|
||||
|
||||
### Pre-Launch Checklist
|
||||
|
||||
- [ ] Hypothesis documented
|
||||
- [ ] Primary metric defined
|
||||
- [ ] Sample size calculated
|
||||
- [ ] Test duration estimated
|
||||
- [ ] Variants implemented correctly
|
||||
- [ ] Tracking verified
|
||||
- [ ] QA completed on all variants
|
||||
- [ ] Stakeholders informed
|
||||
|
||||
### During the Test
|
||||
|
||||
**DO:**
|
||||
- Monitor for technical issues
|
||||
- Check segment quality
|
||||
- Document any external factors
|
||||
- Document external factors
|
||||
|
||||
**DON'T:**
|
||||
- Peek at results and stop early
|
||||
- Make changes to variants
|
||||
- Add traffic from new sources
|
||||
- End early because you "know" the answer
|
||||
|
||||
### Peeking Problem
|
||||
|
||||
Looking at results before reaching sample size and stopping when you see significance leads to:
|
||||
- False positives
|
||||
- Inflated effect sizes
|
||||
- Wrong decisions
|
||||
|
||||
**Solutions:**
|
||||
- Pre-commit to sample size and stick to it
|
||||
- Use sequential testing if you must peek
|
||||
- Trust the process
|
||||
### The Peeking Problem
|
||||
Looking at results before reaching sample size and stopping early leads to false positives and wrong decisions. Pre-commit to sample size and trust the process.
|
||||
|
||||
---
|
||||
|
||||
## Analyzing Results
|
||||
|
||||
### Statistical Significance
|
||||
|
||||
- 95% confidence = p-value < 0.05
|
||||
- Means: <5% chance result is random
|
||||
- Means <5% chance result is random
|
||||
- Not a guarantee—just a threshold
|
||||
|
||||
### Practical Significance
|
||||
### Analysis Checklist
|
||||
|
||||
Statistical ≠ Practical
|
||||
|
||||
- Is the effect size meaningful for business?
|
||||
- Is it worth the implementation cost?
|
||||
- Is it sustainable over time?
|
||||
|
||||
### What to Look At
|
||||
|
||||
1. **Did you reach sample size?**
|
||||
- If not, result is preliminary
|
||||
|
||||
2. **Is it statistically significant?**
|
||||
- Check confidence intervals
|
||||
- Check p-value
|
||||
|
||||
3. **Is the effect size meaningful?**
|
||||
- Compare to your MDE
|
||||
- Project business impact
|
||||
|
||||
4. **Are secondary metrics consistent?**
|
||||
- Do they support the primary?
|
||||
- Any unexpected effects?
|
||||
|
||||
5. **Any guardrail concerns?**
|
||||
- Did anything get worse?
|
||||
- Long-term risks?
|
||||
|
||||
6. **Segment differences?**
|
||||
- Mobile vs. desktop?
|
||||
- New vs. returning?
|
||||
- Traffic source?
|
||||
1. **Reach sample size?** If not, result is preliminary
|
||||
2. **Statistically significant?** Check confidence intervals
|
||||
3. **Effect size meaningful?** Compare to MDE, project impact
|
||||
4. **Secondary metrics consistent?** Support the primary?
|
||||
5. **Guardrail concerns?** Anything get worse?
|
||||
6. **Segment differences?** Mobile vs. desktop? New vs. returning?
|
||||
|
||||
### Interpreting Results
|
||||
|
||||
@@ -386,84 +216,15 @@ Statistical ≠ Practical
|
||||
|
||||
---
|
||||
|
||||
## Documenting and Learning
|
||||
## Documentation
|
||||
|
||||
### Test Documentation
|
||||
Document every test with:
|
||||
- Hypothesis
|
||||
- Variants (with screenshots)
|
||||
- Results (sample, metrics, significance)
|
||||
- Decision and learnings
|
||||
|
||||
```
|
||||
Test Name: [Name]
|
||||
Test ID: [ID in testing tool]
|
||||
Dates: [Start] - [End]
|
||||
Owner: [Name]
|
||||
|
||||
Hypothesis:
|
||||
[Full hypothesis statement]
|
||||
|
||||
Variants:
|
||||
- Control: [Description + screenshot]
|
||||
- Variant: [Description + screenshot]
|
||||
|
||||
Results:
|
||||
- Sample size: [achieved vs. target]
|
||||
- Primary metric: [control] vs. [variant] ([% change], [confidence])
|
||||
- Secondary metrics: [summary]
|
||||
- Segment insights: [notable differences]
|
||||
|
||||
Decision: [Winner/Loser/Inconclusive]
|
||||
Action: [What we're doing]
|
||||
|
||||
Learnings:
|
||||
[What we learned, what to test next]
|
||||
```
|
||||
|
||||
### Building a Learning Repository
|
||||
|
||||
- Central location for all tests
|
||||
- Searchable by page, element, outcome
|
||||
- Prevents re-running failed tests
|
||||
- Builds institutional knowledge
|
||||
|
||||
---
|
||||
|
||||
## Output Format
|
||||
|
||||
### Test Plan Document
|
||||
|
||||
```
|
||||
# A/B Test: [Name]
|
||||
|
||||
## Hypothesis
|
||||
[Full hypothesis using framework]
|
||||
|
||||
## Test Design
|
||||
- Type: A/B / A/B/n / MVT
|
||||
- Duration: X weeks
|
||||
- Sample size: X per variant
|
||||
- Traffic allocation: 50/50
|
||||
|
||||
## Variants
|
||||
[Control and variant descriptions with visuals]
|
||||
|
||||
## Metrics
|
||||
- Primary: [metric and definition]
|
||||
- Secondary: [list]
|
||||
- Guardrails: [list]
|
||||
|
||||
## Implementation
|
||||
- Method: Client-side / Server-side
|
||||
- Tool: [Tool name]
|
||||
- Dev requirements: [If any]
|
||||
|
||||
## Analysis Plan
|
||||
- Success criteria: [What constitutes a win]
|
||||
- Segment analysis: [Planned segments]
|
||||
```
|
||||
|
||||
### Results Summary
|
||||
When test is complete
|
||||
|
||||
### Recommendations
|
||||
Next steps based on results
|
||||
**For templates**: See [references/test-templates.md](references/test-templates.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -473,25 +234,21 @@ Next steps based on results
|
||||
- Testing too small a change (undetectable)
|
||||
- Testing too many things (can't isolate)
|
||||
- No clear hypothesis
|
||||
- Wrong audience
|
||||
|
||||
### Execution
|
||||
- Stopping early
|
||||
- Changing things mid-test
|
||||
- Not checking implementation
|
||||
- Uneven traffic allocation
|
||||
|
||||
### Analysis
|
||||
- Ignoring confidence intervals
|
||||
- Cherry-picking segments
|
||||
- Over-interpreting inconclusive results
|
||||
- Not considering practical significance
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What's your current conversion rate?
|
||||
2. How much traffic does this page get?
|
||||
3. What change are you considering and why?
|
||||
|
||||
252
skills/ab-test-setup/references/sample-size-guide.md
Normal file
252
skills/ab-test-setup/references/sample-size-guide.md
Normal file
@@ -0,0 +1,252 @@
|
||||
# Sample Size Guide
|
||||
|
||||
Reference for calculating sample sizes and test duration.
|
||||
|
||||
## Sample Size Fundamentals
|
||||
|
||||
### Required Inputs
|
||||
|
||||
1. **Baseline conversion rate**: Your current rate
|
||||
2. **Minimum detectable effect (MDE)**: Smallest change worth detecting
|
||||
3. **Statistical significance level**: Usually 95% (α = 0.05)
|
||||
4. **Statistical power**: Usually 80% (β = 0.20)
|
||||
|
||||
### What These Mean
|
||||
|
||||
**Baseline conversion rate**: If your page converts at 5%, that's your baseline.
|
||||
|
||||
**MDE (Minimum Detectable Effect)**: The smallest improvement you care about detecting. Set this based on:
|
||||
- Business impact (is a 5% lift meaningful?)
|
||||
- Implementation cost (worth the effort?)
|
||||
- Realistic expectations (what have past tests shown?)
|
||||
|
||||
**Statistical significance (95%)**: Means there's less than 5% chance the observed difference is due to random chance.
|
||||
|
||||
**Statistical power (80%)**: Means if there's a real effect of size MDE, you have 80% chance of detecting it.
|
||||
|
||||
---
|
||||
|
||||
## Sample Size Quick Reference Tables
|
||||
|
||||
### Conversion Rate: 1%
|
||||
|
||||
| Lift to Detect | Sample per Variant | Total Sample |
|
||||
|----------------|-------------------|--------------|
|
||||
| 5% (1% → 1.05%) | 1,500,000 | 3,000,000 |
|
||||
| 10% (1% → 1.1%) | 380,000 | 760,000 |
|
||||
| 20% (1% → 1.2%) | 97,000 | 194,000 |
|
||||
| 50% (1% → 1.5%) | 16,000 | 32,000 |
|
||||
| 100% (1% → 2%) | 4,200 | 8,400 |
|
||||
|
||||
### Conversion Rate: 3%
|
||||
|
||||
| Lift to Detect | Sample per Variant | Total Sample |
|
||||
|----------------|-------------------|--------------|
|
||||
| 5% (3% → 3.15%) | 480,000 | 960,000 |
|
||||
| 10% (3% → 3.3%) | 120,000 | 240,000 |
|
||||
| 20% (3% → 3.6%) | 31,000 | 62,000 |
|
||||
| 50% (3% → 4.5%) | 5,200 | 10,400 |
|
||||
| 100% (3% → 6%) | 1,400 | 2,800 |
|
||||
|
||||
### Conversion Rate: 5%
|
||||
|
||||
| Lift to Detect | Sample per Variant | Total Sample |
|
||||
|----------------|-------------------|--------------|
|
||||
| 5% (5% → 5.25%) | 280,000 | 560,000 |
|
||||
| 10% (5% → 5.5%) | 72,000 | 144,000 |
|
||||
| 20% (5% → 6%) | 18,000 | 36,000 |
|
||||
| 50% (5% → 7.5%) | 3,100 | 6,200 |
|
||||
| 100% (5% → 10%) | 810 | 1,620 |
|
||||
|
||||
### Conversion Rate: 10%
|
||||
|
||||
| Lift to Detect | Sample per Variant | Total Sample |
|
||||
|----------------|-------------------|--------------|
|
||||
| 5% (10% → 10.5%) | 130,000 | 260,000 |
|
||||
| 10% (10% → 11%) | 34,000 | 68,000 |
|
||||
| 20% (10% → 12%) | 8,700 | 17,400 |
|
||||
| 50% (10% → 15%) | 1,500 | 3,000 |
|
||||
| 100% (10% → 20%) | 400 | 800 |
|
||||
|
||||
### Conversion Rate: 20%
|
||||
|
||||
| Lift to Detect | Sample per Variant | Total Sample |
|
||||
|----------------|-------------------|--------------|
|
||||
| 5% (20% → 21%) | 60,000 | 120,000 |
|
||||
| 10% (20% → 22%) | 16,000 | 32,000 |
|
||||
| 20% (20% → 24%) | 4,000 | 8,000 |
|
||||
| 50% (20% → 30%) | 700 | 1,400 |
|
||||
| 100% (20% → 40%) | 200 | 400 |
|
||||
|
||||
---
|
||||
|
||||
## Duration Calculator
|
||||
|
||||
### Formula
|
||||
|
||||
```
|
||||
Duration (days) = (Sample per variant × Number of variants) / (Daily traffic × % exposed)
|
||||
```
|
||||
|
||||
### Examples
|
||||
|
||||
**Scenario 1: High-traffic page**
|
||||
- Need: 10,000 per variant (2 variants = 20,000 total)
|
||||
- Daily traffic: 5,000 visitors
|
||||
- 100% exposed to test
|
||||
- Duration: 20,000 / 5,000 = **4 days**
|
||||
|
||||
**Scenario 2: Medium-traffic page**
|
||||
- Need: 30,000 per variant (60,000 total)
|
||||
- Daily traffic: 2,000 visitors
|
||||
- 100% exposed
|
||||
- Duration: 60,000 / 2,000 = **30 days**
|
||||
|
||||
**Scenario 3: Low-traffic with partial exposure**
|
||||
- Need: 15,000 per variant (30,000 total)
|
||||
- Daily traffic: 500 visitors
|
||||
- 50% exposed to test
|
||||
- Effective daily: 250
|
||||
- Duration: 30,000 / 250 = **120 days** (too long!)
|
||||
|
||||
### Minimum Duration Rules
|
||||
|
||||
Even with sufficient sample size, run tests for at least:
|
||||
- **1 full week**: To capture day-of-week variation
|
||||
- **2 business cycles**: If B2B (weekday vs. weekend patterns)
|
||||
- **Through paydays**: If e-commerce (beginning/end of month)
|
||||
|
||||
### Maximum Duration Guidelines
|
||||
|
||||
Avoid running tests longer than 4-8 weeks:
|
||||
- Novelty effects wear off
|
||||
- External factors intervene
|
||||
- Opportunity cost of other tests
|
||||
|
||||
---
|
||||
|
||||
## Online Calculators
|
||||
|
||||
### Recommended Tools
|
||||
|
||||
**Evan Miller's Calculator**
|
||||
https://www.evanmiller.org/ab-testing/sample-size.html
|
||||
- Simple interface
|
||||
- Bookmark-worthy
|
||||
|
||||
**Optimizely's Calculator**
|
||||
https://www.optimizely.com/sample-size-calculator/
|
||||
- Business-friendly language
|
||||
- Duration estimates
|
||||
|
||||
**AB Test Guide Calculator**
|
||||
https://www.abtestguide.com/calc/
|
||||
- Includes Bayesian option
|
||||
- Multiple test types
|
||||
|
||||
**VWO Duration Calculator**
|
||||
https://vwo.com/tools/ab-test-duration-calculator/
|
||||
- Duration-focused
|
||||
- Good for planning
|
||||
|
||||
---
|
||||
|
||||
## Adjusting for Multiple Variants
|
||||
|
||||
With more than 2 variants (A/B/n tests), you need more sample:
|
||||
|
||||
| Variants | Multiplier |
|
||||
|----------|------------|
|
||||
| 2 (A/B) | 1x |
|
||||
| 3 (A/B/C) | ~1.5x |
|
||||
| 4 (A/B/C/D) | ~2x |
|
||||
| 5+ | Consider reducing variants |
|
||||
|
||||
**Why?** More comparisons increase chance of false positives. You're comparing:
|
||||
- A vs B
|
||||
- A vs C
|
||||
- B vs C (sometimes)
|
||||
|
||||
Apply Bonferroni correction or use tools that handle this automatically.
|
||||
|
||||
---
|
||||
|
||||
## Common Sample Size Mistakes
|
||||
|
||||
### 1. Underpowered tests
|
||||
**Problem**: Not enough sample to detect realistic effects
|
||||
**Fix**: Be realistic about MDE, get more traffic, or don't test
|
||||
|
||||
### 2. Overpowered tests
|
||||
**Problem**: Waiting for sample size when you already have significance
|
||||
**Fix**: This is actually fine—you committed to sample size, honor it
|
||||
|
||||
### 3. Wrong baseline rate
|
||||
**Problem**: Using wrong conversion rate for calculation
|
||||
**Fix**: Use the specific metric and page, not site-wide averages
|
||||
|
||||
### 4. Ignoring segments
|
||||
**Problem**: Calculating for full traffic, then analyzing segments
|
||||
**Fix**: If you plan segment analysis, calculate sample for smallest segment
|
||||
|
||||
### 5. Testing too many things
|
||||
**Problem**: Dividing traffic too many ways
|
||||
**Fix**: Prioritize ruthlessly, run fewer concurrent tests
|
||||
|
||||
---
|
||||
|
||||
## When Sample Size Requirements Are Too High
|
||||
|
||||
Options when you can't get enough traffic:
|
||||
|
||||
1. **Increase MDE**: Accept only detecting larger effects (20%+ lift)
|
||||
2. **Lower confidence**: Use 90% instead of 95% (risky, document it)
|
||||
3. **Reduce variants**: Test only the most promising variant
|
||||
4. **Combine traffic**: Test across multiple similar pages
|
||||
5. **Test upstream**: Test earlier in funnel where traffic is higher
|
||||
6. **Don't test**: Make decision based on qualitative data instead
|
||||
7. **Longer test**: Accept longer duration (weeks/months)
|
||||
|
||||
---
|
||||
|
||||
## Sequential Testing
|
||||
|
||||
If you must check results before reaching sample size:
|
||||
|
||||
### What is it?
|
||||
Statistical method that adjusts for multiple looks at data.
|
||||
|
||||
### When to use
|
||||
- High-risk changes
|
||||
- Need to stop bad variants early
|
||||
- Time-sensitive decisions
|
||||
|
||||
### Tools that support it
|
||||
- Optimizely (Stats Accelerator)
|
||||
- VWO (SmartStats)
|
||||
- PostHog (Bayesian approach)
|
||||
|
||||
### Tradeoff
|
||||
- More flexibility to stop early
|
||||
- Slightly larger sample size requirement
|
||||
- More complex analysis
|
||||
|
||||
---
|
||||
|
||||
## Quick Decision Framework
|
||||
|
||||
### Can I run this test?
|
||||
|
||||
```
|
||||
Daily traffic to page: _____
|
||||
Baseline conversion rate: _____
|
||||
MDE I care about: _____
|
||||
|
||||
Sample needed per variant: _____ (from tables above)
|
||||
Days to run: Sample / Daily traffic = _____
|
||||
|
||||
If days > 60: Consider alternatives
|
||||
If days > 30: Acceptable for high-impact tests
|
||||
If days < 14: Likely feasible
|
||||
If days < 7: Easy to run, consider running longer anyway
|
||||
```
|
||||
268
skills/ab-test-setup/references/test-templates.md
Normal file
268
skills/ab-test-setup/references/test-templates.md
Normal file
@@ -0,0 +1,268 @@
|
||||
# A/B Test Templates Reference
|
||||
|
||||
Templates for planning, documenting, and analyzing experiments.
|
||||
|
||||
## Test Plan Template
|
||||
|
||||
```markdown
|
||||
# A/B Test: [Name]
|
||||
|
||||
## Overview
|
||||
- **Owner**: [Name]
|
||||
- **Test ID**: [ID in testing tool]
|
||||
- **Page/Feature**: [What's being tested]
|
||||
- **Planned dates**: [Start] - [End]
|
||||
|
||||
## Hypothesis
|
||||
|
||||
Because [observation/data],
|
||||
we believe [change]
|
||||
will cause [expected outcome]
|
||||
for [audience].
|
||||
We'll know this is true when [metrics].
|
||||
|
||||
## Test Design
|
||||
|
||||
| Element | Details |
|
||||
|---------|---------|
|
||||
| Test type | A/B / A/B/n / MVT |
|
||||
| Duration | X weeks |
|
||||
| Sample size | X per variant |
|
||||
| Traffic allocation | 50/50 |
|
||||
| Tool | [Tool name] |
|
||||
| Implementation | Client-side / Server-side |
|
||||
|
||||
## Variants
|
||||
|
||||
### Control (A)
|
||||
[Screenshot]
|
||||
- Current experience
|
||||
- [Key details about current state]
|
||||
|
||||
### Variant (B)
|
||||
[Screenshot or mockup]
|
||||
- [Specific change #1]
|
||||
- [Specific change #2]
|
||||
- Rationale: [Why we think this will win]
|
||||
|
||||
## Metrics
|
||||
|
||||
### Primary
|
||||
- **Metric**: [metric name]
|
||||
- **Definition**: [how it's calculated]
|
||||
- **Current baseline**: [X%]
|
||||
- **Minimum detectable effect**: [X%]
|
||||
|
||||
### Secondary
|
||||
- [Metric 1]: [what it tells us]
|
||||
- [Metric 2]: [what it tells us]
|
||||
- [Metric 3]: [what it tells us]
|
||||
|
||||
### Guardrails
|
||||
- [Metric that shouldn't get worse]
|
||||
- [Another safety metric]
|
||||
|
||||
## Segment Analysis Plan
|
||||
- Mobile vs. desktop
|
||||
- New vs. returning visitors
|
||||
- Traffic source
|
||||
- [Other relevant segments]
|
||||
|
||||
## Success Criteria
|
||||
- Winner: [Primary metric improves by X% with 95% confidence]
|
||||
- Loser: [Primary metric decreases significantly]
|
||||
- Inconclusive: [What we'll do if no significant result]
|
||||
|
||||
## Pre-Launch Checklist
|
||||
- [ ] Hypothesis documented and reviewed
|
||||
- [ ] Primary metric defined and trackable
|
||||
- [ ] Sample size calculated
|
||||
- [ ] Test duration estimated
|
||||
- [ ] Variants implemented correctly
|
||||
- [ ] Tracking verified in all variants
|
||||
- [ ] QA completed on all variants
|
||||
- [ ] Stakeholders informed
|
||||
- [ ] Calendar hold for analysis date
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Results Documentation Template
|
||||
|
||||
```markdown
|
||||
# A/B Test Results: [Name]
|
||||
|
||||
## Summary
|
||||
| Element | Value |
|
||||
|---------|-------|
|
||||
| Test ID | [ID] |
|
||||
| Dates | [Start] - [End] |
|
||||
| Duration | X days |
|
||||
| Result | Winner / Loser / Inconclusive |
|
||||
| Decision | [What we're doing] |
|
||||
|
||||
## Hypothesis (Reminder)
|
||||
[Copy from test plan]
|
||||
|
||||
## Results
|
||||
|
||||
### Sample Size
|
||||
| Variant | Target | Actual | % of target |
|
||||
|---------|--------|--------|-------------|
|
||||
| Control | X | Y | Z% |
|
||||
| Variant | X | Y | Z% |
|
||||
|
||||
### Primary Metric: [Metric Name]
|
||||
| Variant | Value | 95% CI | vs. Control |
|
||||
|---------|-------|--------|-------------|
|
||||
| Control | X% | [X%, Y%] | — |
|
||||
| Variant | X% | [X%, Y%] | +X% |
|
||||
|
||||
**Statistical significance**: p = X.XX (95% = sig / not sig)
|
||||
**Practical significance**: [Is this lift meaningful for the business?]
|
||||
|
||||
### Secondary Metrics
|
||||
|
||||
| Metric | Control | Variant | Change | Significant? |
|
||||
|--------|---------|---------|--------|--------------|
|
||||
| [Metric 1] | X | Y | +Z% | Yes/No |
|
||||
| [Metric 2] | X | Y | +Z% | Yes/No |
|
||||
|
||||
### Guardrail Metrics
|
||||
|
||||
| Metric | Control | Variant | Change | Concern? |
|
||||
|--------|---------|---------|--------|----------|
|
||||
| [Metric 1] | X | Y | +Z% | Yes/No |
|
||||
|
||||
### Segment Analysis
|
||||
|
||||
**Mobile vs. Desktop**
|
||||
| Segment | Control | Variant | Lift |
|
||||
|---------|---------|---------|------|
|
||||
| Mobile | X% | Y% | +Z% |
|
||||
| Desktop | X% | Y% | +Z% |
|
||||
|
||||
**New vs. Returning**
|
||||
| Segment | Control | Variant | Lift |
|
||||
|---------|---------|---------|------|
|
||||
| New | X% | Y% | +Z% |
|
||||
| Returning | X% | Y% | +Z% |
|
||||
|
||||
## Interpretation
|
||||
|
||||
### What happened?
|
||||
[Explanation of results in plain language]
|
||||
|
||||
### Why do we think this happened?
|
||||
[Analysis and reasoning]
|
||||
|
||||
### Caveats
|
||||
[Any limitations, external factors, or concerns]
|
||||
|
||||
## Decision
|
||||
|
||||
**Winner**: [Control / Variant]
|
||||
|
||||
**Action**: [Implement variant / Keep control / Re-test]
|
||||
|
||||
**Timeline**: [When changes will be implemented]
|
||||
|
||||
## Learnings
|
||||
|
||||
### What we learned
|
||||
- [Key insight 1]
|
||||
- [Key insight 2]
|
||||
|
||||
### What to test next
|
||||
- [Follow-up test idea 1]
|
||||
- [Follow-up test idea 2]
|
||||
|
||||
### Impact
|
||||
- **Projected lift**: [X% improvement in Y metric]
|
||||
- **Business impact**: [Revenue, conversions, etc.]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Test Repository Entry Template
|
||||
|
||||
For tracking all tests in a central location:
|
||||
|
||||
```markdown
|
||||
| Test ID | Name | Page | Dates | Primary Metric | Result | Lift | Link |
|
||||
|---------|------|------|-------|----------------|--------|------|------|
|
||||
| 001 | Hero headline test | Homepage | 1/1-1/15 | CTR | Winner | +12% | [Link] |
|
||||
| 002 | Pricing table layout | Pricing | 1/10-1/31 | Plan selection | Loser | -5% | [Link] |
|
||||
| 003 | Signup form fields | Signup | 2/1-2/14 | Completion | Inconclusive | +2% | [Link] |
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Quick Test Brief Template
|
||||
|
||||
For simple tests that don't need full documentation:
|
||||
|
||||
```markdown
|
||||
## [Test Name]
|
||||
|
||||
**What**: [One sentence description]
|
||||
**Why**: [One sentence hypothesis]
|
||||
**Metric**: [Primary metric]
|
||||
**Duration**: [X weeks]
|
||||
**Result**: [TBD / Winner / Loser / Inconclusive]
|
||||
**Learnings**: [Key takeaway]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Stakeholder Update Template
|
||||
|
||||
```markdown
|
||||
## A/B Test Update: [Name]
|
||||
|
||||
**Status**: Running / Complete
|
||||
**Days remaining**: X (or complete)
|
||||
**Current sample**: X% of target
|
||||
|
||||
### Preliminary observations
|
||||
[What we're seeing - without making decisions yet]
|
||||
|
||||
### Next steps
|
||||
[What happens next]
|
||||
|
||||
### Timeline
|
||||
- [Date]: Analysis complete
|
||||
- [Date]: Decision and recommendation
|
||||
- [Date]: Implementation (if winner)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Experiment Prioritization Scorecard
|
||||
|
||||
For deciding which tests to run:
|
||||
|
||||
| Factor | Weight | Test A | Test B | Test C |
|
||||
|--------|--------|--------|--------|--------|
|
||||
| Potential impact | 30% | | | |
|
||||
| Confidence in hypothesis | 25% | | | |
|
||||
| Ease of implementation | 20% | | | |
|
||||
| Risk if wrong | 15% | | | |
|
||||
| Strategic alignment | 10% | | | |
|
||||
| **Total** | | | | |
|
||||
|
||||
Scoring: 1-5 (5 = best)
|
||||
|
||||
---
|
||||
|
||||
## Hypothesis Bank Template
|
||||
|
||||
For collecting test ideas:
|
||||
|
||||
```markdown
|
||||
| ID | Page/Area | Observation | Hypothesis | Potential Impact | Status |
|
||||
|----|-----------|-------------|------------|------------------|--------|
|
||||
| H1 | Homepage | Low scroll depth | Shorter hero will increase scroll | High | Testing |
|
||||
| H2 | Pricing | Users compare plans | Comparison table will help | Medium | Backlog |
|
||||
| H3 | Signup | Drop-off at email | Social login will increase completion | Medium | Backlog |
|
||||
```
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: analytics-tracking
|
||||
version: 1.0.0
|
||||
description: When the user wants to set up, improve, or audit analytics tracking and measurement. Also use when the user mentions "set up tracking," "GA4," "Google Analytics," "conversion tracking," "event tracking," "UTM parameters," "tag manager," "GTM," "analytics implementation," or "tracking plan." For A/B test measurement, see ab-test-setup.
|
||||
---
|
||||
|
||||
@@ -9,22 +10,14 @@ You are an expert in analytics implementation and measurement. Your goal is to h
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before implementing tracking, understand:
|
||||
|
||||
1. **Business Context**
|
||||
- What decisions will this data inform?
|
||||
- What are the key conversion actions?
|
||||
- What questions need answering?
|
||||
|
||||
2. **Current State**
|
||||
- What tracking exists?
|
||||
- What tools are in use (GA4, Mixpanel, Amplitude, etc.)?
|
||||
- What's working/not working?
|
||||
|
||||
3. **Technical Context**
|
||||
- What's the tech stack?
|
||||
- Who will implement and maintain?
|
||||
- Any privacy/compliance requirements?
|
||||
1. **Business Context** - What decisions will this data inform? What are key conversions?
|
||||
2. **Current State** - What tracking exists? What tools are in use?
|
||||
3. **Technical Context** - What's the tech stack? Any privacy/compliance requirements?
|
||||
|
||||
---
|
||||
|
||||
@@ -57,63 +50,36 @@ Before implementing tracking, understand:
|
||||
### Structure
|
||||
|
||||
```
|
||||
Event Name | Event Category | Properties | Trigger | Notes
|
||||
---------- | ------------- | ---------- | ------- | -----
|
||||
Event Name | Category | Properties | Trigger | Notes
|
||||
---------- | -------- | ---------- | ------- | -----
|
||||
```
|
||||
|
||||
### Event Types
|
||||
|
||||
**Pageviews**
|
||||
- Automatic in most tools
|
||||
- Enhanced with page metadata
|
||||
| Type | Examples |
|
||||
|------|----------|
|
||||
| Pageviews | Automatic, enhanced with metadata |
|
||||
| User Actions | Button clicks, form submissions, feature usage |
|
||||
| System Events | Signup completed, purchase, subscription changed |
|
||||
| Custom Conversions | Goal completions, funnel stages |
|
||||
|
||||
**User Actions**
|
||||
- Button clicks
|
||||
- Form submissions
|
||||
- Feature usage
|
||||
- Content interactions
|
||||
|
||||
**System Events**
|
||||
- Signup completed
|
||||
- Purchase completed
|
||||
- Subscription changed
|
||||
- Errors occurred
|
||||
|
||||
**Custom Conversions**
|
||||
- Goal completions
|
||||
- Funnel stages
|
||||
- Business-specific milestones
|
||||
**For comprehensive event lists**: See [references/event-library.md](references/event-library.md)
|
||||
|
||||
---
|
||||
|
||||
## Event Naming Conventions
|
||||
|
||||
### Format Options
|
||||
### Recommended Format: Object-Action
|
||||
|
||||
**Object-Action (Recommended)**
|
||||
```
|
||||
signup_completed
|
||||
button_clicked
|
||||
form_submitted
|
||||
article_read
|
||||
```
|
||||
|
||||
**Action-Object**
|
||||
```
|
||||
click_button
|
||||
submit_form
|
||||
complete_signup
|
||||
```
|
||||
|
||||
**Category_Object_Action**
|
||||
```
|
||||
checkout_payment_completed
|
||||
blog_article_viewed
|
||||
onboarding_step_completed
|
||||
```
|
||||
|
||||
### Best Practices
|
||||
|
||||
- Lowercase with underscores
|
||||
- Be specific: `cta_hero_clicked` vs. `button_clicked`
|
||||
- Include context in properties, not event name
|
||||
@@ -122,235 +88,94 @@ onboarding_step_completed
|
||||
|
||||
---
|
||||
|
||||
## Essential Events to Track
|
||||
## Essential Events
|
||||
|
||||
### Marketing Site
|
||||
|
||||
**Navigation**
|
||||
- page_view (enhanced)
|
||||
- outbound_link_clicked
|
||||
- scroll_depth (25%, 50%, 75%, 100%)
|
||||
|
||||
**Engagement**
|
||||
- cta_clicked (button_text, location)
|
||||
- video_played (video_id, duration)
|
||||
- form_started
|
||||
- form_submitted (form_type)
|
||||
- resource_downloaded (resource_name)
|
||||
|
||||
**Conversion**
|
||||
- signup_started
|
||||
- signup_completed
|
||||
- demo_requested
|
||||
- contact_submitted
|
||||
| Event | Properties |
|
||||
|-------|------------|
|
||||
| cta_clicked | button_text, location |
|
||||
| form_submitted | form_type |
|
||||
| signup_completed | method, source |
|
||||
| demo_requested | - |
|
||||
|
||||
### Product/App
|
||||
|
||||
**Onboarding**
|
||||
- signup_completed
|
||||
- onboarding_step_completed (step_number, step_name)
|
||||
- onboarding_completed
|
||||
- first_key_action_completed
|
||||
| Event | Properties |
|
||||
|-------|------------|
|
||||
| onboarding_step_completed | step_number, step_name |
|
||||
| feature_used | feature_name |
|
||||
| purchase_completed | plan, value |
|
||||
| subscription_cancelled | reason |
|
||||
|
||||
**Core Usage**
|
||||
- feature_used (feature_name)
|
||||
- action_completed (action_type)
|
||||
- session_started
|
||||
- session_ended
|
||||
|
||||
**Monetization**
|
||||
- trial_started
|
||||
- pricing_viewed
|
||||
- checkout_started
|
||||
- purchase_completed (plan, value)
|
||||
- subscription_cancelled
|
||||
|
||||
### E-commerce
|
||||
|
||||
**Browsing**
|
||||
- product_viewed (product_id, category, price)
|
||||
- product_list_viewed (list_name, products)
|
||||
- product_searched (query, results_count)
|
||||
|
||||
**Cart**
|
||||
- product_added_to_cart
|
||||
- product_removed_from_cart
|
||||
- cart_viewed
|
||||
|
||||
**Checkout**
|
||||
- checkout_started
|
||||
- checkout_step_completed (step)
|
||||
- payment_info_entered
|
||||
- purchase_completed (order_id, value, products)
|
||||
**For full event library by business type**: See [references/event-library.md](references/event-library.md)
|
||||
|
||||
---
|
||||
|
||||
## Event Properties (Parameters)
|
||||
## Event Properties
|
||||
|
||||
### Standard Properties to Consider
|
||||
### Standard Properties
|
||||
|
||||
**Page/Screen**
|
||||
- page_title
|
||||
- page_location (URL)
|
||||
- page_referrer
|
||||
- content_group
|
||||
|
||||
**User**
|
||||
- user_id (if logged in)
|
||||
- user_type (free, paid, admin)
|
||||
- account_id (B2B)
|
||||
- plan_type
|
||||
|
||||
**Campaign**
|
||||
- source
|
||||
- medium
|
||||
- campaign
|
||||
- content
|
||||
- term
|
||||
|
||||
**Product** (e-commerce)
|
||||
- product_id
|
||||
- product_name
|
||||
- category
|
||||
- price
|
||||
- quantity
|
||||
- currency
|
||||
|
||||
**Timing**
|
||||
- timestamp
|
||||
- session_duration
|
||||
- time_on_page
|
||||
| Category | Properties |
|
||||
|----------|------------|
|
||||
| Page | page_title, page_location, page_referrer |
|
||||
| User | user_id, user_type, account_id, plan_type |
|
||||
| Campaign | source, medium, campaign, content, term |
|
||||
| Product | product_id, product_name, category, price |
|
||||
|
||||
### Best Practices
|
||||
|
||||
- Use consistent property names
|
||||
- Include relevant context
|
||||
- Don't duplicate GA4 automatic properties
|
||||
- Don't duplicate automatic properties
|
||||
- Avoid PII in properties
|
||||
- Document expected values
|
||||
|
||||
---
|
||||
|
||||
## GA4 Implementation
|
||||
|
||||
### Configuration
|
||||
### Quick Setup
|
||||
|
||||
**Data Streams**
|
||||
- One stream per platform (web, iOS, Android)
|
||||
- Enable enhanced measurement
|
||||
1. Create GA4 property and data stream
|
||||
2. Install gtag.js or GTM
|
||||
3. Enable enhanced measurement
|
||||
4. Configure custom events
|
||||
5. Mark conversions in Admin
|
||||
|
||||
**Enhanced Measurement Events**
|
||||
- page_view (automatic)
|
||||
- scroll (90% depth)
|
||||
- outbound_click
|
||||
- site_search
|
||||
- video_engagement
|
||||
- file_download
|
||||
|
||||
**Recommended Events**
|
||||
- Use Google's predefined events when possible
|
||||
- Correct naming for enhanced reporting
|
||||
- See: https://support.google.com/analytics/answer/9267735
|
||||
|
||||
### Custom Events (GA4)
|
||||
### Custom Event Example
|
||||
|
||||
```javascript
|
||||
// gtag.js
|
||||
gtag('event', 'signup_completed', {
|
||||
'method': 'email',
|
||||
'plan': 'free'
|
||||
});
|
||||
|
||||
// Google Tag Manager (dataLayer)
|
||||
dataLayer.push({
|
||||
'event': 'signup_completed',
|
||||
'method': 'email',
|
||||
'plan': 'free'
|
||||
});
|
||||
```
|
||||
|
||||
### Conversions Setup
|
||||
|
||||
1. Collect event in GA4
|
||||
2. Mark as conversion in Admin > Events
|
||||
3. Set conversion counting (once per session or every time)
|
||||
4. Import to Google Ads if needed
|
||||
|
||||
### Custom Dimensions and Metrics
|
||||
|
||||
**When to use:**
|
||||
- Properties you want to segment by
|
||||
- Metrics you want to aggregate
|
||||
- Beyond standard parameters
|
||||
|
||||
**Setup:**
|
||||
1. Create in Admin > Custom definitions
|
||||
2. Scope: Event, User, or Item
|
||||
3. Parameter name must match
|
||||
**For detailed GA4 implementation**: See [references/ga4-implementation.md](references/ga4-implementation.md)
|
||||
|
||||
---
|
||||
|
||||
## Google Tag Manager Implementation
|
||||
## Google Tag Manager
|
||||
|
||||
### Container Structure
|
||||
|
||||
**Tags**
|
||||
- GA4 Configuration (base)
|
||||
- GA4 Event tags (one per event or grouped)
|
||||
- Conversion pixels (Facebook, LinkedIn, etc.)
|
||||
|
||||
**Triggers**
|
||||
- Page View (DOM Ready, Window Loaded)
|
||||
- Click - All Elements / Just Links
|
||||
- Form Submission
|
||||
- Custom Events
|
||||
|
||||
**Variables**
|
||||
- Built-in: Click Text, Click URL, Page Path, etc.
|
||||
- Data Layer variables
|
||||
- JavaScript variables
|
||||
- Lookup tables
|
||||
|
||||
### Best Practices
|
||||
|
||||
- Use folders to organize
|
||||
- Consistent naming (Tag_Type_Description)
|
||||
- Version notes on every publish
|
||||
- Preview mode for testing
|
||||
- Workspaces for team collaboration
|
||||
| Component | Purpose |
|
||||
|-----------|---------|
|
||||
| Tags | Code that executes (GA4, pixels) |
|
||||
| Triggers | When tags fire (page view, click) |
|
||||
| Variables | Dynamic values (click text, data layer) |
|
||||
|
||||
### Data Layer Pattern
|
||||
|
||||
```javascript
|
||||
// Push custom event
|
||||
dataLayer.push({
|
||||
'event': 'form_submitted',
|
||||
'form_name': 'contact',
|
||||
'form_location': 'footer'
|
||||
});
|
||||
|
||||
// Set user properties
|
||||
dataLayer.push({
|
||||
'user_id': '12345',
|
||||
'user_type': 'premium'
|
||||
});
|
||||
|
||||
// E-commerce event
|
||||
dataLayer.push({
|
||||
'event': 'purchase',
|
||||
'ecommerce': {
|
||||
'transaction_id': 'T12345',
|
||||
'value': 99.99,
|
||||
'currency': 'USD',
|
||||
'items': [{
|
||||
'item_id': 'SKU123',
|
||||
'item_name': 'Product Name',
|
||||
'price': 99.99
|
||||
}]
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
**For detailed GTM implementation**: See [references/gtm-implementation.md](references/gtm-implementation.md)
|
||||
|
||||
---
|
||||
|
||||
## UTM Parameter Strategy
|
||||
@@ -359,40 +184,17 @@ dataLayer.push({
|
||||
|
||||
| Parameter | Purpose | Example |
|
||||
|-----------|---------|---------|
|
||||
| utm_source | Where traffic comes from | google, facebook, newsletter |
|
||||
| utm_medium | Marketing medium | cpc, email, social, referral |
|
||||
| utm_campaign | Campaign name | spring_sale, product_launch |
|
||||
| utm_content | Differentiate versions | hero_cta, sidebar_link |
|
||||
| utm_source | Traffic source | google, newsletter |
|
||||
| utm_medium | Marketing medium | cpc, email, social |
|
||||
| utm_campaign | Campaign name | spring_sale |
|
||||
| utm_content | Differentiate versions | hero_cta |
|
||||
| utm_term | Paid search keywords | running+shoes |
|
||||
|
||||
### Naming Conventions
|
||||
|
||||
**Lowercase everything**
|
||||
- google, not Google
|
||||
- email, not Email
|
||||
|
||||
**Use underscores or hyphens consistently**
|
||||
- product_launch or product-launch
|
||||
- Pick one, stick with it
|
||||
|
||||
**Be specific but concise**
|
||||
- blog_footer_cta, not cta1
|
||||
- 2024_q1_promo, not promo
|
||||
|
||||
### UTM Documentation
|
||||
|
||||
Track all UTMs in a spreadsheet or tool:
|
||||
|
||||
| Campaign | Source | Medium | Content | Full URL | Owner | Date |
|
||||
|----------|--------|--------|---------|----------|-------|------|
|
||||
| ... | ... | ... | ... | ... | ... | ... |
|
||||
|
||||
### UTM Builder
|
||||
|
||||
Provide a consistent UTM builder link to team:
|
||||
- Google's URL builder
|
||||
- Internal tool
|
||||
- Spreadsheet formula
|
||||
- Lowercase everything
|
||||
- Use underscores or hyphens consistently
|
||||
- Be specific but concise: `blog_footer_cta`, not `cta1`
|
||||
- Document all UTMs in a spreadsheet
|
||||
|
||||
---
|
||||
|
||||
@@ -400,72 +202,44 @@ Provide a consistent UTM builder link to team:
|
||||
|
||||
### Testing Tools
|
||||
|
||||
**GA4 DebugView**
|
||||
- Real-time event monitoring
|
||||
- Enable with ?debug_mode=true
|
||||
- Or via Chrome extension
|
||||
|
||||
**GTM Preview Mode**
|
||||
- Test triggers and tags
|
||||
- See data layer state
|
||||
- Validate before publish
|
||||
|
||||
**Browser Extensions**
|
||||
- GA Debugger
|
||||
- Tag Assistant
|
||||
- dataLayer Inspector
|
||||
| Tool | Use For |
|
||||
|------|---------|
|
||||
| GA4 DebugView | Real-time event monitoring |
|
||||
| GTM Preview Mode | Test triggers before publish |
|
||||
| Browser Extensions | Tag Assistant, dataLayer Inspector |
|
||||
|
||||
### Validation Checklist
|
||||
|
||||
- [ ] Events firing on correct triggers
|
||||
- [ ] Property values populating correctly
|
||||
- [ ] No duplicate events
|
||||
- [ ] Works across browsers
|
||||
- [ ] Works on mobile
|
||||
- [ ] Works across browsers and mobile
|
||||
- [ ] Conversions recorded correctly
|
||||
- [ ] User ID passing when logged in
|
||||
- [ ] No PII leaking
|
||||
|
||||
### Common Issues
|
||||
|
||||
**Events not firing**
|
||||
- Trigger misconfigured
|
||||
- Tag paused
|
||||
- GTM not loaded on page
|
||||
|
||||
**Wrong values**
|
||||
- Variable not configured
|
||||
- Data layer not pushing correctly
|
||||
- Timing issues (fire before data ready)
|
||||
|
||||
**Duplicate events**
|
||||
- Multiple GTM containers
|
||||
- Multiple tag instances
|
||||
- Trigger firing multiple times
|
||||
| Issue | Check |
|
||||
|-------|-------|
|
||||
| Events not firing | Trigger config, GTM loaded |
|
||||
| Wrong values | Variable path, data layer structure |
|
||||
| Duplicate events | Multiple containers, trigger firing twice |
|
||||
|
||||
---
|
||||
|
||||
## Privacy and Compliance
|
||||
|
||||
### Considerations
|
||||
|
||||
- Cookie consent required in EU/UK/CA
|
||||
- No PII in analytics properties
|
||||
- Data retention settings
|
||||
- User deletion capabilities
|
||||
- Cross-device tracking consent
|
||||
|
||||
### Implementation
|
||||
|
||||
**Consent Mode (GA4)**
|
||||
- Wait for consent before tracking
|
||||
- Use consent mode for partial tracking
|
||||
- Integrate with consent management platform
|
||||
|
||||
**Data Minimization**
|
||||
- Only collect what you need
|
||||
- Use consent mode (wait for consent)
|
||||
- IP anonymization
|
||||
- No PII in custom dimensions
|
||||
- Only collect what you need
|
||||
- Integrate with consent management platform
|
||||
|
||||
---
|
||||
|
||||
@@ -473,56 +247,36 @@ Provide a consistent UTM builder link to team:
|
||||
|
||||
### Tracking Plan Document
|
||||
|
||||
```
|
||||
```markdown
|
||||
# [Site/Product] Tracking Plan
|
||||
|
||||
## Overview
|
||||
- Tools: GA4, GTM
|
||||
- Last updated: [Date]
|
||||
- Owner: [Name]
|
||||
|
||||
## Events
|
||||
|
||||
### Marketing Events
|
||||
|
||||
| Event Name | Description | Properties | Trigger |
|
||||
|------------|-------------|------------|---------|
|
||||
| signup_started | User initiates signup | source, page | Click signup CTA |
|
||||
| signup_completed | User completes signup | method, plan | Signup success page |
|
||||
|
||||
### Product Events
|
||||
[Similar table]
|
||||
| signup_completed | User completes signup | method, plan | Success page |
|
||||
|
||||
## Custom Dimensions
|
||||
|
||||
| Name | Scope | Parameter | Description |
|
||||
|------|-------|-----------|-------------|
|
||||
| user_type | User | user_type | Free, trial, paid |
|
||||
| Name | Scope | Parameter |
|
||||
|------|-------|-----------|
|
||||
| user_type | User | user_type |
|
||||
|
||||
## Conversions
|
||||
|
||||
| Conversion | Event | Counting | Google Ads |
|
||||
|------------|-------|----------|------------|
|
||||
| Signup | signup_completed | Once per session | Yes |
|
||||
|
||||
## UTM Convention
|
||||
|
||||
[Guidelines]
|
||||
| Conversion | Event | Counting |
|
||||
|------------|-------|----------|
|
||||
| Signup | signup_completed | Once per session |
|
||||
```
|
||||
|
||||
### Implementation Code
|
||||
|
||||
Provide ready-to-use code snippets
|
||||
|
||||
### Testing Checklist
|
||||
|
||||
Specific validation steps
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What tools are you using (GA4, Mixpanel, etc.)?
|
||||
2. What key actions do you want to track?
|
||||
3. What decisions will this data inform?
|
||||
@@ -532,6 +286,20 @@ If you need more context:
|
||||
|
||||
---
|
||||
|
||||
## Tool Integrations
|
||||
|
||||
For implementation, see the [tools registry](../../tools/REGISTRY.md). Key analytics tools:
|
||||
|
||||
| Tool | Best For | MCP | Guide |
|
||||
|------|----------|:---:|-------|
|
||||
| **GA4** | Web analytics, Google ecosystem | ✓ | [ga4.md](../../tools/integrations/ga4.md) |
|
||||
| **Mixpanel** | Product analytics, event tracking | - | [mixpanel.md](../../tools/integrations/mixpanel.md) |
|
||||
| **Amplitude** | Product analytics, cohort analysis | - | [amplitude.md](../../tools/integrations/amplitude.md) |
|
||||
| **PostHog** | Open-source analytics, session replay | - | [posthog.md](../../tools/integrations/posthog.md) |
|
||||
| **Segment** | Customer data platform, routing | - | [segment.md](../../tools/integrations/segment.md) |
|
||||
|
||||
---
|
||||
|
||||
## Related Skills
|
||||
|
||||
- **ab-test-setup**: For experiment tracking
|
||||
|
||||
251
skills/analytics-tracking/references/event-library.md
Normal file
251
skills/analytics-tracking/references/event-library.md
Normal file
@@ -0,0 +1,251 @@
|
||||
# Event Library Reference
|
||||
|
||||
Comprehensive list of events to track by business type and context.
|
||||
|
||||
## Marketing Site Events
|
||||
|
||||
### Navigation & Engagement
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| page_view | Page loaded (enhanced) | page_title, page_location, content_group |
|
||||
| scroll_depth | User scrolled to threshold | depth (25, 50, 75, 100) |
|
||||
| outbound_link_clicked | Click to external site | link_url, link_text |
|
||||
| internal_link_clicked | Click within site | link_url, link_text, location |
|
||||
| video_played | Video started | video_id, video_title, duration |
|
||||
| video_completed | Video finished | video_id, video_title, duration |
|
||||
|
||||
### CTA & Form Interactions
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| cta_clicked | Call to action clicked | button_text, cta_location, page |
|
||||
| form_started | User began form | form_name, form_location |
|
||||
| form_field_completed | Field filled | form_name, field_name |
|
||||
| form_submitted | Form successfully sent | form_name, form_location |
|
||||
| form_error | Form validation failed | form_name, error_type |
|
||||
| resource_downloaded | Asset downloaded | resource_name, resource_type |
|
||||
|
||||
### Conversion Events
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| signup_started | Initiated signup | source, page |
|
||||
| signup_completed | Finished signup | method, plan, source |
|
||||
| demo_requested | Demo form submitted | company_size, industry |
|
||||
| contact_submitted | Contact form sent | inquiry_type |
|
||||
| newsletter_subscribed | Email list signup | source, list_name |
|
||||
| trial_started | Free trial began | plan, source |
|
||||
|
||||
---
|
||||
|
||||
## Product/App Events
|
||||
|
||||
### Onboarding
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| signup_completed | Account created | method, referral_source |
|
||||
| onboarding_started | Began onboarding | - |
|
||||
| onboarding_step_completed | Step finished | step_number, step_name |
|
||||
| onboarding_completed | All steps done | steps_completed, time_to_complete |
|
||||
| onboarding_skipped | User skipped onboarding | step_skipped_at |
|
||||
| first_key_action_completed | Aha moment reached | action_type |
|
||||
|
||||
### Core Usage
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| session_started | App session began | session_number |
|
||||
| feature_used | Feature interaction | feature_name, feature_category |
|
||||
| action_completed | Core action done | action_type, count |
|
||||
| content_created | User created content | content_type |
|
||||
| content_edited | User modified content | content_type |
|
||||
| content_deleted | User removed content | content_type |
|
||||
| search_performed | In-app search | query, results_count |
|
||||
| settings_changed | Settings modified | setting_name, new_value |
|
||||
| invite_sent | User invited others | invite_type, count |
|
||||
|
||||
### Errors & Support
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| error_occurred | Error experienced | error_type, error_message, page |
|
||||
| help_opened | Help accessed | help_type, page |
|
||||
| support_contacted | Support request made | contact_method, issue_type |
|
||||
| feedback_submitted | User feedback given | feedback_type, rating |
|
||||
|
||||
---
|
||||
|
||||
## Monetization Events
|
||||
|
||||
### Pricing & Checkout
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| pricing_viewed | Pricing page seen | source |
|
||||
| plan_selected | Plan chosen | plan_name, billing_cycle |
|
||||
| checkout_started | Began checkout | plan, value |
|
||||
| payment_info_entered | Payment submitted | payment_method |
|
||||
| purchase_completed | Purchase successful | plan, value, currency, transaction_id |
|
||||
| purchase_failed | Purchase failed | error_reason, plan |
|
||||
|
||||
### Subscription Management
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| trial_started | Trial began | plan, trial_length |
|
||||
| trial_ended | Trial expired | plan, converted (bool) |
|
||||
| subscription_upgraded | Plan upgraded | from_plan, to_plan, value |
|
||||
| subscription_downgraded | Plan downgraded | from_plan, to_plan |
|
||||
| subscription_cancelled | Cancelled | plan, reason, tenure |
|
||||
| subscription_renewed | Renewed | plan, value |
|
||||
| billing_updated | Payment method changed | - |
|
||||
|
||||
---
|
||||
|
||||
## E-commerce Events
|
||||
|
||||
### Browsing
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| product_viewed | Product page viewed | product_id, product_name, category, price |
|
||||
| product_list_viewed | Category/list viewed | list_name, products[] |
|
||||
| product_searched | Search performed | query, results_count |
|
||||
| product_filtered | Filters applied | filter_type, filter_value |
|
||||
| product_sorted | Sort applied | sort_by, sort_order |
|
||||
|
||||
### Cart
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| product_added_to_cart | Item added | product_id, product_name, price, quantity |
|
||||
| product_removed_from_cart | Item removed | product_id, product_name, price, quantity |
|
||||
| cart_viewed | Cart page viewed | cart_value, items_count |
|
||||
|
||||
### Checkout
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| checkout_started | Checkout began | cart_value, items_count |
|
||||
| checkout_step_completed | Step finished | step_number, step_name |
|
||||
| shipping_info_entered | Address entered | shipping_method |
|
||||
| payment_info_entered | Payment entered | payment_method |
|
||||
| coupon_applied | Coupon used | coupon_code, discount_value |
|
||||
| purchase_completed | Order placed | transaction_id, value, currency, items[] |
|
||||
|
||||
### Post-Purchase
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| order_confirmed | Confirmation viewed | transaction_id |
|
||||
| refund_requested | Refund initiated | transaction_id, reason |
|
||||
| refund_completed | Refund processed | transaction_id, value |
|
||||
| review_submitted | Product reviewed | product_id, rating |
|
||||
|
||||
---
|
||||
|
||||
## B2B / SaaS Specific Events
|
||||
|
||||
### Team & Collaboration
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| team_created | New team/org made | team_size, plan |
|
||||
| team_member_invited | Invite sent | role, invite_method |
|
||||
| team_member_joined | Member accepted | role |
|
||||
| team_member_removed | Member removed | role |
|
||||
| role_changed | Permissions updated | user_id, old_role, new_role |
|
||||
|
||||
### Integration Events
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| integration_viewed | Integration page seen | integration_name |
|
||||
| integration_started | Setup began | integration_name |
|
||||
| integration_connected | Successfully connected | integration_name |
|
||||
| integration_disconnected | Removed integration | integration_name, reason |
|
||||
|
||||
### Account Events
|
||||
|
||||
| Event Name | Description | Properties |
|
||||
|------------|-------------|------------|
|
||||
| account_created | New account | source, plan |
|
||||
| account_upgraded | Plan upgrade | from_plan, to_plan |
|
||||
| account_churned | Account closed | reason, tenure, mrr_lost |
|
||||
| account_reactivated | Returned customer | previous_tenure, new_plan |
|
||||
|
||||
---
|
||||
|
||||
## Event Properties (Parameters)
|
||||
|
||||
### Standard Properties to Include
|
||||
|
||||
**User Context:**
|
||||
```
|
||||
user_id: "12345"
|
||||
user_type: "free" | "trial" | "paid"
|
||||
account_id: "acct_123"
|
||||
plan_type: "starter" | "pro" | "enterprise"
|
||||
```
|
||||
|
||||
**Session Context:**
|
||||
```
|
||||
session_id: "sess_abc"
|
||||
session_number: 5
|
||||
page: "/pricing"
|
||||
referrer: "https://google.com"
|
||||
```
|
||||
|
||||
**Campaign Context:**
|
||||
```
|
||||
source: "google"
|
||||
medium: "cpc"
|
||||
campaign: "spring_sale"
|
||||
content: "hero_cta"
|
||||
```
|
||||
|
||||
**Product Context (E-commerce):**
|
||||
```
|
||||
product_id: "SKU123"
|
||||
product_name: "Product Name"
|
||||
category: "Category"
|
||||
price: 99.99
|
||||
quantity: 1
|
||||
currency: "USD"
|
||||
```
|
||||
|
||||
**Timing:**
|
||||
```
|
||||
timestamp: "2024-01-15T10:30:00Z"
|
||||
time_on_page: 45
|
||||
session_duration: 300
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Funnel Event Sequences
|
||||
|
||||
### Signup Funnel
|
||||
1. signup_started
|
||||
2. signup_step_completed (email)
|
||||
3. signup_step_completed (password)
|
||||
4. signup_completed
|
||||
5. onboarding_started
|
||||
|
||||
### Purchase Funnel
|
||||
1. pricing_viewed
|
||||
2. plan_selected
|
||||
3. checkout_started
|
||||
4. payment_info_entered
|
||||
5. purchase_completed
|
||||
|
||||
### E-commerce Funnel
|
||||
1. product_viewed
|
||||
2. product_added_to_cart
|
||||
3. cart_viewed
|
||||
4. checkout_started
|
||||
5. shipping_info_entered
|
||||
6. payment_info_entered
|
||||
7. purchase_completed
|
||||
290
skills/analytics-tracking/references/ga4-implementation.md
Normal file
290
skills/analytics-tracking/references/ga4-implementation.md
Normal file
@@ -0,0 +1,290 @@
|
||||
# GA4 Implementation Reference
|
||||
|
||||
Detailed implementation guide for Google Analytics 4.
|
||||
|
||||
## Configuration
|
||||
|
||||
### Data Streams
|
||||
|
||||
- One stream per platform (web, iOS, Android)
|
||||
- Enable enhanced measurement for automatic tracking
|
||||
- Configure data retention (2 months default, 14 months max)
|
||||
- Enable Google Signals (for cross-device, if consented)
|
||||
|
||||
### Enhanced Measurement Events (Automatic)
|
||||
|
||||
| Event | Description | Configuration |
|
||||
|-------|-------------|---------------|
|
||||
| page_view | Page loads | Automatic |
|
||||
| scroll | 90% scroll depth | Toggle on/off |
|
||||
| outbound_click | Click to external domain | Automatic |
|
||||
| site_search | Search query used | Configure parameter |
|
||||
| video_engagement | YouTube video plays | Toggle on/off |
|
||||
| file_download | PDF, docs, etc. | Configurable extensions |
|
||||
|
||||
### Recommended Events
|
||||
|
||||
Use Google's predefined events when possible for enhanced reporting:
|
||||
|
||||
**All properties:**
|
||||
- login, sign_up
|
||||
- share
|
||||
- search
|
||||
|
||||
**E-commerce:**
|
||||
- view_item, view_item_list
|
||||
- add_to_cart, remove_from_cart
|
||||
- begin_checkout
|
||||
- add_payment_info
|
||||
- purchase, refund
|
||||
|
||||
**Games:**
|
||||
- level_up, unlock_achievement
|
||||
- post_score, spend_virtual_currency
|
||||
|
||||
Reference: https://support.google.com/analytics/answer/9267735
|
||||
|
||||
---
|
||||
|
||||
## Custom Events
|
||||
|
||||
### gtag.js Implementation
|
||||
|
||||
```javascript
|
||||
// Basic event
|
||||
gtag('event', 'signup_completed', {
|
||||
'method': 'email',
|
||||
'plan': 'free'
|
||||
});
|
||||
|
||||
// Event with value
|
||||
gtag('event', 'purchase', {
|
||||
'transaction_id': 'T12345',
|
||||
'value': 99.99,
|
||||
'currency': 'USD',
|
||||
'items': [{
|
||||
'item_id': 'SKU123',
|
||||
'item_name': 'Product Name',
|
||||
'price': 99.99
|
||||
}]
|
||||
});
|
||||
|
||||
// User properties
|
||||
gtag('set', 'user_properties', {
|
||||
'user_type': 'premium',
|
||||
'plan_name': 'pro'
|
||||
});
|
||||
|
||||
// User ID (for logged-in users)
|
||||
gtag('config', 'GA_MEASUREMENT_ID', {
|
||||
'user_id': 'USER_ID'
|
||||
});
|
||||
```
|
||||
|
||||
### Google Tag Manager (dataLayer)
|
||||
|
||||
```javascript
|
||||
// Custom event
|
||||
dataLayer.push({
|
||||
'event': 'signup_completed',
|
||||
'method': 'email',
|
||||
'plan': 'free'
|
||||
});
|
||||
|
||||
// Set user properties
|
||||
dataLayer.push({
|
||||
'user_id': '12345',
|
||||
'user_type': 'premium'
|
||||
});
|
||||
|
||||
// E-commerce purchase
|
||||
dataLayer.push({
|
||||
'event': 'purchase',
|
||||
'ecommerce': {
|
||||
'transaction_id': 'T12345',
|
||||
'value': 99.99,
|
||||
'currency': 'USD',
|
||||
'items': [{
|
||||
'item_id': 'SKU123',
|
||||
'item_name': 'Product Name',
|
||||
'price': 99.99,
|
||||
'quantity': 1
|
||||
}]
|
||||
}
|
||||
});
|
||||
|
||||
// Clear ecommerce before sending (best practice)
|
||||
dataLayer.push({ ecommerce: null });
|
||||
dataLayer.push({
|
||||
'event': 'view_item',
|
||||
'ecommerce': {
|
||||
// ...
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Conversions Setup
|
||||
|
||||
### Creating Conversions
|
||||
|
||||
1. **Collect the event** - Ensure event is firing in GA4
|
||||
2. **Mark as conversion** - Admin > Events > Mark as conversion
|
||||
3. **Set counting method**:
|
||||
- Once per session (leads, signups)
|
||||
- Every event (purchases)
|
||||
4. **Import to Google Ads** - For conversion-optimized bidding
|
||||
|
||||
### Conversion Values
|
||||
|
||||
```javascript
|
||||
// Event with conversion value
|
||||
gtag('event', 'purchase', {
|
||||
'value': 99.99,
|
||||
'currency': 'USD'
|
||||
});
|
||||
```
|
||||
|
||||
Or set default value in GA4 Admin when marking conversion.
|
||||
|
||||
---
|
||||
|
||||
## Custom Dimensions and Metrics
|
||||
|
||||
### When to Use
|
||||
|
||||
**Custom dimensions:**
|
||||
- Properties you want to segment/filter by
|
||||
- User attributes (plan type, industry)
|
||||
- Content attributes (author, category)
|
||||
|
||||
**Custom metrics:**
|
||||
- Numeric values to aggregate
|
||||
- Scores, counts, durations
|
||||
|
||||
### Setup Steps
|
||||
|
||||
1. Admin > Data display > Custom definitions
|
||||
2. Create dimension or metric
|
||||
3. Choose scope:
|
||||
- **Event**: Per event (content_type)
|
||||
- **User**: Per user (account_type)
|
||||
- **Item**: Per product (product_category)
|
||||
4. Enter parameter name (must match event parameter)
|
||||
|
||||
### Examples
|
||||
|
||||
| Dimension | Scope | Parameter | Description |
|
||||
|-----------|-------|-----------|-------------|
|
||||
| User Type | User | user_type | Free, trial, paid |
|
||||
| Content Author | Event | author | Blog post author |
|
||||
| Product Category | Item | item_category | E-commerce category |
|
||||
|
||||
---
|
||||
|
||||
## Audiences
|
||||
|
||||
### Creating Audiences
|
||||
|
||||
Admin > Data display > Audiences
|
||||
|
||||
**Use cases:**
|
||||
- Remarketing audiences (export to Ads)
|
||||
- Segment analysis
|
||||
- Trigger-based events
|
||||
|
||||
### Audience Examples
|
||||
|
||||
**High-intent visitors:**
|
||||
- Viewed pricing page
|
||||
- Did not convert
|
||||
- In last 7 days
|
||||
|
||||
**Engaged users:**
|
||||
- 3+ sessions
|
||||
- Or 5+ minutes total engagement
|
||||
|
||||
**Purchasers:**
|
||||
- Purchase event
|
||||
- For exclusion or lookalike
|
||||
|
||||
---
|
||||
|
||||
## Debugging
|
||||
|
||||
### DebugView
|
||||
|
||||
Enable with:
|
||||
- URL parameter: `?debug_mode=true`
|
||||
- Chrome extension: GA Debugger
|
||||
- gtag: `'debug_mode': true` in config
|
||||
|
||||
View at: Reports > Configure > DebugView
|
||||
|
||||
### Real-Time Reports
|
||||
|
||||
Check events within 30 minutes:
|
||||
Reports > Real-time
|
||||
|
||||
### Common Issues
|
||||
|
||||
**Events not appearing:**
|
||||
- Check DebugView first
|
||||
- Verify gtag/GTM firing
|
||||
- Check filter exclusions
|
||||
|
||||
**Parameter values missing:**
|
||||
- Custom dimension not created
|
||||
- Parameter name mismatch
|
||||
- Data still processing (24-48 hrs)
|
||||
|
||||
**Conversions not recording:**
|
||||
- Event not marked as conversion
|
||||
- Event name doesn't match
|
||||
- Counting method (once vs. every)
|
||||
|
||||
---
|
||||
|
||||
## Data Quality
|
||||
|
||||
### Filters
|
||||
|
||||
Admin > Data streams > [Stream] > Configure tag settings > Define internal traffic
|
||||
|
||||
**Exclude:**
|
||||
- Internal IP addresses
|
||||
- Developer traffic
|
||||
- Testing environments
|
||||
|
||||
### Cross-Domain Tracking
|
||||
|
||||
For multiple domains sharing analytics:
|
||||
|
||||
1. Admin > Data streams > [Stream] > Configure tag settings
|
||||
2. Configure your domains
|
||||
3. List all domains that should share sessions
|
||||
|
||||
### Session Settings
|
||||
|
||||
Admin > Data streams > [Stream] > Configure tag settings
|
||||
|
||||
- Session timeout (default 30 min)
|
||||
- Engaged session duration (10 sec default)
|
||||
|
||||
---
|
||||
|
||||
## Integration with Google Ads
|
||||
|
||||
### Linking
|
||||
|
||||
1. Admin > Product links > Google Ads links
|
||||
2. Enable auto-tagging in Google Ads
|
||||
3. Import conversions in Google Ads
|
||||
|
||||
### Audience Export
|
||||
|
||||
Audiences created in GA4 can be used in Google Ads for:
|
||||
- Remarketing campaigns
|
||||
- Customer match
|
||||
- Similar audiences
|
||||
380
skills/analytics-tracking/references/gtm-implementation.md
Normal file
380
skills/analytics-tracking/references/gtm-implementation.md
Normal file
@@ -0,0 +1,380 @@
|
||||
# Google Tag Manager Implementation Reference
|
||||
|
||||
Detailed guide for implementing tracking via Google Tag Manager.
|
||||
|
||||
## Container Structure
|
||||
|
||||
### Tags
|
||||
|
||||
Tags are code snippets that execute when triggered.
|
||||
|
||||
**Common tag types:**
|
||||
- GA4 Configuration (base setup)
|
||||
- GA4 Event (custom events)
|
||||
- Google Ads Conversion
|
||||
- Facebook Pixel
|
||||
- LinkedIn Insight Tag
|
||||
- Custom HTML (for other pixels)
|
||||
|
||||
### Triggers
|
||||
|
||||
Triggers define when tags fire.
|
||||
|
||||
**Built-in triggers:**
|
||||
- Page View: All Pages, DOM Ready, Window Loaded
|
||||
- Click: All Elements, Just Links
|
||||
- Form Submission
|
||||
- Scroll Depth
|
||||
- Timer
|
||||
- Element Visibility
|
||||
|
||||
**Custom triggers:**
|
||||
- Custom Event (from dataLayer)
|
||||
- Trigger Groups (multiple conditions)
|
||||
|
||||
### Variables
|
||||
|
||||
Variables capture dynamic values.
|
||||
|
||||
**Built-in (enable as needed):**
|
||||
- Click Text, Click URL, Click ID, Click Classes
|
||||
- Page Path, Page URL, Page Hostname
|
||||
- Referrer
|
||||
- Form Element, Form ID
|
||||
|
||||
**User-defined:**
|
||||
- Data Layer variables
|
||||
- JavaScript variables
|
||||
- Lookup tables
|
||||
- RegEx tables
|
||||
- Constants
|
||||
|
||||
---
|
||||
|
||||
## Naming Conventions
|
||||
|
||||
### Recommended Format
|
||||
|
||||
```
|
||||
[Type] - [Description] - [Detail]
|
||||
|
||||
Tags:
|
||||
GA4 - Event - Signup Completed
|
||||
GA4 - Config - Base Configuration
|
||||
FB - Pixel - Page View
|
||||
HTML - LiveChat Widget
|
||||
|
||||
Triggers:
|
||||
Click - CTA Button
|
||||
Submit - Contact Form
|
||||
View - Pricing Page
|
||||
Custom - signup_completed
|
||||
|
||||
Variables:
|
||||
DL - user_id
|
||||
JS - Current Timestamp
|
||||
LT - Campaign Source Map
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Data Layer Patterns
|
||||
|
||||
### Basic Structure
|
||||
|
||||
```javascript
|
||||
// Initialize (in <head> before GTM)
|
||||
window.dataLayer = window.dataLayer || [];
|
||||
|
||||
// Push event
|
||||
dataLayer.push({
|
||||
'event': 'event_name',
|
||||
'property1': 'value1',
|
||||
'property2': 'value2'
|
||||
});
|
||||
```
|
||||
|
||||
### Page Load Data
|
||||
|
||||
```javascript
|
||||
// Set on page load (before GTM container)
|
||||
window.dataLayer = window.dataLayer || [];
|
||||
dataLayer.push({
|
||||
'pageType': 'product',
|
||||
'contentGroup': 'products',
|
||||
'user': {
|
||||
'loggedIn': true,
|
||||
'userId': '12345',
|
||||
'userType': 'premium'
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
### Form Submission
|
||||
|
||||
```javascript
|
||||
document.querySelector('#contact-form').addEventListener('submit', function() {
|
||||
dataLayer.push({
|
||||
'event': 'form_submitted',
|
||||
'formName': 'contact',
|
||||
'formLocation': 'footer'
|
||||
});
|
||||
});
|
||||
```
|
||||
|
||||
### Button Click
|
||||
|
||||
```javascript
|
||||
document.querySelector('.cta-button').addEventListener('click', function() {
|
||||
dataLayer.push({
|
||||
'event': 'cta_clicked',
|
||||
'ctaText': this.innerText,
|
||||
'ctaLocation': 'hero'
|
||||
});
|
||||
});
|
||||
```
|
||||
|
||||
### E-commerce Events
|
||||
|
||||
```javascript
|
||||
// Product view
|
||||
dataLayer.push({ ecommerce: null }); // Clear previous
|
||||
dataLayer.push({
|
||||
'event': 'view_item',
|
||||
'ecommerce': {
|
||||
'items': [{
|
||||
'item_id': 'SKU123',
|
||||
'item_name': 'Product Name',
|
||||
'price': 99.99,
|
||||
'item_category': 'Category',
|
||||
'quantity': 1
|
||||
}]
|
||||
}
|
||||
});
|
||||
|
||||
// Add to cart
|
||||
dataLayer.push({ ecommerce: null });
|
||||
dataLayer.push({
|
||||
'event': 'add_to_cart',
|
||||
'ecommerce': {
|
||||
'items': [{
|
||||
'item_id': 'SKU123',
|
||||
'item_name': 'Product Name',
|
||||
'price': 99.99,
|
||||
'quantity': 1
|
||||
}]
|
||||
}
|
||||
});
|
||||
|
||||
// Purchase
|
||||
dataLayer.push({ ecommerce: null });
|
||||
dataLayer.push({
|
||||
'event': 'purchase',
|
||||
'ecommerce': {
|
||||
'transaction_id': 'T12345',
|
||||
'value': 99.99,
|
||||
'currency': 'USD',
|
||||
'tax': 5.00,
|
||||
'shipping': 10.00,
|
||||
'items': [{
|
||||
'item_id': 'SKU123',
|
||||
'item_name': 'Product Name',
|
||||
'price': 99.99,
|
||||
'quantity': 1
|
||||
}]
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Common Tag Configurations
|
||||
|
||||
### GA4 Configuration Tag
|
||||
|
||||
**Tag Type:** Google Analytics: GA4 Configuration
|
||||
|
||||
**Settings:**
|
||||
- Measurement ID: G-XXXXXXXX
|
||||
- Send page view: Checked (for pageviews)
|
||||
- User Properties: Add any user-level dimensions
|
||||
|
||||
**Trigger:** All Pages
|
||||
|
||||
### GA4 Event Tag
|
||||
|
||||
**Tag Type:** Google Analytics: GA4 Event
|
||||
|
||||
**Settings:**
|
||||
- Configuration Tag: Select your config tag
|
||||
- Event Name: {{DL - event_name}} or hardcode
|
||||
- Event Parameters: Add parameters from dataLayer
|
||||
|
||||
**Trigger:** Custom Event with event name match
|
||||
|
||||
### Facebook Pixel - Base
|
||||
|
||||
**Tag Type:** Custom HTML
|
||||
|
||||
```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>
|
||||
```
|
||||
|
||||
**Trigger:** All Pages
|
||||
|
||||
### Facebook Pixel - Event
|
||||
|
||||
**Tag Type:** Custom HTML
|
||||
|
||||
```html
|
||||
<script>
|
||||
fbq('track', 'Lead', {
|
||||
content_name: '{{DL - form_name}}'
|
||||
});
|
||||
</script>
|
||||
```
|
||||
|
||||
**Trigger:** Custom Event - form_submitted
|
||||
|
||||
---
|
||||
|
||||
## Preview and Debug
|
||||
|
||||
### Preview Mode
|
||||
|
||||
1. Click "Preview" in GTM
|
||||
2. Enter site URL
|
||||
3. GTM debug panel opens at bottom
|
||||
|
||||
**What to check:**
|
||||
- Tags fired on this event
|
||||
- Tags not fired (and why)
|
||||
- Variables and their values
|
||||
- Data layer contents
|
||||
|
||||
### Debug Tips
|
||||
|
||||
**Tag not firing:**
|
||||
- Check trigger conditions
|
||||
- Verify data layer push
|
||||
- Check tag sequencing
|
||||
|
||||
**Wrong variable value:**
|
||||
- Check data layer structure
|
||||
- Verify variable path (nested objects)
|
||||
- Check timing (data may not exist yet)
|
||||
|
||||
**Multiple firings:**
|
||||
- Check trigger uniqueness
|
||||
- Look for duplicate tags
|
||||
- Check tag firing options
|
||||
|
||||
---
|
||||
|
||||
## Workspaces and Versioning
|
||||
|
||||
### Workspaces
|
||||
|
||||
Use workspaces for team collaboration:
|
||||
- Default workspace for production
|
||||
- Separate workspaces for large changes
|
||||
- Merge when ready
|
||||
|
||||
### Version Management
|
||||
|
||||
**Best practices:**
|
||||
- Name every version descriptively
|
||||
- Add notes explaining changes
|
||||
- Review changes before publish
|
||||
- Keep production version noted
|
||||
|
||||
**Version notes example:**
|
||||
```
|
||||
v15: Added purchase conversion tracking
|
||||
- New tag: GA4 - Event - Purchase
|
||||
- New trigger: Custom Event - purchase
|
||||
- New variables: DL - transaction_id, DL - value
|
||||
- Tested: Chrome, Safari, Mobile
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Consent Management
|
||||
|
||||
### Consent Mode Integration
|
||||
|
||||
```javascript
|
||||
// Default state (before consent)
|
||||
gtag('consent', 'default', {
|
||||
'analytics_storage': 'denied',
|
||||
'ad_storage': 'denied'
|
||||
});
|
||||
|
||||
// Update on consent
|
||||
function grantConsent() {
|
||||
gtag('consent', 'update', {
|
||||
'analytics_storage': 'granted',
|
||||
'ad_storage': 'granted'
|
||||
});
|
||||
}
|
||||
```
|
||||
|
||||
### GTM Consent Overview
|
||||
|
||||
1. Enable Consent Overview in Admin
|
||||
2. Configure consent for each tag
|
||||
3. Tags respect consent state automatically
|
||||
|
||||
---
|
||||
|
||||
## Advanced Patterns
|
||||
|
||||
### Tag Sequencing
|
||||
|
||||
**Setup tags to fire in order:**
|
||||
Tag Configuration > Advanced Settings > Tag Sequencing
|
||||
|
||||
**Use cases:**
|
||||
- Config tag before event tags
|
||||
- Pixel initialization before tracking
|
||||
- Cleanup after conversion
|
||||
|
||||
### Exception Handling
|
||||
|
||||
**Trigger exceptions** - Prevent tag from firing:
|
||||
- Exclude certain pages
|
||||
- Exclude internal traffic
|
||||
- Exclude during testing
|
||||
|
||||
### Custom JavaScript Variables
|
||||
|
||||
```javascript
|
||||
// Get URL parameter
|
||||
function() {
|
||||
var params = new URLSearchParams(window.location.search);
|
||||
return params.get('campaign') || '(not set)';
|
||||
}
|
||||
|
||||
// Get cookie value
|
||||
function() {
|
||||
var match = document.cookie.match('(^|;) ?user_id=([^;]*)(;|$)');
|
||||
return match ? match[2] : null;
|
||||
}
|
||||
|
||||
// Get data from page
|
||||
function() {
|
||||
var el = document.querySelector('.product-price');
|
||||
return el ? parseFloat(el.textContent.replace('$', '')) : 0;
|
||||
}
|
||||
```
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: competitor-alternatives
|
||||
version: 1.0.0
|
||||
description: "When the user wants to create competitor comparison or alternative pages for SEO and sales enablement. Also use when the user mentions 'alternative page,' 'vs page,' 'competitor comparison,' 'comparison page,' '[Product] vs [Product],' '[Product] alternative,' or 'competitive landing pages.' Covers four formats: singular alternative, plural alternatives, you vs competitor, and competitor vs competitor. Emphasizes deep research, modular content architecture, and varied section types beyond feature tables."
|
||||
---
|
||||
|
||||
@@ -9,6 +10,9 @@ You are an expert in creating competitor comparison and alternative pages. Your
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before creating competitor pages, understand:
|
||||
|
||||
1. **Your Product**
|
||||
@@ -55,7 +59,6 @@ Before creating competitor pages, understand:
|
||||
### 4. Modular Content Architecture
|
||||
- Competitor data should be centralized
|
||||
- Updates propagate to all pages
|
||||
- Avoid duplicating research
|
||||
- Single source of truth per competitor
|
||||
|
||||
---
|
||||
@@ -68,11 +71,7 @@ Before creating competitor pages, understand:
|
||||
|
||||
**URL pattern**: `/alternatives/[competitor]` or `/[competitor]-alternative`
|
||||
|
||||
**Target keywords**:
|
||||
- "[Competitor] alternative"
|
||||
- "alternative to [Competitor]"
|
||||
- "switch from [Competitor]"
|
||||
- "[Competitor] replacement"
|
||||
**Target keywords**: "[Competitor] alternative", "alternative to [Competitor]", "switch from [Competitor]"
|
||||
|
||||
**Page structure**:
|
||||
1. Why people look for alternatives (validate their pain)
|
||||
@@ -83,21 +82,15 @@ Before creating competitor pages, understand:
|
||||
6. Social proof from switchers
|
||||
7. CTA
|
||||
|
||||
**Tone**: Empathetic to their frustration, helpful guide
|
||||
|
||||
---
|
||||
|
||||
### Format 2: [Competitor] Alternatives (Plural)
|
||||
|
||||
**Search intent**: User is researching options, earlier in journey
|
||||
|
||||
**URL pattern**: `/alternatives/[competitor]-alternatives` or `/best-[competitor]-alternatives`
|
||||
**URL pattern**: `/alternatives/[competitor]-alternatives`
|
||||
|
||||
**Target keywords**:
|
||||
- "[Competitor] alternatives"
|
||||
- "best [Competitor] alternatives"
|
||||
- "tools like [Competitor]"
|
||||
- "[Competitor] competitors"
|
||||
**Target keywords**: "[Competitor] alternatives", "best [Competitor] alternatives", "tools like [Competitor]"
|
||||
|
||||
**Page structure**:
|
||||
1. Why people look for alternatives (common pain points)
|
||||
@@ -108,8 +101,6 @@ Before creating competitor pages, understand:
|
||||
6. Recommendation by use case
|
||||
7. CTA
|
||||
|
||||
**Tone**: Objective guide, you're one option among several (but positioned well)
|
||||
|
||||
**Important**: Include 4-7 real alternatives. Being genuinely helpful builds trust and ranks better.
|
||||
|
||||
---
|
||||
@@ -120,29 +111,18 @@ Before creating competitor pages, understand:
|
||||
|
||||
**URL pattern**: `/vs/[competitor]` or `/compare/[you]-vs-[competitor]`
|
||||
|
||||
**Target keywords**:
|
||||
- "[You] vs [Competitor]"
|
||||
- "[Competitor] vs [You]"
|
||||
- "[You] compared to [Competitor]"
|
||||
- "[You] or [Competitor]"
|
||||
**Target keywords**: "[You] vs [Competitor]", "[Competitor] vs [You]"
|
||||
|
||||
**Page structure**:
|
||||
1. TL;DR summary (key differences in 2-3 sentences)
|
||||
2. At-a-glance comparison table
|
||||
3. Detailed comparison by category:
|
||||
- Features
|
||||
- Pricing
|
||||
- Service & support
|
||||
- Ease of use
|
||||
- Integrations
|
||||
3. Detailed comparison by category (Features, Pricing, Support, Ease of use, Integrations)
|
||||
4. Who [You] is best for
|
||||
5. Who [Competitor] is best for (be honest)
|
||||
6. What customers say (testimonials from switchers)
|
||||
7. Migration support
|
||||
8. CTA
|
||||
|
||||
**Tone**: Confident but fair, acknowledge where competitor excels
|
||||
|
||||
---
|
||||
|
||||
### Format 4: [Competitor A] vs [Competitor B]
|
||||
@@ -151,11 +131,6 @@ Before creating competitor pages, understand:
|
||||
|
||||
**URL pattern**: `/compare/[competitor-a]-vs-[competitor-b]`
|
||||
|
||||
**Target keywords**:
|
||||
- "[Competitor A] vs [Competitor B]"
|
||||
- "[Competitor A] or [Competitor B]"
|
||||
- "[Competitor A] compared to [Competitor B]"
|
||||
|
||||
**Page structure**:
|
||||
1. Overview of both products
|
||||
2. Comparison by category
|
||||
@@ -164,458 +139,47 @@ Before creating competitor pages, understand:
|
||||
5. Comparison table (all three)
|
||||
6. CTA
|
||||
|
||||
**Tone**: Objective analyst, earn trust through fairness, then introduce yourself
|
||||
|
||||
**Why this works**: Captures search traffic for competitor terms, positions you as knowledgeable, introduces you to qualified audience.
|
||||
**Why this works**: Captures search traffic for competitor terms, positions you as knowledgeable.
|
||||
|
||||
---
|
||||
|
||||
## Index Pages
|
||||
## Essential Sections
|
||||
|
||||
Each format needs an index page that lists all pages of that type. These hub pages serve as navigation aids, SEO consolidators, and entry points for visitors exploring multiple comparisons.
|
||||
### TL;DR Summary
|
||||
Start every page with a quick summary for scanners—key differences in 2-3 sentences.
|
||||
|
||||
### Alternatives Index
|
||||
### Paragraph Comparisons
|
||||
Go beyond tables. For each dimension, write a paragraph explaining the differences and when each matters.
|
||||
|
||||
**URL**: `/alternatives` or `/alternatives/index`
|
||||
### Feature Comparison
|
||||
For each category: describe how each handles it, list strengths and limitations, give bottom line recommendation.
|
||||
|
||||
**Purpose**: Lists all "[Competitor] Alternative" pages
|
||||
### Pricing Comparison
|
||||
Include tier-by-tier comparison, what's included, hidden costs, and total cost calculation for sample team size.
|
||||
|
||||
**Page structure**:
|
||||
1. Headline: "[Your Product] as an Alternative"
|
||||
2. Brief intro on why people switch to you
|
||||
3. List of all alternative pages with:
|
||||
- Competitor name/logo
|
||||
- One-line summary of key differentiator vs. that competitor
|
||||
- Link to full comparison
|
||||
4. Common reasons people switch (aggregated)
|
||||
5. CTA
|
||||
### Who It's For
|
||||
Be explicit about ideal customer for each option. Honest recommendations build trust.
|
||||
|
||||
**Example**:
|
||||
```markdown
|
||||
## Explore [Your Product] as an Alternative
|
||||
### Migration Section
|
||||
Cover what transfers, what needs reconfiguration, support offered, and quotes from customers who switched.
|
||||
|
||||
Looking to switch? See how [Your Product] compares to the tools you're evaluating:
|
||||
|
||||
- **[Notion Alternative](/alternatives/notion)** — Better for teams who need [X]
|
||||
- **[Airtable Alternative](/alternatives/airtable)** — Better for teams who need [Y]
|
||||
- **[Monday Alternative](/alternatives/monday)** — Better for teams who need [Z]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Alternatives (Plural) Index
|
||||
|
||||
**URL**: `/alternatives/compare` or `/best-alternatives`
|
||||
|
||||
**Purpose**: Lists all "[Competitor] Alternatives" roundup pages
|
||||
|
||||
**Page structure**:
|
||||
1. Headline: "Software Alternatives & Comparisons"
|
||||
2. Brief intro on your comparison methodology
|
||||
3. List of all alternatives roundup pages with:
|
||||
- Competitor name
|
||||
- Number of alternatives covered
|
||||
- Link to roundup
|
||||
4. CTA
|
||||
|
||||
**Example**:
|
||||
```markdown
|
||||
## Find the Right Tool
|
||||
|
||||
Comparing your options? Our guides cover the top alternatives:
|
||||
|
||||
- **[Best Notion Alternatives](/alternatives/notion-alternatives)** — 7 tools compared
|
||||
- **[Best Airtable Alternatives](/alternatives/airtable-alternatives)** — 6 tools compared
|
||||
- **[Best Monday Alternatives](/alternatives/monday-alternatives)** — 5 tools compared
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Vs Comparisons Index
|
||||
|
||||
**URL**: `/vs` or `/compare`
|
||||
|
||||
**Purpose**: Lists all "You vs [Competitor]" and "[A] vs [B]" pages
|
||||
|
||||
**Page structure**:
|
||||
1. Headline: "Compare [Your Product]"
|
||||
2. Section: "[Your Product] vs Competitors" — list of direct comparisons
|
||||
3. Section: "Head-to-Head Comparisons" — list of [A] vs [B] pages
|
||||
4. Brief methodology note
|
||||
5. CTA
|
||||
|
||||
**Example**:
|
||||
```markdown
|
||||
## Compare [Your Product]
|
||||
|
||||
### [Your Product] vs. the Competition
|
||||
|
||||
- **[[Your Product] vs Notion](/vs/notion)** — Best for [differentiator]
|
||||
- **[[Your Product] vs Airtable](/vs/airtable)** — Best for [differentiator]
|
||||
- **[[Your Product] vs Monday](/vs/monday)** — Best for [differentiator]
|
||||
|
||||
### Other Comparisons
|
||||
|
||||
Evaluating tools we compete with? We've done the research:
|
||||
|
||||
- **[Notion vs Airtable](/compare/notion-vs-airtable)**
|
||||
- **[Notion vs Monday](/compare/notion-vs-monday)**
|
||||
- **[Airtable vs Monday](/compare/airtable-vs-monday)**
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Index Page Best Practices
|
||||
|
||||
**Keep them updated**: When you add a new comparison page, add it to the relevant index.
|
||||
|
||||
**Internal linking**:
|
||||
- Link from index → individual pages
|
||||
- Link from individual pages → back to index
|
||||
- Cross-link between related comparisons
|
||||
|
||||
**SEO value**:
|
||||
- Index pages can rank for broad terms like "project management tool comparisons"
|
||||
- Pass link equity to individual comparison pages
|
||||
- Help search engines discover all comparison content
|
||||
|
||||
**Sorting options**:
|
||||
- By popularity (search volume)
|
||||
- Alphabetically
|
||||
- By category/use case
|
||||
- By date added (show freshness)
|
||||
|
||||
**Include on index pages**:
|
||||
- Last updated date for credibility
|
||||
- Number of pages/comparisons available
|
||||
- Quick filters if you have many comparisons
|
||||
**For detailed templates**: See [references/templates.md](references/templates.md)
|
||||
|
||||
---
|
||||
|
||||
## Content Architecture
|
||||
|
||||
### Centralized Competitor Data
|
||||
|
||||
Create a single source of truth for each competitor:
|
||||
|
||||
```
|
||||
competitor_data/
|
||||
├── notion.md
|
||||
├── airtable.md
|
||||
├── monday.md
|
||||
└── ...
|
||||
```
|
||||
|
||||
**Per competitor, document**:
|
||||
|
||||
```yaml
|
||||
name: Notion
|
||||
website: notion.so
|
||||
tagline: "The all-in-one workspace"
|
||||
founded: 2016
|
||||
headquarters: San Francisco
|
||||
|
||||
# Positioning
|
||||
primary_use_case: "docs + light databases"
|
||||
target_audience: "teams wanting flexible workspace"
|
||||
market_position: "premium, feature-rich"
|
||||
|
||||
# Pricing
|
||||
pricing_model: per-seat
|
||||
free_tier: true
|
||||
free_tier_limits: "limited blocks, 1 user"
|
||||
starter_price: $8/user/month
|
||||
business_price: $15/user/month
|
||||
enterprise: custom
|
||||
|
||||
# Features (rate 1-5 or describe)
|
||||
features:
|
||||
documents: 5
|
||||
databases: 4
|
||||
project_management: 3
|
||||
collaboration: 4
|
||||
integrations: 3
|
||||
mobile_app: 3
|
||||
offline_mode: 2
|
||||
api: 4
|
||||
|
||||
# Strengths (be honest)
|
||||
strengths:
|
||||
- Extremely flexible and customizable
|
||||
- Beautiful, modern interface
|
||||
- Strong template ecosystem
|
||||
- Active community
|
||||
|
||||
# Weaknesses (be fair)
|
||||
weaknesses:
|
||||
- Can be slow with large databases
|
||||
- Learning curve for advanced features
|
||||
- Limited automations compared to dedicated tools
|
||||
- Offline mode is limited
|
||||
|
||||
# Best for
|
||||
best_for:
|
||||
- Teams wanting all-in-one workspace
|
||||
- Content-heavy workflows
|
||||
- Documentation-first teams
|
||||
- Startups and small teams
|
||||
|
||||
# Not ideal for
|
||||
not_ideal_for:
|
||||
- Complex project management needs
|
||||
- Large databases (1000s of rows)
|
||||
- Teams needing robust offline
|
||||
- Enterprise with strict compliance
|
||||
|
||||
# Common complaints (from reviews)
|
||||
common_complaints:
|
||||
- "Gets slow with lots of content"
|
||||
- "Hard to find things as workspace grows"
|
||||
- "Mobile app is clunky"
|
||||
|
||||
# Migration notes
|
||||
migration_from:
|
||||
difficulty: medium
|
||||
data_export: "Markdown, CSV, HTML"
|
||||
what_transfers: "Pages, databases"
|
||||
what_doesnt: "Automations, integrations setup"
|
||||
time_estimate: "1-3 days for small team"
|
||||
```
|
||||
|
||||
### Your Product Data
|
||||
|
||||
Same structure for yourself—be honest:
|
||||
|
||||
```yaml
|
||||
name: [Your Product]
|
||||
# ... same fields
|
||||
|
||||
strengths:
|
||||
- [Your real strengths]
|
||||
|
||||
weaknesses:
|
||||
- [Your honest weaknesses]
|
||||
|
||||
best_for:
|
||||
- [Your ideal customers]
|
||||
|
||||
not_ideal_for:
|
||||
- [Who should use something else]
|
||||
```
|
||||
|
||||
### Page Generation
|
||||
|
||||
Each page pulls from centralized data:
|
||||
|
||||
- **[Competitor] Alternative page**: Pulls competitor data + your data
|
||||
- **[Competitor] Alternatives page**: Pulls competitor data + your data + other alternatives
|
||||
- **You vs [Competitor] page**: Pulls your data + competitor data
|
||||
- **[A] vs [B] page**: Pulls both competitor data + your data
|
||||
|
||||
**Benefits**:
|
||||
- Update competitor pricing once, updates everywhere
|
||||
- Add new feature comparison once, appears on all pages
|
||||
- Consistent accuracy across pages
|
||||
- Easier to maintain at scale
|
||||
|
||||
---
|
||||
|
||||
## Section Templates
|
||||
|
||||
### TL;DR Summary
|
||||
|
||||
Start every page with a quick summary for scanners:
|
||||
|
||||
```markdown
|
||||
**TL;DR**: [Competitor] excels at [strength] but struggles with [weakness].
|
||||
[Your product] is built for [your focus], offering [key differentiator].
|
||||
Choose [Competitor] if [their ideal use case]. Choose [You] if [your ideal use case].
|
||||
```
|
||||
|
||||
### Paragraph Comparison (Not Just Tables)
|
||||
|
||||
For each major dimension, write a paragraph:
|
||||
|
||||
```markdown
|
||||
## Features
|
||||
|
||||
[Competitor] offers [description of their feature approach].
|
||||
Their strength is [specific strength], which works well for [use case].
|
||||
However, [limitation] can be challenging for [user type].
|
||||
|
||||
[Your product] takes a different approach with [your approach].
|
||||
This means [benefit], though [honest tradeoff].
|
||||
Teams who [specific need] often find this more effective.
|
||||
```
|
||||
|
||||
### Feature Comparison Section
|
||||
|
||||
Go beyond checkmarks:
|
||||
|
||||
```markdown
|
||||
## Feature Comparison
|
||||
|
||||
### [Feature Category]
|
||||
|
||||
**[Competitor]**: [2-3 sentence description of how they handle this]
|
||||
- Strengths: [specific]
|
||||
- Limitations: [specific]
|
||||
|
||||
**[Your product]**: [2-3 sentence description]
|
||||
- Strengths: [specific]
|
||||
- Limitations: [specific]
|
||||
|
||||
**Bottom line**: Choose [Competitor] if [scenario]. Choose [You] if [scenario].
|
||||
```
|
||||
|
||||
### Pricing Comparison Section
|
||||
|
||||
```markdown
|
||||
## Pricing
|
||||
|
||||
| | [Competitor] | [Your Product] |
|
||||
|---|---|---|
|
||||
| Free tier | [Details] | [Details] |
|
||||
| Starting price | $X/user/mo | $X/user/mo |
|
||||
| Business tier | $X/user/mo | $X/user/mo |
|
||||
| Enterprise | Custom | Custom |
|
||||
|
||||
**What's included**: [Competitor]'s $X plan includes [features], while
|
||||
[Your product]'s $X plan includes [features].
|
||||
|
||||
**Total cost consideration**: Beyond per-seat pricing, consider [hidden costs,
|
||||
add-ons, implementation]. [Competitor] charges extra for [X], while
|
||||
[Your product] includes [Y] in base pricing.
|
||||
|
||||
**Value comparison**: For a 10-person team, [Competitor] costs approximately
|
||||
$X/year while [Your product] costs $Y/year, with [key differences in what you get].
|
||||
```
|
||||
|
||||
### Service & Support Comparison
|
||||
|
||||
```markdown
|
||||
## Service & Support
|
||||
|
||||
| | [Competitor] | [Your Product] |
|
||||
|---|---|---|
|
||||
| Documentation | [Quality assessment] | [Quality assessment] |
|
||||
| Response time | [SLA if known] | [Your SLA] |
|
||||
| Support channels | [List] | [List] |
|
||||
| Onboarding | [What they offer] | [What you offer] |
|
||||
| CSM included | [At what tier] | [At what tier] |
|
||||
|
||||
**Support quality**: Based on [G2/Capterra reviews, your research],
|
||||
[Competitor] support is described as [assessment]. Common feedback includes
|
||||
[quotes or themes].
|
||||
|
||||
[Your product] offers [your support approach]. [Specific differentiator like
|
||||
response time, dedicated CSM, implementation help].
|
||||
```
|
||||
|
||||
### Who It's For Section
|
||||
|
||||
```markdown
|
||||
## Who Should Choose [Competitor]
|
||||
|
||||
[Competitor] is the right choice if:
|
||||
- [Specific use case or need]
|
||||
- [Team type or size]
|
||||
- [Workflow or requirement]
|
||||
- [Budget or priority]
|
||||
|
||||
**Ideal [Competitor] customer**: [Persona description in 1-2 sentences]
|
||||
|
||||
## Who Should Choose [Your Product]
|
||||
|
||||
[Your product] is built for teams who:
|
||||
- [Specific use case or need]
|
||||
- [Team type or size]
|
||||
- [Workflow or requirement]
|
||||
- [Priority or value]
|
||||
|
||||
**Ideal [Your product] customer**: [Persona description in 1-2 sentences]
|
||||
```
|
||||
|
||||
### Migration Section
|
||||
|
||||
```markdown
|
||||
## Switching from [Competitor]
|
||||
|
||||
### What transfers
|
||||
- [Data type]: [How easily, any caveats]
|
||||
- [Data type]: [How easily, any caveats]
|
||||
|
||||
### What needs reconfiguration
|
||||
- [Thing]: [Why and effort level]
|
||||
- [Thing]: [Why and effort level]
|
||||
|
||||
### Migration support
|
||||
|
||||
We offer [migration support details]:
|
||||
- [Free data import tool / white-glove migration]
|
||||
- [Documentation / migration guide]
|
||||
- [Timeline expectation]
|
||||
- [Support during transition]
|
||||
|
||||
### What customers say about switching
|
||||
|
||||
> "[Quote from customer who switched]"
|
||||
> — [Name], [Role] at [Company]
|
||||
```
|
||||
|
||||
### Social Proof Section
|
||||
|
||||
Focus on switchers:
|
||||
|
||||
```markdown
|
||||
## What Customers Say
|
||||
|
||||
### Switched from [Competitor]
|
||||
|
||||
> "[Specific quote about why they switched and outcome]"
|
||||
> — [Name], [Role] at [Company]
|
||||
|
||||
> "[Another quote]"
|
||||
> — [Name], [Role] at [Company]
|
||||
|
||||
### Results after switching
|
||||
- [Company] saw [specific result]
|
||||
- [Company] reduced [metric] by [amount]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Comparison Table Best Practices
|
||||
|
||||
### Beyond Checkmarks
|
||||
|
||||
Instead of:
|
||||
| Feature | You | Competitor |
|
||||
|---------|-----|-----------|
|
||||
| Feature A | ✓ | ✓ |
|
||||
| Feature B | ✓ | ✗ |
|
||||
|
||||
Do this:
|
||||
| Feature | You | Competitor |
|
||||
|---------|-----|-----------|
|
||||
| Feature A | Full support with [detail] | Basic support, [limitation] |
|
||||
| Feature B | [Specific capability] | Not available |
|
||||
|
||||
### Organize by Category
|
||||
|
||||
Group features into meaningful categories:
|
||||
- Core functionality
|
||||
- Collaboration
|
||||
- Integrations
|
||||
- Security & compliance
|
||||
- Support & service
|
||||
|
||||
### Include Ratings Where Useful
|
||||
|
||||
| Category | You | Competitor | Notes |
|
||||
|----------|-----|-----------|-------|
|
||||
| Ease of use | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | [Brief note] |
|
||||
| Feature depth | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | [Brief note] |
|
||||
Create a single source of truth for each competitor with:
|
||||
- Positioning and target audience
|
||||
- Pricing (all tiers)
|
||||
- Feature ratings
|
||||
- Strengths and weaknesses
|
||||
- Best for / not ideal for
|
||||
- Common complaints (from reviews)
|
||||
- Migration notes
|
||||
|
||||
**For data structure and examples**: See [references/content-architecture.md](references/content-architecture.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -625,39 +189,14 @@ Group features into meaningful categories:
|
||||
|
||||
For each competitor, gather:
|
||||
|
||||
1. **Product research**
|
||||
- Sign up for free trial
|
||||
- Use the product yourself
|
||||
- Document features, UX, limitations
|
||||
- Take screenshots
|
||||
|
||||
2. **Pricing research**
|
||||
- Current pricing (check regularly)
|
||||
- What's included at each tier
|
||||
- Hidden costs, add-ons
|
||||
- Contract terms
|
||||
|
||||
3. **Review mining**
|
||||
- G2, Capterra, TrustRadius reviews
|
||||
- Common praise themes
|
||||
- Common complaint themes
|
||||
- Ratings by category
|
||||
|
||||
4. **Customer feedback**
|
||||
- Talk to customers who switched
|
||||
- Talk to prospects who chose competitor
|
||||
- Document real quotes
|
||||
|
||||
5. **Content research**
|
||||
- Their positioning and messaging
|
||||
- Their comparison pages (how do they compare to you?)
|
||||
- Their documentation quality
|
||||
- Their changelog (recent development)
|
||||
1. **Product research**: Sign up, use it, document features/UX/limitations
|
||||
2. **Pricing research**: Current pricing, what's included, hidden costs
|
||||
3. **Review mining**: G2, Capterra, TrustRadius for common praise/complaint themes
|
||||
4. **Customer feedback**: Talk to customers who switched (both directions)
|
||||
5. **Content research**: Their positioning, their comparison pages, their changelog
|
||||
|
||||
### Ongoing Updates
|
||||
|
||||
Competitor pages need maintenance:
|
||||
|
||||
- **Quarterly**: Verify pricing, check for major feature changes
|
||||
- **When notified**: Customer mentions competitor change
|
||||
- **Annually**: Full refresh of all competitor data
|
||||
@@ -668,77 +207,42 @@ Competitor pages need maintenance:
|
||||
|
||||
### Keyword Targeting
|
||||
|
||||
| Format | Primary Keywords | Secondary Keywords |
|
||||
|--------|-----------------|-------------------|
|
||||
| Alternative (singular) | [Competitor] alternative | alternative to [Competitor], switch from [Competitor], [Competitor] replacement |
|
||||
| Alternatives (plural) | [Competitor] alternatives | best [Competitor] alternatives, tools like [Competitor], [Competitor] competitors |
|
||||
| You vs Competitor | [You] vs [Competitor] | [Competitor] vs [You], [You] compared to [Competitor] |
|
||||
| Competitor vs Competitor | [A] vs [B] | [B] vs [A], [A] or [B], [A] compared to [B] |
|
||||
| Format | Primary Keywords |
|
||||
|--------|-----------------|
|
||||
| Alternative (singular) | [Competitor] alternative, alternative to [Competitor] |
|
||||
| Alternatives (plural) | [Competitor] alternatives, best [Competitor] alternatives |
|
||||
| You vs Competitor | [You] vs [Competitor], [Competitor] vs [You] |
|
||||
| Competitor vs Competitor | [A] vs [B], [B] vs [A] |
|
||||
|
||||
### Internal Linking
|
||||
|
||||
- Link between related competitor pages
|
||||
- Link from feature pages to relevant comparisons
|
||||
- Link from blog posts mentioning competitors
|
||||
- Hub page linking to all competitor content
|
||||
- Create hub page linking to all competitor content
|
||||
|
||||
### Schema Markup
|
||||
|
||||
Consider FAQ schema for common questions:
|
||||
|
||||
```json
|
||||
{
|
||||
"@type": "FAQPage",
|
||||
"mainEntity": [
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "What is the best alternative to [Competitor]?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "[Your answer positioning yourself]"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
Consider FAQ schema for common questions like "What is the best alternative to [Competitor]?"
|
||||
|
||||
---
|
||||
|
||||
## Output Format
|
||||
|
||||
### Competitor Data File
|
||||
|
||||
```yaml
|
||||
# [competitor].yaml
|
||||
# Complete competitor profile for use across all comparison pages
|
||||
```
|
||||
Complete competitor profile in YAML format for use across all comparison pages.
|
||||
|
||||
### Page Content
|
||||
|
||||
For each page:
|
||||
- URL and meta tags
|
||||
- Full page copy organized by section
|
||||
- Comparison tables
|
||||
- CTAs
|
||||
For each page: URL, meta tags, full page copy organized by section, comparison tables, CTAs.
|
||||
|
||||
### Page Set Plan
|
||||
|
||||
Recommended pages to create:
|
||||
1. [List of alternative pages]
|
||||
2. [List of vs pages]
|
||||
3. Priority order based on search volume
|
||||
Recommended pages to create with priority order based on search volume.
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. Who are your top 3-5 competitors?
|
||||
2. What's your core differentiator?
|
||||
3. What are common reasons people switch to you?
|
||||
4. Do you have customer quotes about switching?
|
||||
5. What's your pricing vs. competitors?
|
||||
6. Do you offer migration support?
|
||||
1. What are common reasons people switch to you?
|
||||
2. Do you have customer quotes about switching?
|
||||
3. What's your pricing vs. competitors?
|
||||
4. Do you offer migration support?
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -0,0 +1,208 @@
|
||||
# Content Architecture for Competitor Pages
|
||||
|
||||
How to structure and maintain competitor data for scalable comparison pages.
|
||||
|
||||
## Centralized Competitor Data
|
||||
|
||||
Create a single source of truth for each competitor:
|
||||
|
||||
```
|
||||
competitor_data/
|
||||
├── notion.md
|
||||
├── airtable.md
|
||||
├── monday.md
|
||||
└── ...
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Competitor Data Template
|
||||
|
||||
Per competitor, document:
|
||||
|
||||
```yaml
|
||||
name: Notion
|
||||
website: notion.so
|
||||
tagline: "The all-in-one workspace"
|
||||
founded: 2016
|
||||
headquarters: San Francisco
|
||||
|
||||
# Positioning
|
||||
primary_use_case: "docs + light databases"
|
||||
target_audience: "teams wanting flexible workspace"
|
||||
market_position: "premium, feature-rich"
|
||||
|
||||
# Pricing
|
||||
pricing_model: per-seat
|
||||
free_tier: true
|
||||
free_tier_limits: "limited blocks, 1 user"
|
||||
starter_price: $8/user/month
|
||||
business_price: $15/user/month
|
||||
enterprise: custom
|
||||
|
||||
# Features (rate 1-5 or describe)
|
||||
features:
|
||||
documents: 5
|
||||
databases: 4
|
||||
project_management: 3
|
||||
collaboration: 4
|
||||
integrations: 3
|
||||
mobile_app: 3
|
||||
offline_mode: 2
|
||||
api: 4
|
||||
|
||||
# Strengths (be honest)
|
||||
strengths:
|
||||
- Extremely flexible and customizable
|
||||
- Beautiful, modern interface
|
||||
- Strong template ecosystem
|
||||
- Active community
|
||||
|
||||
# Weaknesses (be fair)
|
||||
weaknesses:
|
||||
- Can be slow with large databases
|
||||
- Learning curve for advanced features
|
||||
- Limited automations compared to dedicated tools
|
||||
- Offline mode is limited
|
||||
|
||||
# Best for
|
||||
best_for:
|
||||
- Teams wanting all-in-one workspace
|
||||
- Content-heavy workflows
|
||||
- Documentation-first teams
|
||||
- Startups and small teams
|
||||
|
||||
# Not ideal for
|
||||
not_ideal_for:
|
||||
- Complex project management needs
|
||||
- Large databases (1000s of rows)
|
||||
- Teams needing robust offline
|
||||
- Enterprise with strict compliance
|
||||
|
||||
# Common complaints (from reviews)
|
||||
common_complaints:
|
||||
- "Gets slow with lots of content"
|
||||
- "Hard to find things as workspace grows"
|
||||
- "Mobile app is clunky"
|
||||
|
||||
# Migration notes
|
||||
migration_from:
|
||||
difficulty: medium
|
||||
data_export: "Markdown, CSV, HTML"
|
||||
what_transfers: "Pages, databases"
|
||||
what_doesnt: "Automations, integrations setup"
|
||||
time_estimate: "1-3 days for small team"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Your Product Data
|
||||
|
||||
Same structure for yourself—be honest:
|
||||
|
||||
```yaml
|
||||
name: [Your Product]
|
||||
# ... same fields
|
||||
|
||||
strengths:
|
||||
- [Your real strengths]
|
||||
|
||||
weaknesses:
|
||||
- [Your honest weaknesses]
|
||||
|
||||
best_for:
|
||||
- [Your ideal customers]
|
||||
|
||||
not_ideal_for:
|
||||
- [Who should use something else]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Page Generation
|
||||
|
||||
Each page pulls from centralized data:
|
||||
|
||||
- **[Competitor] Alternative page**: Pulls competitor data + your data
|
||||
- **[Competitor] Alternatives page**: Pulls competitor data + your data + other alternatives
|
||||
- **You vs [Competitor] page**: Pulls your data + competitor data
|
||||
- **[A] vs [B] page**: Pulls both competitor data + your data
|
||||
|
||||
**Benefits**:
|
||||
- Update competitor pricing once, updates everywhere
|
||||
- Add new feature comparison once, appears on all pages
|
||||
- Consistent accuracy across pages
|
||||
- Easier to maintain at scale
|
||||
|
||||
---
|
||||
|
||||
## Index Page Structure
|
||||
|
||||
### Alternatives Index
|
||||
|
||||
**URL**: `/alternatives` or `/alternatives/index`
|
||||
|
||||
**Purpose**: Lists all "[Competitor] Alternative" pages
|
||||
|
||||
**Page structure**:
|
||||
1. Headline: "[Your Product] as an Alternative"
|
||||
2. Brief intro on why people switch to you
|
||||
3. List of all alternative pages with:
|
||||
- Competitor name/logo
|
||||
- One-line summary of key differentiator vs. that competitor
|
||||
- Link to full comparison
|
||||
4. Common reasons people switch (aggregated)
|
||||
5. CTA
|
||||
|
||||
**Example**:
|
||||
```markdown
|
||||
## Explore [Your Product] as an Alternative
|
||||
|
||||
Looking to switch? See how [Your Product] compares to the tools you're evaluating:
|
||||
|
||||
- **[Notion Alternative](/alternatives/notion)** — Better for teams who need [X]
|
||||
- **[Airtable Alternative](/alternatives/airtable)** — Better for teams who need [Y]
|
||||
- **[Monday Alternative](/alternatives/monday)** — Better for teams who need [Z]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Vs Comparisons Index
|
||||
|
||||
**URL**: `/vs` or `/compare`
|
||||
|
||||
**Purpose**: Lists all "You vs [Competitor]" and "[A] vs [B]" pages
|
||||
|
||||
**Page structure**:
|
||||
1. Headline: "Compare [Your Product]"
|
||||
2. Section: "[Your Product] vs Competitors" — list of direct comparisons
|
||||
3. Section: "Head-to-Head Comparisons" — list of [A] vs [B] pages
|
||||
4. Brief methodology note
|
||||
5. CTA
|
||||
|
||||
---
|
||||
|
||||
### Index Page Best Practices
|
||||
|
||||
**Keep them updated**: When you add a new comparison page, add it to the relevant index.
|
||||
|
||||
**Internal linking**:
|
||||
- Link from index → individual pages
|
||||
- Link from individual pages → back to index
|
||||
- Cross-link between related comparisons
|
||||
|
||||
**SEO value**:
|
||||
- Index pages can rank for broad terms like "project management tool comparisons"
|
||||
- Pass link equity to individual comparison pages
|
||||
- Help search engines discover all comparison content
|
||||
|
||||
**Sorting options**:
|
||||
- By popularity (search volume)
|
||||
- Alphabetically
|
||||
- By category/use case
|
||||
- By date added (show freshness)
|
||||
|
||||
**Include on index pages**:
|
||||
- Last updated date for credibility
|
||||
- Number of pages/comparisons available
|
||||
- Quick filters if you have many comparisons
|
||||
212
skills/competitor-alternatives/references/templates.md
Normal file
212
skills/competitor-alternatives/references/templates.md
Normal file
@@ -0,0 +1,212 @@
|
||||
# Section Templates for Competitor Pages
|
||||
|
||||
Ready-to-use templates for each section of competitor comparison pages.
|
||||
|
||||
## TL;DR Summary
|
||||
|
||||
Start every page with a quick summary for scanners:
|
||||
|
||||
```markdown
|
||||
**TL;DR**: [Competitor] excels at [strength] but struggles with [weakness].
|
||||
[Your product] is built for [your focus], offering [key differentiator].
|
||||
Choose [Competitor] if [their ideal use case]. Choose [You] if [your ideal use case].
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Paragraph Comparison (Not Just Tables)
|
||||
|
||||
For each major dimension, write a paragraph:
|
||||
|
||||
```markdown
|
||||
## Features
|
||||
|
||||
[Competitor] offers [description of their feature approach].
|
||||
Their strength is [specific strength], which works well for [use case].
|
||||
However, [limitation] can be challenging for [user type].
|
||||
|
||||
[Your product] takes a different approach with [your approach].
|
||||
This means [benefit], though [honest tradeoff].
|
||||
Teams who [specific need] often find this more effective.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Feature Comparison Section
|
||||
|
||||
Go beyond checkmarks:
|
||||
|
||||
```markdown
|
||||
## Feature Comparison
|
||||
|
||||
### [Feature Category]
|
||||
|
||||
**[Competitor]**: [2-3 sentence description of how they handle this]
|
||||
- Strengths: [specific]
|
||||
- Limitations: [specific]
|
||||
|
||||
**[Your product]**: [2-3 sentence description]
|
||||
- Strengths: [specific]
|
||||
- Limitations: [specific]
|
||||
|
||||
**Bottom line**: Choose [Competitor] if [scenario]. Choose [You] if [scenario].
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Pricing Comparison Section
|
||||
|
||||
```markdown
|
||||
## Pricing
|
||||
|
||||
| | [Competitor] | [Your Product] |
|
||||
|---|---|---|
|
||||
| Free tier | [Details] | [Details] |
|
||||
| Starting price | $X/user/mo | $X/user/mo |
|
||||
| Business tier | $X/user/mo | $X/user/mo |
|
||||
| Enterprise | Custom | Custom |
|
||||
|
||||
**What's included**: [Competitor]'s $X plan includes [features], while
|
||||
[Your product]'s $X plan includes [features].
|
||||
|
||||
**Total cost consideration**: Beyond per-seat pricing, consider [hidden costs,
|
||||
add-ons, implementation]. [Competitor] charges extra for [X], while
|
||||
[Your product] includes [Y] in base pricing.
|
||||
|
||||
**Value comparison**: For a 10-person team, [Competitor] costs approximately
|
||||
$X/year while [Your product] costs $Y/year, with [key differences in what you get].
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Service & Support Comparison
|
||||
|
||||
```markdown
|
||||
## Service & Support
|
||||
|
||||
| | [Competitor] | [Your Product] |
|
||||
|---|---|---|
|
||||
| Documentation | [Quality assessment] | [Quality assessment] |
|
||||
| Response time | [SLA if known] | [Your SLA] |
|
||||
| Support channels | [List] | [List] |
|
||||
| Onboarding | [What they offer] | [What you offer] |
|
||||
| CSM included | [At what tier] | [At what tier] |
|
||||
|
||||
**Support quality**: Based on [G2/Capterra reviews, your research],
|
||||
[Competitor] support is described as [assessment]. Common feedback includes
|
||||
[quotes or themes].
|
||||
|
||||
[Your product] offers [your support approach]. [Specific differentiator like
|
||||
response time, dedicated CSM, implementation help].
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Who It's For Section
|
||||
|
||||
```markdown
|
||||
## Who Should Choose [Competitor]
|
||||
|
||||
[Competitor] is the right choice if:
|
||||
- [Specific use case or need]
|
||||
- [Team type or size]
|
||||
- [Workflow or requirement]
|
||||
- [Budget or priority]
|
||||
|
||||
**Ideal [Competitor] customer**: [Persona description in 1-2 sentences]
|
||||
|
||||
## Who Should Choose [Your Product]
|
||||
|
||||
[Your product] is built for teams who:
|
||||
- [Specific use case or need]
|
||||
- [Team type or size]
|
||||
- [Workflow or requirement]
|
||||
- [Priority or value]
|
||||
|
||||
**Ideal [Your product] customer**: [Persona description in 1-2 sentences]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Migration Section
|
||||
|
||||
```markdown
|
||||
## Switching from [Competitor]
|
||||
|
||||
### What transfers
|
||||
- [Data type]: [How easily, any caveats]
|
||||
- [Data type]: [How easily, any caveats]
|
||||
|
||||
### What needs reconfiguration
|
||||
- [Thing]: [Why and effort level]
|
||||
- [Thing]: [Why and effort level]
|
||||
|
||||
### Migration support
|
||||
|
||||
We offer [migration support details]:
|
||||
- [Free data import tool / white-glove migration]
|
||||
- [Documentation / migration guide]
|
||||
- [Timeline expectation]
|
||||
- [Support during transition]
|
||||
|
||||
### What customers say about switching
|
||||
|
||||
> "[Quote from customer who switched]"
|
||||
> — [Name], [Role] at [Company]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Social Proof Section
|
||||
|
||||
Focus on switchers:
|
||||
|
||||
```markdown
|
||||
## What Customers Say
|
||||
|
||||
### Switched from [Competitor]
|
||||
|
||||
> "[Specific quote about why they switched and outcome]"
|
||||
> — [Name], [Role] at [Company]
|
||||
|
||||
> "[Another quote]"
|
||||
> — [Name], [Role] at [Company]
|
||||
|
||||
### Results after switching
|
||||
- [Company] saw [specific result]
|
||||
- [Company] reduced [metric] by [amount]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Comparison Table Best Practices
|
||||
|
||||
### Beyond Checkmarks
|
||||
|
||||
Instead of:
|
||||
| Feature | You | Competitor |
|
||||
|---------|-----|-----------|
|
||||
| Feature A | ✓ | ✓ |
|
||||
| Feature B | ✓ | ✗ |
|
||||
|
||||
Do this:
|
||||
| Feature | You | Competitor |
|
||||
|---------|-----|-----------|
|
||||
| Feature A | Full support with [detail] | Basic support, [limitation] |
|
||||
| Feature B | [Specific capability] | Not available |
|
||||
|
||||
### Organize by Category
|
||||
|
||||
Group features into meaningful categories:
|
||||
- Core functionality
|
||||
- Collaboration
|
||||
- Integrations
|
||||
- Security & compliance
|
||||
- Support & service
|
||||
|
||||
### Include Ratings Where Useful
|
||||
|
||||
| Category | You | Competitor | Notes |
|
||||
|----------|-----|-----------|-------|
|
||||
| Ease of use | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | [Brief note] |
|
||||
| Feature depth | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | [Brief note] |
|
||||
356
skills/content-strategy/SKILL.md
Normal file
356
skills/content-strategy/SKILL.md
Normal file
@@ -0,0 +1,356 @@
|
||||
---
|
||||
name: content-strategy
|
||||
version: 1.0.0
|
||||
description: When the user wants to plan a content strategy, decide what content to create, or figure out what topics to cover. Also use when the user mentions "content strategy," "what should I write about," "content ideas," "blog strategy," "topic clusters," or "content planning." For writing individual pieces, see copywriting. For SEO-specific audits, see seo-audit.
|
||||
---
|
||||
|
||||
# Content Strategy
|
||||
|
||||
You are a content strategist. Your goal is to help plan content that drives traffic, builds authority, and generates leads by being either searchable, shareable, or both.
|
||||
|
||||
## Before Planning
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Gather this context (ask if not provided):
|
||||
|
||||
### 1. Business Context
|
||||
- What does the company do?
|
||||
- Who is the ideal customer?
|
||||
- What's the primary goal for content? (traffic, leads, brand awareness, thought leadership)
|
||||
- What problems does your product solve?
|
||||
|
||||
### 2. Customer Research
|
||||
- What questions do customers ask before buying?
|
||||
- What objections come up in sales calls?
|
||||
- What topics appear repeatedly in support tickets?
|
||||
- What language do customers use to describe their problems?
|
||||
|
||||
### 3. Current State
|
||||
- Do you have existing content? What's working?
|
||||
- What resources do you have? (writers, budget, time)
|
||||
- What content formats can you produce? (written, video, audio)
|
||||
|
||||
### 4. Competitive Landscape
|
||||
- Who are your main competitors?
|
||||
- What content gaps exist in your market?
|
||||
|
||||
---
|
||||
|
||||
## Searchable vs Shareable
|
||||
|
||||
Every piece of content must be searchable, shareable, or both. Prioritize in that order—search traffic is the foundation.
|
||||
|
||||
**Searchable content** captures existing demand. Optimized for people actively looking for answers.
|
||||
|
||||
**Shareable content** creates demand. Spreads ideas and gets people talking.
|
||||
|
||||
### When Writing Searchable Content
|
||||
|
||||
- Target a specific keyword or question
|
||||
- Match search intent exactly—answer what the searcher wants
|
||||
- Use clear titles that match search queries
|
||||
- Structure with headings that mirror search patterns
|
||||
- Place keywords in title, headings, first paragraph, URL
|
||||
- Provide comprehensive coverage (don't leave questions unanswered)
|
||||
- Include data, examples, and links to authoritative sources
|
||||
- Optimize for AI/LLM discovery: clear positioning, structured content, brand consistency across the web
|
||||
|
||||
### When Writing Shareable Content
|
||||
|
||||
- Lead with a novel insight, original data, or counterintuitive take
|
||||
- Challenge conventional wisdom with well-reasoned arguments
|
||||
- Tell stories that make people feel something
|
||||
- Create content people want to share to look smart or help others
|
||||
- Connect to current trends or emerging problems
|
||||
- Share vulnerable, honest experiences others can learn from
|
||||
|
||||
---
|
||||
|
||||
## Content Types
|
||||
|
||||
### Searchable Content Types
|
||||
|
||||
**Use-Case Content**
|
||||
Formula: [persona] + [use-case]. Targets long-tail keywords.
|
||||
- "Project management for designers"
|
||||
- "Task tracking for developers"
|
||||
- "Client collaboration for freelancers"
|
||||
|
||||
**Hub and Spoke**
|
||||
Hub = comprehensive overview. Spokes = related subtopics.
|
||||
```
|
||||
/topic (hub)
|
||||
├── /topic/subtopic-1 (spoke)
|
||||
├── /topic/subtopic-2 (spoke)
|
||||
└── /topic/subtopic-3 (spoke)
|
||||
```
|
||||
Create hub first, then build spokes. Interlink strategically.
|
||||
|
||||
**Note:** Most content works fine under `/blog`. Only use dedicated hub/spoke URL structures for major topics with layered depth (e.g., Atlassian's `/agile` guide). For typical blog posts, `/blog/post-title` is sufficient.
|
||||
|
||||
**Template Libraries**
|
||||
High-intent keywords + product adoption.
|
||||
- Target searches like "marketing plan template"
|
||||
- Provide immediate standalone value
|
||||
- Show how product enhances the template
|
||||
|
||||
### Shareable Content Types
|
||||
|
||||
**Thought Leadership**
|
||||
- Articulate concepts everyone feels but hasn't named
|
||||
- Challenge conventional wisdom with evidence
|
||||
- Share vulnerable, honest experiences
|
||||
|
||||
**Data-Driven Content**
|
||||
- Product data analysis (anonymized insights)
|
||||
- Public data analysis (uncover patterns)
|
||||
- Original research (run experiments, share results)
|
||||
|
||||
**Expert Roundups**
|
||||
15-30 experts answering one specific question. Built-in distribution.
|
||||
|
||||
**Case Studies**
|
||||
Structure: Challenge → Solution → Results → Key learnings
|
||||
|
||||
**Meta Content**
|
||||
Behind-the-scenes transparency. "How We Got Our First $5k MRR," "Why We Chose Debt Over VC."
|
||||
|
||||
For programmatic content at scale, see **programmatic-seo** skill.
|
||||
|
||||
---
|
||||
|
||||
## Content Pillars and Topic Clusters
|
||||
|
||||
Content pillars are the 3-5 core topics your brand will own. Each pillar spawns a cluster of related content.
|
||||
|
||||
Most of the time, all content can live under `/blog` with good internal linking between related posts. Dedicated pillar pages with custom URL structures (like `/guides/topic`) are only needed when you're building comprehensive resources with multiple layers of depth.
|
||||
|
||||
### How to Identify Pillars
|
||||
|
||||
1. **Product-led**: What problems does your product solve?
|
||||
2. **Audience-led**: What does your ICP need to learn?
|
||||
3. **Search-led**: What topics have volume in your space?
|
||||
4. **Competitor-led**: What are competitors ranking for?
|
||||
|
||||
### Pillar Structure
|
||||
|
||||
```
|
||||
Pillar Topic (Hub)
|
||||
├── Subtopic Cluster 1
|
||||
│ ├── Article A
|
||||
│ ├── Article B
|
||||
│ └── Article C
|
||||
├── Subtopic Cluster 2
|
||||
│ ├── Article D
|
||||
│ ├── Article E
|
||||
│ └── Article F
|
||||
└── Subtopic Cluster 3
|
||||
├── Article G
|
||||
├── Article H
|
||||
└── Article I
|
||||
```
|
||||
|
||||
### Pillar Criteria
|
||||
|
||||
Good pillars should:
|
||||
- Align with your product/service
|
||||
- Match what your audience cares about
|
||||
- Have search volume and/or social interest
|
||||
- Be broad enough for many subtopics
|
||||
|
||||
---
|
||||
|
||||
## Keyword Research by Buyer Stage
|
||||
|
||||
Map topics to the buyer's journey using proven keyword modifiers:
|
||||
|
||||
### Awareness Stage
|
||||
Modifiers: "what is," "how to," "guide to," "introduction to"
|
||||
|
||||
Example: If customers ask about project management basics:
|
||||
- "What is Agile Project Management"
|
||||
- "Guide to Sprint Planning"
|
||||
- "How to Run a Standup Meeting"
|
||||
|
||||
### Consideration Stage
|
||||
Modifiers: "best," "top," "vs," "alternatives," "comparison"
|
||||
|
||||
Example: If customers evaluate multiple tools:
|
||||
- "Best Project Management Tools for Remote Teams"
|
||||
- "Asana vs Trello vs Monday"
|
||||
- "Basecamp Alternatives"
|
||||
|
||||
### Decision Stage
|
||||
Modifiers: "pricing," "reviews," "demo," "trial," "buy"
|
||||
|
||||
Example: If pricing comes up in sales calls:
|
||||
- "Project Management Tool Pricing Comparison"
|
||||
- "How to Choose the Right Plan"
|
||||
- "[Product] Reviews"
|
||||
|
||||
### Implementation Stage
|
||||
Modifiers: "templates," "examples," "tutorial," "how to use," "setup"
|
||||
|
||||
Example: If support tickets show implementation struggles:
|
||||
- "Project Template Library"
|
||||
- "Step-by-Step Setup Tutorial"
|
||||
- "How to Use [Feature]"
|
||||
|
||||
---
|
||||
|
||||
## Content Ideation Sources
|
||||
|
||||
### 1. Keyword Data
|
||||
|
||||
If user provides keyword exports (Ahrefs, SEMrush, GSC), analyze for:
|
||||
- Topic clusters (group related keywords)
|
||||
- Buyer stage (awareness/consideration/decision/implementation)
|
||||
- Search intent (informational, commercial, transactional)
|
||||
- Quick wins (low competition + decent volume + high relevance)
|
||||
- Content gaps (keywords competitors rank for that you don't)
|
||||
|
||||
Output as prioritized table:
|
||||
| Keyword | Volume | Difficulty | Buyer Stage | Content Type | Priority |
|
||||
|
||||
### 2. Call Transcripts
|
||||
|
||||
If user provides sales or customer call transcripts, extract:
|
||||
- Questions asked → FAQ content or blog posts
|
||||
- Pain points → problems in their own words
|
||||
- Objections → content to address proactively
|
||||
- Language patterns → exact phrases to use (voice of customer)
|
||||
- Competitor mentions → what they compared you to
|
||||
|
||||
Output content ideas with supporting quotes.
|
||||
|
||||
### 3. Survey Responses
|
||||
|
||||
If user provides survey data, mine for:
|
||||
- Open-ended responses (topics and language)
|
||||
- Common themes (30%+ mention = high priority)
|
||||
- Resource requests (what they wish existed)
|
||||
- Content preferences (formats they want)
|
||||
|
||||
### 4. Forum Research
|
||||
|
||||
Use web search to find content ideas:
|
||||
|
||||
**Reddit:** `site:reddit.com [topic]`
|
||||
- Top posts in relevant subreddits
|
||||
- Questions and frustrations in comments
|
||||
- Upvoted answers (validates what resonates)
|
||||
|
||||
**Quora:** `site:quora.com [topic]`
|
||||
- Most-followed questions
|
||||
- Highly upvoted answers
|
||||
|
||||
**Other:** Indie Hackers, Hacker News, Product Hunt, industry Slack/Discord
|
||||
|
||||
Extract: FAQs, misconceptions, debates, problems being solved, terminology used.
|
||||
|
||||
### 5. Competitor Analysis
|
||||
|
||||
Use web search to analyze competitor content:
|
||||
|
||||
**Find their content:** `site:competitor.com/blog`
|
||||
|
||||
**Analyze:**
|
||||
- Top-performing posts (comments, shares)
|
||||
- Topics covered repeatedly
|
||||
- Gaps they haven't covered
|
||||
- Case studies (customer problems, use cases, results)
|
||||
- Content structure (pillars, categories, formats)
|
||||
|
||||
**Identify opportunities:**
|
||||
- Topics you can cover better
|
||||
- Angles they're missing
|
||||
- Outdated content to improve on
|
||||
|
||||
### 6. Sales and Support Input
|
||||
|
||||
Extract from customer-facing teams:
|
||||
- Common objections
|
||||
- Repeated questions
|
||||
- Support ticket patterns
|
||||
- Success stories
|
||||
- Feature requests and underlying problems
|
||||
|
||||
---
|
||||
|
||||
## Prioritizing Content Ideas
|
||||
|
||||
Score each idea on four factors:
|
||||
|
||||
### 1. Customer Impact (40%)
|
||||
- How frequently did this topic come up in research?
|
||||
- What percentage of customers face this challenge?
|
||||
- How emotionally charged was this pain point?
|
||||
- What's the potential LTV of customers with this need?
|
||||
|
||||
### 2. Content-Market Fit (30%)
|
||||
- Does this align with problems your product solves?
|
||||
- Can you offer unique insights from customer research?
|
||||
- Do you have customer stories to support this?
|
||||
- Will this naturally lead to product interest?
|
||||
|
||||
### 3. Search Potential (20%)
|
||||
- What's the monthly search volume?
|
||||
- How competitive is this topic?
|
||||
- Are there related long-tail opportunities?
|
||||
- Is search interest growing or declining?
|
||||
|
||||
### 4. Resource Requirements (10%)
|
||||
- Do you have expertise to create authoritative content?
|
||||
- What additional research is needed?
|
||||
- What assets (graphics, data, examples) will you need?
|
||||
|
||||
### Scoring Template
|
||||
|
||||
| Idea | Customer Impact (40%) | Content-Market Fit (30%) | Search Potential (20%) | Resources (10%) | Total |
|
||||
|------|----------------------|-------------------------|----------------------|-----------------|-------|
|
||||
| Topic A | 8 | 9 | 7 | 6 | 8.0 |
|
||||
| Topic B | 6 | 7 | 9 | 8 | 7.1 |
|
||||
|
||||
---
|
||||
|
||||
## Output Format
|
||||
|
||||
When creating a content strategy, provide:
|
||||
|
||||
### 1. Content Pillars
|
||||
- 3-5 pillars with rationale
|
||||
- Subtopic clusters for each pillar
|
||||
- How pillars connect to product
|
||||
|
||||
### 2. Priority Topics
|
||||
For each recommended piece:
|
||||
- Topic/title
|
||||
- Searchable, shareable, or both
|
||||
- Content type (use-case, hub/spoke, thought leadership, etc.)
|
||||
- Target keyword and buyer stage
|
||||
- Why this topic (customer research backing)
|
||||
|
||||
### 3. Topic Cluster Map
|
||||
Visual or structured representation of how content interconnects.
|
||||
|
||||
---
|
||||
|
||||
## Task-Specific Questions
|
||||
|
||||
1. What patterns emerge from your last 10 customer conversations?
|
||||
2. What questions keep coming up in sales calls?
|
||||
3. Where are competitors' content efforts falling short?
|
||||
4. What unique insights from customer research aren't being shared elsewhere?
|
||||
5. Which existing content drives the most conversions, and why?
|
||||
|
||||
---
|
||||
|
||||
## Related Skills
|
||||
|
||||
- **copywriting**: For writing individual content pieces
|
||||
- **seo-audit**: For technical SEO and on-page optimization
|
||||
- **programmatic-seo**: For scaled content generation
|
||||
- **email-sequence**: For email-based content
|
||||
- **social-content**: For social media content
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: copy-editing
|
||||
version: 1.0.0
|
||||
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,' or 'copy sweep.' This skill provides a systematic approach to editing marketing copy through multiple focused passes."
|
||||
---
|
||||
|
||||
@@ -9,6 +10,9 @@ You are an expert copy editor specializing in marketing and conversion copy. You
|
||||
|
||||
## Core Philosophy
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before editing. Use brand voice and customer language from that context to guide your edits.
|
||||
|
||||
Good copy editing isn't about rewriting—it's about enhancing. Each pass focuses on one dimension, catching issues that get missed when you try to fix everything at once.
|
||||
|
||||
**Key principles:**
|
||||
@@ -408,15 +412,18 @@ This iterative process ensures each edit doesn't create new problems while respe
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## References
|
||||
|
||||
- [Plain English Alternatives](references/plain-english-alternatives.md): Replace complex words with simpler alternatives
|
||||
|
||||
---
|
||||
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What's the goal of this copy? (Awareness, conversion, retention)
|
||||
2. Who's the target audience?
|
||||
3. What action should readers take?
|
||||
4. What's the brand voice? (Casual, professional, playful, authoritative)
|
||||
5. Are there specific concerns or known issues?
|
||||
6. What proof/evidence do you have available?
|
||||
2. What action should readers take?
|
||||
3. Are there specific concerns or known issues?
|
||||
4. What proof/evidence do you have available?
|
||||
|
||||
---
|
||||
|
||||
|
||||
376
skills/copy-editing/references/plain-english-alternatives.md
Normal file
376
skills/copy-editing/references/plain-english-alternatives.md
Normal file
@@ -0,0 +1,376 @@
|
||||
# Plain English Alternatives
|
||||
|
||||
Replace complex or pompous words with plain English alternatives.
|
||||
|
||||
Source: Plain English Campaign A-Z of Alternative Words (2001), Australian Government Style Manual (2024), plainlanguage.gov
|
||||
|
||||
---
|
||||
|
||||
## A
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| (an) absence of | no, none |
|
||||
| abundance | enough, plenty, many |
|
||||
| accede to | allow, agree to |
|
||||
| accelerate | speed up |
|
||||
| accommodate | meet, hold, house |
|
||||
| accomplish | do, finish, complete |
|
||||
| accordingly | so, therefore |
|
||||
| acknowledge | thank you for, confirm |
|
||||
| acquire | get, buy, obtain |
|
||||
| additional | extra, more |
|
||||
| adjacent | next to |
|
||||
| advantageous | useful, helpful |
|
||||
| advise | tell, say, inform |
|
||||
| aforesaid | this, earlier |
|
||||
| aggregate | total |
|
||||
| alleviate | ease, reduce |
|
||||
| allocate | give, share, assign |
|
||||
| alternative | other, choice |
|
||||
| ameliorate | improve |
|
||||
| anticipate | expect |
|
||||
| apparent | clear, obvious |
|
||||
| appreciable | large, noticeable |
|
||||
| appropriate | proper, right, suitable |
|
||||
| approximately | about, roughly |
|
||||
| ascertain | find out |
|
||||
| assistance | help |
|
||||
| at the present time | now |
|
||||
| attempt | try |
|
||||
| authorise | allow, let |
|
||||
|
||||
---
|
||||
|
||||
## B
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| belated | late |
|
||||
| beneficial | helpful, useful |
|
||||
| bestow | give |
|
||||
| by means of | by |
|
||||
|
||||
---
|
||||
|
||||
## C
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| calculate | work out |
|
||||
| cease | stop, end |
|
||||
| circumvent | avoid, get around |
|
||||
| clarification | explanation |
|
||||
| commence | start, begin |
|
||||
| communicate | tell, talk, write |
|
||||
| competent | able |
|
||||
| compile | collect, make |
|
||||
| complete | fill in, finish |
|
||||
| component | part |
|
||||
| comprise | include, make up |
|
||||
| (it is) compulsory | (you) must |
|
||||
| conceal | hide |
|
||||
| concerning | about |
|
||||
| consequently | so |
|
||||
| considerable | large, great, much |
|
||||
| constitute | make up, form |
|
||||
| consult | ask, talk to |
|
||||
| consumption | use |
|
||||
| currently | now |
|
||||
|
||||
---
|
||||
|
||||
## D
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| deduct | take off |
|
||||
| deem | treat as, consider |
|
||||
| defer | delay, put off |
|
||||
| deficiency | lack |
|
||||
| delete | remove, cross out |
|
||||
| demonstrate | show, prove |
|
||||
| denote | show, mean |
|
||||
| designate | name, appoint |
|
||||
| despatch/dispatch | send |
|
||||
| determine | decide, find out |
|
||||
| detrimental | harmful |
|
||||
| diminish | reduce, lessen |
|
||||
| discontinue | stop |
|
||||
| disseminate | spread, distribute |
|
||||
| documentation | papers, documents |
|
||||
| due to the fact that | because |
|
||||
| duration | time, length |
|
||||
| dwelling | home |
|
||||
|
||||
---
|
||||
|
||||
## E
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| economical | cheap, good value |
|
||||
| eligible | allowed, qualified |
|
||||
| elucidate | explain |
|
||||
| enable | allow |
|
||||
| encounter | meet |
|
||||
| endeavour | try |
|
||||
| enquire | ask |
|
||||
| ensure | make sure |
|
||||
| entitlement | right |
|
||||
| envisage | expect |
|
||||
| equivalent | equal, the same |
|
||||
| erroneous | wrong |
|
||||
| establish | set up, show |
|
||||
| evaluate | assess, test |
|
||||
| excessive | too much |
|
||||
| exclusively | only |
|
||||
| exempt | free from |
|
||||
| expedite | speed up |
|
||||
| expenditure | spending |
|
||||
| expire | run out |
|
||||
|
||||
---
|
||||
|
||||
## F
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| fabricate | make |
|
||||
| facilitate | help, make possible |
|
||||
| finalise | finish, complete |
|
||||
| following | after |
|
||||
| for the purpose of | to, for |
|
||||
| for the reason that | because |
|
||||
| forthwith | now, at once |
|
||||
| forward | send |
|
||||
| frequently | often |
|
||||
| furnish | give, provide |
|
||||
| furthermore | also, and |
|
||||
|
||||
---
|
||||
|
||||
## G-H
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| generate | produce, create |
|
||||
| henceforth | from now on |
|
||||
| hitherto | until now |
|
||||
|
||||
---
|
||||
|
||||
## I
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| if and when | if, when |
|
||||
| illustrate | show |
|
||||
| immediately | at once, now |
|
||||
| implement | carry out, do |
|
||||
| imply | suggest |
|
||||
| in accordance with | under, following |
|
||||
| in addition to | and, also |
|
||||
| in conjunction with | with |
|
||||
| in excess of | more than |
|
||||
| in lieu of | instead of |
|
||||
| in order to | to |
|
||||
| in receipt of | receive |
|
||||
| in relation to | about |
|
||||
| in respect of | about, for |
|
||||
| in the event of | if |
|
||||
| in the majority of instances | most, usually |
|
||||
| in the near future | soon |
|
||||
| in view of the fact that | because |
|
||||
| inception | start |
|
||||
| indicate | show, suggest |
|
||||
| inform | tell |
|
||||
| initiate | start, begin |
|
||||
| insert | put in |
|
||||
| instances | cases |
|
||||
| irrespective of | despite |
|
||||
| issue | give, send |
|
||||
|
||||
---
|
||||
|
||||
## L-M
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| (a) large number of | many |
|
||||
| liaise with | work with, talk to |
|
||||
| locality | place, area |
|
||||
| locate | find |
|
||||
| magnitude | size |
|
||||
| (it is) mandatory | (you) must |
|
||||
| manner | way |
|
||||
| modification | change |
|
||||
| moreover | also, and |
|
||||
|
||||
---
|
||||
|
||||
## N-O
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| negligible | small |
|
||||
| nevertheless | but, however |
|
||||
| notify | tell |
|
||||
| notwithstanding | despite, even if |
|
||||
| numerous | many |
|
||||
| objective | aim, goal |
|
||||
| (it is) obligatory | (you) must |
|
||||
| obtain | get |
|
||||
| occasioned by | caused by |
|
||||
| on behalf of | for |
|
||||
| on numerous occasions | often |
|
||||
| on receipt of | when you get |
|
||||
| on the grounds that | because |
|
||||
| operate | work, run |
|
||||
| optimum | best |
|
||||
| option | choice |
|
||||
| otherwise | or |
|
||||
| outstanding | unpaid |
|
||||
| owing to | because |
|
||||
|
||||
---
|
||||
|
||||
## P
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| partially | partly |
|
||||
| participate | take part |
|
||||
| particulars | details |
|
||||
| per annum | a year |
|
||||
| perform | do |
|
||||
| permit | let, allow |
|
||||
| personnel | staff, people |
|
||||
| peruse | read |
|
||||
| possess | have, own |
|
||||
| practically | almost |
|
||||
| predominant | main |
|
||||
| prescribe | set |
|
||||
| preserve | keep |
|
||||
| previous | earlier, before |
|
||||
| principal | main |
|
||||
| prior to | before |
|
||||
| proceed | go ahead |
|
||||
| procure | get |
|
||||
| prohibit | ban, stop |
|
||||
| promptly | quickly |
|
||||
| provide | give |
|
||||
| provided that | if |
|
||||
| provisions | rules, terms |
|
||||
| proximity | nearness |
|
||||
| purchase | buy |
|
||||
| pursuant to | under |
|
||||
|
||||
---
|
||||
|
||||
## R
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| reconsider | think again |
|
||||
| reduction | cut |
|
||||
| referred to as | called |
|
||||
| regarding | about |
|
||||
| reimburse | repay |
|
||||
| reiterate | repeat |
|
||||
| relating to | about |
|
||||
| remain | stay |
|
||||
| remainder | rest |
|
||||
| remuneration | pay |
|
||||
| render | make, give |
|
||||
| represent | stand for |
|
||||
| request | ask |
|
||||
| require | need |
|
||||
| residence | home |
|
||||
| retain | keep |
|
||||
| revised | changed, new |
|
||||
|
||||
---
|
||||
|
||||
## S
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| scrutinise | examine, check |
|
||||
| select | choose |
|
||||
| solely | only |
|
||||
| specified | given, stated |
|
||||
| state | say |
|
||||
| statutory | legal, by law |
|
||||
| subject to | depending on |
|
||||
| submit | send, give |
|
||||
| subsequent to | after |
|
||||
| subsequently | later |
|
||||
| substantial | large, much |
|
||||
| sufficient | enough |
|
||||
| supplement | add to |
|
||||
| supplementary | extra |
|
||||
|
||||
---
|
||||
|
||||
## T-U
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| terminate | end, stop |
|
||||
| thereafter | then |
|
||||
| thereby | by this |
|
||||
| thus | so |
|
||||
| to date | so far |
|
||||
| transfer | move |
|
||||
| transmit | send |
|
||||
| ultimately | in the end |
|
||||
| undertake | agree, do |
|
||||
| uniform | same |
|
||||
| utilise | use |
|
||||
|
||||
---
|
||||
|
||||
## V-Z
|
||||
|
||||
| Complex | Plain Alternative |
|
||||
|---------|-------------------|
|
||||
| variation | change |
|
||||
| virtually | almost |
|
||||
| visualise | imagine, see |
|
||||
| ways and means | ways |
|
||||
| whatsoever | any |
|
||||
| with a view to | to |
|
||||
| with effect from | from |
|
||||
| with reference to | about |
|
||||
| with regard to | about |
|
||||
| with respect to | about |
|
||||
| zone | area |
|
||||
|
||||
---
|
||||
|
||||
## Phrases to Remove Entirely
|
||||
|
||||
These phrases often add nothing. Delete them:
|
||||
|
||||
- a total of
|
||||
- absolutely
|
||||
- actually
|
||||
- all things being equal
|
||||
- as a matter of fact
|
||||
- at the end of the day
|
||||
- at this moment in time
|
||||
- basically
|
||||
- currently (when "now" or nothing works)
|
||||
- I am of the opinion that (use: I think)
|
||||
- in due course (use: soon, or say when)
|
||||
- in the final analysis
|
||||
- it should be understood
|
||||
- last but not least
|
||||
- obviously
|
||||
- of course
|
||||
- quite
|
||||
- really
|
||||
- the fact of the matter is
|
||||
- to all intents and purposes
|
||||
- very
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: copywriting
|
||||
version: 1.0.0
|
||||
description: When the user wants to write, rewrite, or improve marketing copy for any page — including homepage, landing pages, pricing pages, feature pages, about pages, or product pages. Also use when the user says "write copy for," "improve this copy," "rewrite this page," "marketing copy," "headline help," or "CTA copy." For email copy, see email-sequence. For popup copy, see popup-cro.
|
||||
---
|
||||
|
||||
@@ -9,17 +10,18 @@ You are an expert conversion copywriter. Your goal is to write marketing copy th
|
||||
|
||||
## Before Writing
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Gather this context (ask if not provided):
|
||||
|
||||
### 1. Page Purpose
|
||||
- What type of page is this? (homepage, landing page, pricing, feature, about)
|
||||
- What type of page? (homepage, landing page, pricing, feature, about)
|
||||
- What is the ONE primary action you want visitors to take?
|
||||
- What's the secondary action (if any)?
|
||||
|
||||
### 2. Audience
|
||||
- Who is the ideal customer for this page?
|
||||
- Who is the ideal customer?
|
||||
- What problem are they trying to solve?
|
||||
- What have they already tried?
|
||||
- What objections or hesitations do they have?
|
||||
- What language do they use to describe their problem?
|
||||
|
||||
@@ -32,66 +34,49 @@ Gather this context (ask if not provided):
|
||||
### 4. Context
|
||||
- Where is traffic coming from? (ads, organic, email)
|
||||
- What do visitors already know before arriving?
|
||||
- What messaging are they seeing before this page?
|
||||
|
||||
---
|
||||
|
||||
## Copywriting Principles
|
||||
|
||||
### Clarity Over Cleverness
|
||||
- If you have to choose between clear and creative, choose clear
|
||||
- Every sentence should have one job
|
||||
- Remove words that don't add meaning
|
||||
If you have to choose between clear and creative, choose clear.
|
||||
|
||||
### Benefits Over Features
|
||||
- Features: What it does
|
||||
- Benefits: What that means for the customer
|
||||
- Always connect features to outcomes
|
||||
Features: What it does. Benefits: What that means for the customer.
|
||||
|
||||
### Specificity Over Vagueness
|
||||
- Vague: "Save time on your workflow"
|
||||
- Specific: "Cut your weekly reporting from 4 hours to 15 minutes"
|
||||
|
||||
### Customer Language Over Company Language
|
||||
- Use words your customers use
|
||||
- Avoid jargon unless your audience uses it
|
||||
- Mirror voice-of-customer from reviews, interviews, support tickets
|
||||
Use words your customers use. Mirror voice-of-customer from reviews, interviews, support tickets.
|
||||
|
||||
### One Idea Per Section
|
||||
- Don't try to say everything everywhere
|
||||
- Each section should advance one argument
|
||||
- Build a logical flow down the page
|
||||
Each section should advance one argument. Build a logical flow down the page.
|
||||
|
||||
---
|
||||
|
||||
## Writing Style Rules
|
||||
|
||||
Follow these core principles. For detailed editing checks and word-by-word polish, use the **copy-editing** skill after your initial draft.
|
||||
### Core Principles
|
||||
|
||||
### Core Style Principles
|
||||
|
||||
1. **Simple over complex** — Use everyday words. "Use" instead of "utilize," "help" instead of "facilitate."
|
||||
|
||||
2. **Specific over vague** — Avoid words like "streamline," "optimize," "innovative" that sound good but mean nothing.
|
||||
|
||||
3. **Active over passive** — "We generate reports" not "Reports are generated."
|
||||
|
||||
4. **Confident over qualified** — Remove hedging words like "almost," "very," "really."
|
||||
|
||||
5. **Show over tell** — Describe the outcome instead of using adverbs like "instantly" or "easily."
|
||||
|
||||
6. **Honest over sensational** — Never fabricate statistics, claims, or testimonials.
|
||||
1. **Simple over complex** — "Use" not "utilize," "help" not "facilitate"
|
||||
2. **Specific over vague** — Avoid "streamline," "optimize," "innovative"
|
||||
3. **Active over passive** — "We generate reports" not "Reports are generated"
|
||||
4. **Confident over qualified** — Remove "almost," "very," "really"
|
||||
5. **Show over tell** — Describe the outcome instead of using adverbs
|
||||
6. **Honest over sensational** — Never fabricate statistics or testimonials
|
||||
|
||||
### Quick Quality Check
|
||||
|
||||
Before finalizing, scan for:
|
||||
- Jargon that could confuse outsiders
|
||||
- Sentences trying to do too much (max 3 conjunctions)
|
||||
- Passive voice constructions
|
||||
- Exclamation points (remove them)
|
||||
- Marketing buzzwords without substance
|
||||
- Jargon that could confuse outsiders?
|
||||
- Sentences trying to do too much?
|
||||
- Passive voice constructions?
|
||||
- Exclamation points? (remove them)
|
||||
- Marketing buzzwords without substance?
|
||||
|
||||
For a thorough line-by-line review, run the copy through the **copy-editing** skill's Seven Sweeps framework.
|
||||
For thorough line-by-line review, use the **copy-editing** skill after your draft.
|
||||
|
||||
---
|
||||
|
||||
@@ -106,252 +91,73 @@ Get to the point. Don't bury the value in qualifications.
|
||||
|
||||
### Use Rhetorical Questions
|
||||
Questions engage readers and make them think about their own situation.
|
||||
- "Hate returning stuff to Amazon?"
|
||||
- "Tired of chasing approvals?"
|
||||
|
||||
✅ Hate returning stuff to Amazon?
|
||||
|
||||
✅ Need to share a screenshot?
|
||||
|
||||
✅ Tired of chasing approvals?
|
||||
|
||||
### Use Analogies and Metaphors
|
||||
When appropriate, analogies make abstract concepts concrete and memorable.
|
||||
|
||||
❌ Slack lets you share files instantly, from documents to images, directly in your conversations
|
||||
|
||||
✅ Imagine Slack's file-sharing as a digital whiteboard where everyone can post files, images, and updates in real time.
|
||||
### Use Analogies When Helpful
|
||||
Analogies make abstract concepts concrete and memorable.
|
||||
|
||||
### Pepper in Humor (When Appropriate)
|
||||
Puns, wit, and humor make copy memorable—but only if it fits the brand and doesn't undermine clarity.
|
||||
Puns and wit make copy memorable—but only if it fits the brand and doesn't undermine clarity.
|
||||
|
||||
---
|
||||
|
||||
## Page Structure Framework
|
||||
|
||||
### Above the Fold (First Screen)
|
||||
### Above the Fold
|
||||
|
||||
**Headline**
|
||||
- Your single most important message
|
||||
- Should communicate core value proposition
|
||||
- Communicate core value proposition
|
||||
- Specific > generic
|
||||
|
||||
**Headline Formulas:**
|
||||
**Example formulas:**
|
||||
- "{Achieve outcome} without {pain point}"
|
||||
- "The {category} for {audience}"
|
||||
- "Never {unpleasant event} again"
|
||||
- "{Question highlighting main pain point}"
|
||||
|
||||
**{Achieve desirable outcome} without {pain point}**
|
||||
*Example: Understand how users are really experiencing your site without drowning in numbers*
|
||||
**For comprehensive headline formulas**: See [references/copy-frameworks.md](references/copy-frameworks.md)
|
||||
|
||||
**The {opposite of usual process} way to {achieve desirable outcome}**
|
||||
*Example: The easiest way to turn your passion into income*
|
||||
|
||||
**Never {unpleasant event} again**
|
||||
*Example: Never miss a sales opportunity again*
|
||||
|
||||
**{Key feature/product type} for {target audience}**
|
||||
*Example: Advanced analytics for Shopify e-commerce*
|
||||
|
||||
**{Key feature/product type} for {target audience} to {what it's used for}**
|
||||
*Example: An online whiteboard for teams to ideate and brainstorm together*
|
||||
|
||||
**You don't have to {skills or resources} to {achieve desirable outcome}**
|
||||
*Example: With Ahrefs, you don't have to be an SEO pro to rank higher and get more traffic*
|
||||
|
||||
**{Achieve desirable outcome} by {how product makes it possible}**
|
||||
*Example: Generate more leads by seeing which companies visit your site*
|
||||
|
||||
**{Key benefit of your product}**
|
||||
*Example: Sound clear in online meetings*
|
||||
|
||||
**{Question highlighting the main pain point}**
|
||||
*Example: Hate returning stuff to Amazon?*
|
||||
|
||||
**Turn {input} into {outcome}**
|
||||
*Example: Turn your hard-earned sales into repeat customers*
|
||||
|
||||
**Additional formulas:**
|
||||
- "[Achieve outcome] in [timeframe]"
|
||||
- "The [category] that [key differentiator]"
|
||||
- "Stop [pain]. Start [pleasure]."
|
||||
- "[Number] [people] use [product] to [outcome]"
|
||||
**For natural transition phrases**: See [references/natural-transitions.md](references/natural-transitions.md)
|
||||
|
||||
**Subheadline**
|
||||
- Expands on the headline
|
||||
- Adds specificity or addresses secondary concern
|
||||
- Expands on headline
|
||||
- Adds specificity
|
||||
- 1-2 sentences max
|
||||
|
||||
**Primary CTA**
|
||||
- Action-oriented button text
|
||||
- Communicate what they get, not what they do
|
||||
- "Start Free Trial" > "Sign Up"
|
||||
- "Get Your Report" > "Submit"
|
||||
- Communicate what they get: "Start Free Trial" > "Sign Up"
|
||||
|
||||
**Supporting Visual**
|
||||
- Product screenshot, demo, or hero image
|
||||
- Should reinforce the message, not distract
|
||||
### Core Sections
|
||||
|
||||
### Social Proof Section
|
||||
| Section | Purpose |
|
||||
|---------|---------|
|
||||
| Social Proof | Build credibility (logos, stats, testimonials) |
|
||||
| Problem/Pain | Show you understand their situation |
|
||||
| Solution/Benefits | Connect to outcomes (3-5 key benefits) |
|
||||
| How It Works | Reduce perceived complexity (3-4 steps) |
|
||||
| Objection Handling | FAQ, comparisons, guarantees |
|
||||
| Final CTA | Recap value, repeat CTA, risk reversal |
|
||||
|
||||
Options (use 1-2):
|
||||
- Customer logos (recognizable > many)
|
||||
- Key metric ("10,000+ teams")
|
||||
- Short testimonial with attribution
|
||||
- Star rating with review count
|
||||
|
||||
### Problem/Pain Section
|
||||
|
||||
- Articulate the problem better than they can
|
||||
- Show you understand their situation
|
||||
- Create recognition ("that's exactly my problem")
|
||||
|
||||
Structure:
|
||||
- "You know the feeling..." or "If you're like most [role]..."
|
||||
- Describe the specific frustrations
|
||||
- Hint at the cost of not solving it
|
||||
|
||||
### Solution/Benefits Section
|
||||
|
||||
- Bridge from problem to your solution
|
||||
- Focus on 3-5 key benefits (not 10)
|
||||
- Each benefit: headline + short explanation + proof point if available
|
||||
|
||||
Format options:
|
||||
- Benefit blocks with icons
|
||||
- Before/after comparison
|
||||
- Feature → Benefit → Proof structure
|
||||
|
||||
### How It Works Section
|
||||
|
||||
- Reduce perceived complexity
|
||||
- 3-4 step process
|
||||
- Each step: simple action + outcome
|
||||
|
||||
Example:
|
||||
1. "Connect your tools (2 minutes)"
|
||||
2. "Set your preferences"
|
||||
3. "Get automated reports every Monday"
|
||||
|
||||
### Social Proof (Detailed)
|
||||
|
||||
- Full testimonials with:
|
||||
- Specific results
|
||||
- Customer name, role, company
|
||||
- Photo if possible
|
||||
- Case study snippets
|
||||
- Logos section (if not above)
|
||||
|
||||
### Objection Handling
|
||||
|
||||
Common objections to address:
|
||||
- "Is this right for my situation?"
|
||||
- "What if it doesn't work?"
|
||||
- "Is it hard to set up?"
|
||||
- "How is this different from X?"
|
||||
|
||||
Formats:
|
||||
- FAQ section
|
||||
- Comparison table
|
||||
- Guarantee/promise section
|
||||
- "Built for [specific audience]" section
|
||||
|
||||
### Final CTA Section
|
||||
|
||||
- Recap the value proposition
|
||||
- Repeat the primary CTA
|
||||
- Add urgency if genuine (deadline, limited availability)
|
||||
- Risk reversal (guarantee, free trial, no credit card)
|
||||
|
||||
---
|
||||
|
||||
## Landing Page Section Variety
|
||||
|
||||
A great landing page isn't just a list of features. Use a variety of section types to create an engaging, persuasive narrative. Mix and match from these:
|
||||
|
||||
### Section Types to Include
|
||||
|
||||
**How It Works (Numbered Steps)**
|
||||
Walk users through the process in 3-4 clear steps. Reduces perceived complexity and shows the path to value.
|
||||
|
||||
**Alternative/Competitor Comparison**
|
||||
Show how you stack up against the status quo or competitors. Tables, side-by-side comparisons, or "Unlike X, we..." sections.
|
||||
|
||||
**Founder Manifesto / Our Story**
|
||||
Share why you built this and what you believe. Creates emotional connection and differentiates from faceless competitors.
|
||||
|
||||
**Testimonials**
|
||||
Customer quotes with names, photos, and specific results. Multiple formats: quote cards, video testimonials, tweet embeds.
|
||||
|
||||
**Case Studies**
|
||||
Deeper stories of customer success. Problem → Solution → Results format with specific metrics.
|
||||
|
||||
**Use Cases**
|
||||
Show different ways the product is used. Helps visitors self-identify: "This is for people like me."
|
||||
|
||||
**Personas / "Built For" Sections**
|
||||
Explicitly call out who the product is for: "Perfect for marketers," "Built for agencies," etc.
|
||||
|
||||
**Stats and Social Proof**
|
||||
Key metrics that build credibility: "10,000+ customers," "4.9/5 rating," "$2M saved for customers."
|
||||
|
||||
**Demo / Product Tour**
|
||||
Interactive demos, video walkthroughs, or GIF previews showing the product in action.
|
||||
|
||||
**FAQ Section**
|
||||
Address common objections and questions. Good for SEO and reducing support burden.
|
||||
|
||||
**Integrations / Partners**
|
||||
Show what tools you connect with. Logos build credibility and answer "Will this work with my stack?"
|
||||
|
||||
**Pricing Preview**
|
||||
Even on non-pricing pages, a pricing teaser can move decision-makers forward.
|
||||
|
||||
**Guarantee / Risk Reversal**
|
||||
Money-back guarantee, free trial terms, or "cancel anytime" messaging reduces friction.
|
||||
|
||||
### Recommended Section Mix
|
||||
|
||||
For a landing page, aim for variety. Don't just stack features:
|
||||
|
||||
**Typical Feature-Heavy Page (Weak):**
|
||||
1. Hero
|
||||
2. Feature 1
|
||||
3. Feature 2
|
||||
4. Feature 3
|
||||
5. Feature 4
|
||||
6. CTA
|
||||
|
||||
**Varied, Engaging Page (Strong):**
|
||||
1. Hero with clear value prop
|
||||
2. Social proof bar (logos or stats)
|
||||
3. Problem/pain section
|
||||
4. How it works (3 steps)
|
||||
5. Key benefits (2-3, not 10)
|
||||
6. Testimonial
|
||||
7. Use cases or personas
|
||||
8. Comparison to alternatives
|
||||
9. Case study snippet
|
||||
10. FAQ
|
||||
11. Final CTA with guarantee
|
||||
**For detailed section types and page templates**: See [references/copy-frameworks.md](references/copy-frameworks.md)
|
||||
|
||||
---
|
||||
|
||||
## CTA Copy Guidelines
|
||||
|
||||
**Weak CTAs (avoid):**
|
||||
- Submit
|
||||
- Sign Up
|
||||
- Learn More
|
||||
- Click Here
|
||||
- Get Started
|
||||
- Submit, Sign Up, Learn More, Click Here, Get Started
|
||||
|
||||
**Strong CTAs (use):**
|
||||
- Start Free Trial
|
||||
- Get [Specific Thing]
|
||||
- See [Product] in Action
|
||||
- Create Your First [Thing]
|
||||
- Book My Demo
|
||||
- Download the Guide
|
||||
- Try It Free
|
||||
|
||||
**CTA formula:**
|
||||
[Action Verb] + [What They Get] + [Qualifier if needed]
|
||||
**Formula:** [Action Verb] + [What They Get] + [Qualifier if needed]
|
||||
|
||||
Examples:
|
||||
- "Start My Free Trial"
|
||||
@@ -360,72 +166,36 @@ Examples:
|
||||
|
||||
---
|
||||
|
||||
## Output Format
|
||||
|
||||
When writing copy, provide:
|
||||
|
||||
### Page Copy
|
||||
Organized by section with clear labels:
|
||||
- Headline
|
||||
- Subheadline
|
||||
- CTA
|
||||
- Section headers
|
||||
- Body copy
|
||||
- Secondary CTAs
|
||||
|
||||
### Annotations
|
||||
For key elements, explain:
|
||||
- Why you made this choice
|
||||
- What principle it applies
|
||||
- Alternatives considered
|
||||
|
||||
### Alternatives
|
||||
For headlines and CTAs, provide 2-3 options:
|
||||
- Option A: [copy] — [rationale]
|
||||
- Option B: [copy] — [rationale]
|
||||
- Option C: [copy] — [rationale]
|
||||
|
||||
### Meta Content (if relevant)
|
||||
- Page title (for SEO)
|
||||
- Meta description
|
||||
|
||||
---
|
||||
|
||||
## Page-Specific Guidance
|
||||
|
||||
### Homepage Copy
|
||||
### Homepage
|
||||
- Serve multiple audiences without being generic
|
||||
- Lead with broadest value proposition
|
||||
- Provide clear paths for different visitor intents
|
||||
- Balance "ready to buy" and "still researching"
|
||||
|
||||
### Landing Page Copy
|
||||
### Landing Page
|
||||
- Single message, single CTA
|
||||
- Match headline to ad/traffic source
|
||||
- Complete argument on one page
|
||||
- Remove distractions (often no nav)
|
||||
|
||||
### Pricing Page Copy
|
||||
### Pricing Page
|
||||
- Help visitors choose the right plan
|
||||
- Clarify what's included at each level
|
||||
- Address "which is right for me?" anxiety
|
||||
- Make recommended plan obvious
|
||||
|
||||
### Feature Page Copy
|
||||
- Connect feature to benefit to outcome
|
||||
### Feature Page
|
||||
- Connect feature → benefit → outcome
|
||||
- Show use cases and examples
|
||||
- Differentiate from competitors' versions
|
||||
- Clear path to try or buy
|
||||
|
||||
### About Page Copy
|
||||
### About Page
|
||||
- Tell the story of why you exist
|
||||
- Connect company mission to customer benefit
|
||||
- Build trust through transparency
|
||||
- Still include a CTA (it's still a marketing page)
|
||||
- Connect mission to customer benefit
|
||||
- Still include a CTA
|
||||
|
||||
---
|
||||
|
||||
## Voice and Tone Considerations
|
||||
## Voice and Tone
|
||||
|
||||
Before writing, establish:
|
||||
|
||||
@@ -439,17 +209,43 @@ Before writing, establish:
|
||||
- Bold or understated?
|
||||
- Technical or accessible?
|
||||
|
||||
Maintain consistency throughout, but adjust intensity:
|
||||
Maintain consistency, but adjust intensity:
|
||||
- Headlines can be bolder
|
||||
- Body copy should be clearer
|
||||
- CTAs should be action-oriented
|
||||
|
||||
---
|
||||
|
||||
## Output Format
|
||||
|
||||
When writing copy, provide:
|
||||
|
||||
### Page Copy
|
||||
Organized by section:
|
||||
- Headline, Subheadline, CTA
|
||||
- Section headers and body copy
|
||||
- Secondary CTAs
|
||||
|
||||
### Annotations
|
||||
For key elements, explain:
|
||||
- Why you made this choice
|
||||
- What principle it applies
|
||||
|
||||
### Alternatives
|
||||
For headlines and CTAs, provide 2-3 options:
|
||||
- Option A: [copy] — [rationale]
|
||||
- Option B: [copy] — [rationale]
|
||||
|
||||
### Meta Content (if relevant)
|
||||
- Page title (for SEO)
|
||||
- Meta description
|
||||
|
||||
---
|
||||
|
||||
## Related Skills
|
||||
|
||||
- **copy-editing**: For polishing and improving existing copy (use after writing your first draft)
|
||||
- **page-cro**: If the page structure/strategy needs work, not just copy
|
||||
- **copy-editing**: For polishing existing copy (use after your draft)
|
||||
- **page-cro**: If page structure/strategy needs work, not just copy
|
||||
- **email-sequence**: For email copywriting
|
||||
- **popup-cro**: For popup and modal copy
|
||||
- **ab-test-setup**: To test copy variations properly
|
||||
- **ab-test-setup**: To test copy variations
|
||||
|
||||
338
skills/copywriting/references/copy-frameworks.md
Normal file
338
skills/copywriting/references/copy-frameworks.md
Normal file
@@ -0,0 +1,338 @@
|
||||
# Copy Frameworks Reference
|
||||
|
||||
Headline formulas, page section types, and structural templates.
|
||||
|
||||
## Headline Formulas
|
||||
|
||||
### Outcome-Focused
|
||||
|
||||
**{Achieve desirable outcome} without {pain point}**
|
||||
> Understand how users are really experiencing your site without drowning in numbers
|
||||
|
||||
**{Achieve desirable outcome} by {how product makes it possible}**
|
||||
> Generate more leads by seeing which companies visit your site
|
||||
|
||||
**Turn {input} into {outcome}**
|
||||
> Turn your hard-earned sales into repeat customers
|
||||
|
||||
**[Achieve outcome] in [timeframe]**
|
||||
> Get your tax refund in 10 days
|
||||
|
||||
---
|
||||
|
||||
### Problem-Focused
|
||||
|
||||
**Never {unpleasant event} again**
|
||||
> Never miss a sales opportunity again
|
||||
|
||||
**{Question highlighting the main pain point}**
|
||||
> Hate returning stuff to Amazon?
|
||||
|
||||
**Stop [pain]. Start [pleasure].**
|
||||
> Stop chasing invoices. Start getting paid on time.
|
||||
|
||||
---
|
||||
|
||||
### Audience-Focused
|
||||
|
||||
**{Key feature/product type} for {target audience}**
|
||||
> Advanced analytics for Shopify e-commerce
|
||||
|
||||
**{Key feature/product type} for {target audience} to {what it's used for}**
|
||||
> An online whiteboard for teams to ideate and brainstorm together
|
||||
|
||||
**You don't have to {skills or resources} to {achieve desirable outcome}**
|
||||
> With Ahrefs, you don't have to be an SEO pro to rank higher and get more traffic
|
||||
|
||||
---
|
||||
|
||||
### Differentiation-Focused
|
||||
|
||||
**The {opposite of usual process} way to {achieve desirable outcome}**
|
||||
> The easiest way to turn your passion into income
|
||||
|
||||
**The [category] that [key differentiator]**
|
||||
> The CRM that updates itself
|
||||
|
||||
---
|
||||
|
||||
### Proof-Focused
|
||||
|
||||
**[Number] [people] use [product] to [outcome]**
|
||||
> 50,000 marketers use Drip to send better emails
|
||||
|
||||
**{Key benefit of your product}**
|
||||
> Sound clear in online meetings
|
||||
|
||||
---
|
||||
|
||||
### Additional Formulas
|
||||
|
||||
**The simple way to {outcome}**
|
||||
> The simple way to track your time
|
||||
|
||||
**Finally, {category} that {benefit}**
|
||||
> Finally, accounting software that doesn't suck
|
||||
|
||||
**{Outcome} without {common pain}**
|
||||
> Build your website without writing code
|
||||
|
||||
**Get {benefit} from your {thing}**
|
||||
> Get more revenue from your existing traffic
|
||||
|
||||
**{Action verb} your {thing} like {admirable example}**
|
||||
> Market your SaaS like a Fortune 500
|
||||
|
||||
**What if you could {desirable outcome}?**
|
||||
> What if you could close deals 30% faster?
|
||||
|
||||
**Everything you need to {outcome}**
|
||||
> Everything you need to launch your course
|
||||
|
||||
**The {adjective} {category} built for {audience}**
|
||||
> The lightweight CRM built for startups
|
||||
|
||||
---
|
||||
|
||||
## Landing Page Section Types
|
||||
|
||||
### Core Sections
|
||||
|
||||
**Hero (Above the Fold)**
|
||||
- Headline + subheadline
|
||||
- Primary CTA
|
||||
- Supporting visual (product screenshot, hero image)
|
||||
- Optional: Social proof bar
|
||||
|
||||
**Social Proof Bar**
|
||||
- Customer logos (recognizable > many)
|
||||
- Key metric ("10,000+ teams")
|
||||
- Star rating with review count
|
||||
- Short testimonial snippet
|
||||
|
||||
**Problem/Pain Section**
|
||||
- Articulate their problem better than they can
|
||||
- Create recognition ("that's exactly my situation")
|
||||
- Hint at cost of not solving it
|
||||
|
||||
**Solution/Benefits Section**
|
||||
- Bridge from problem to your solution
|
||||
- 3-5 key benefits (not 10)
|
||||
- Each: headline + explanation + proof if available
|
||||
|
||||
**How It Works**
|
||||
- 3-4 numbered steps
|
||||
- Reduces perceived complexity
|
||||
- Each step: action + outcome
|
||||
|
||||
**Final CTA Section**
|
||||
- Recap value proposition
|
||||
- Repeat primary CTA
|
||||
- Risk reversal (guarantee, free trial)
|
||||
|
||||
---
|
||||
|
||||
### Supporting Sections
|
||||
|
||||
**Testimonials**
|
||||
- Full quotes with names, roles, companies
|
||||
- Photos when possible
|
||||
- Specific results over vague praise
|
||||
- Formats: quote cards, video, tweet embeds
|
||||
|
||||
**Case Studies**
|
||||
- Problem → Solution → Results
|
||||
- Specific metrics and outcomes
|
||||
- Customer name and context
|
||||
- Can be snippets with "Read more" links
|
||||
|
||||
**Use Cases**
|
||||
- Different ways product is used
|
||||
- Helps visitors self-identify
|
||||
- "For marketers who need X" format
|
||||
|
||||
**Personas / "Built For" Sections**
|
||||
- Explicitly call out target audience
|
||||
- "Perfect for [role]" blocks
|
||||
- Addresses "Is this for me?" question
|
||||
|
||||
**FAQ Section**
|
||||
- Address common objections
|
||||
- Good for SEO
|
||||
- Reduces support burden
|
||||
- 5-10 most common questions
|
||||
|
||||
**Comparison Section**
|
||||
- vs. competitors (name them or don't)
|
||||
- vs. status quo (spreadsheets, manual processes)
|
||||
- Tables or side-by-side format
|
||||
|
||||
**Integrations / Partners**
|
||||
- Logos of tools you connect with
|
||||
- "Works with your stack" messaging
|
||||
- Builds credibility
|
||||
|
||||
**Founder Story / Manifesto**
|
||||
- Why you built this
|
||||
- What you believe
|
||||
- Emotional connection
|
||||
- Differentiates from faceless competitors
|
||||
|
||||
**Demo / Product Tour**
|
||||
- Interactive demos
|
||||
- Video walkthroughs
|
||||
- GIF previews
|
||||
- Shows product in action
|
||||
|
||||
**Pricing Preview**
|
||||
- Teaser even on non-pricing pages
|
||||
- Starting price or "from $X/mo"
|
||||
- Moves decision-makers forward
|
||||
|
||||
**Guarantee / Risk Reversal**
|
||||
- Money-back guarantee
|
||||
- Free trial terms
|
||||
- "Cancel anytime"
|
||||
- Reduces friction
|
||||
|
||||
**Stats Section**
|
||||
- Key metrics that build credibility
|
||||
- "10,000+ customers"
|
||||
- "4.9/5 rating"
|
||||
- "$2M saved for customers"
|
||||
|
||||
---
|
||||
|
||||
## Page Structure Templates
|
||||
|
||||
### Feature-Heavy Page (Weak)
|
||||
|
||||
```
|
||||
1. Hero
|
||||
2. Feature 1
|
||||
3. Feature 2
|
||||
4. Feature 3
|
||||
5. Feature 4
|
||||
6. CTA
|
||||
```
|
||||
|
||||
This is a list, not a persuasive narrative.
|
||||
|
||||
---
|
||||
|
||||
### Varied, Engaging Page (Strong)
|
||||
|
||||
```
|
||||
1. Hero with clear value prop
|
||||
2. Social proof bar (logos or stats)
|
||||
3. Problem/pain section
|
||||
4. How it works (3 steps)
|
||||
5. Key benefits (2-3, not 10)
|
||||
6. Testimonial
|
||||
7. Use cases or personas
|
||||
8. Comparison to alternatives
|
||||
9. Case study snippet
|
||||
10. FAQ
|
||||
11. Final CTA with guarantee
|
||||
```
|
||||
|
||||
This tells a story and addresses objections.
|
||||
|
||||
---
|
||||
|
||||
### Compact Landing Page
|
||||
|
||||
```
|
||||
1. Hero (headline, subhead, CTA, image)
|
||||
2. Social proof bar
|
||||
3. 3 key benefits with icons
|
||||
4. Testimonial
|
||||
5. How it works (3 steps)
|
||||
6. Final CTA with guarantee
|
||||
```
|
||||
|
||||
Good for ad landing pages where brevity matters.
|
||||
|
||||
---
|
||||
|
||||
### Enterprise/B2B Landing Page
|
||||
|
||||
```
|
||||
1. Hero (outcome-focused headline)
|
||||
2. Logo bar (recognizable companies)
|
||||
3. Problem section (business pain)
|
||||
4. Solution overview
|
||||
5. Use cases by role/department
|
||||
6. Security/compliance section
|
||||
7. Integration logos
|
||||
8. Case study with metrics
|
||||
9. ROI/value section
|
||||
10. Contact/demo CTA
|
||||
```
|
||||
|
||||
Addresses enterprise buyer concerns.
|
||||
|
||||
---
|
||||
|
||||
### Product Launch Page
|
||||
|
||||
```
|
||||
1. Hero with launch announcement
|
||||
2. Video demo or walkthrough
|
||||
3. Feature highlights (3-5)
|
||||
4. Before/after comparison
|
||||
5. Early testimonials
|
||||
6. Launch pricing or early access offer
|
||||
7. CTA with urgency
|
||||
```
|
||||
|
||||
Good for ProductHunt, launches, or announcements.
|
||||
|
||||
---
|
||||
|
||||
## Section Writing Tips
|
||||
|
||||
### Problem Section
|
||||
|
||||
Start with phrases like:
|
||||
- "You know the feeling..."
|
||||
- "If you're like most [role]..."
|
||||
- "Every day, [audience] struggles with..."
|
||||
- "We've all been there..."
|
||||
|
||||
Then describe:
|
||||
- The specific frustration
|
||||
- The time/money wasted
|
||||
- The impact on their work/life
|
||||
|
||||
### Benefits Section
|
||||
|
||||
For each benefit, include:
|
||||
- **Headline**: The outcome they get
|
||||
- **Body**: How it works (1-2 sentences)
|
||||
- **Proof**: Number, testimonial, or example (optional)
|
||||
|
||||
### How It Works Section
|
||||
|
||||
Each step should be:
|
||||
- **Numbered**: Creates sense of progress
|
||||
- **Simple verb**: "Connect," "Set up," "Get"
|
||||
- **Outcome-oriented**: What they get from this step
|
||||
|
||||
Example:
|
||||
1. Connect your tools (takes 2 minutes)
|
||||
2. Set your preferences
|
||||
3. Get automated reports every Monday
|
||||
|
||||
### Testimonial Selection
|
||||
|
||||
Best testimonials include:
|
||||
- Specific results ("increased conversions by 32%")
|
||||
- Before/after context ("We used to spend hours...")
|
||||
- Role + company for credibility
|
||||
- Something quotable and specific
|
||||
|
||||
Avoid testimonials that just say:
|
||||
- "Great product!"
|
||||
- "Love it!"
|
||||
- "Easy to use!"
|
||||
252
skills/copywriting/references/natural-transitions.md
Normal file
252
skills/copywriting/references/natural-transitions.md
Normal file
@@ -0,0 +1,252 @@
|
||||
# Natural Transitions
|
||||
|
||||
Transitional phrases to guide readers through your content. Good signposting improves readability, user engagement, and helps search engines understand content structure.
|
||||
|
||||
Adapted from: University of Manchester Academic Phrasebank (2023), Plain English Campaign, web content best practices
|
||||
|
||||
---
|
||||
|
||||
## Previewing Content Structure
|
||||
|
||||
Use to orient readers and set expectations:
|
||||
|
||||
- Here's what we'll cover...
|
||||
- This guide walks you through...
|
||||
- Below, you'll find...
|
||||
- We'll start with X, then move to Y...
|
||||
- First, let's look at...
|
||||
- Let's break this down step by step.
|
||||
- The sections below explain...
|
||||
|
||||
---
|
||||
|
||||
## Introducing a New Topic
|
||||
|
||||
- When it comes to X,...
|
||||
- Regarding X,...
|
||||
- Speaking of X,...
|
||||
- Now let's talk about X.
|
||||
- Another key factor is...
|
||||
- X is worth exploring because...
|
||||
|
||||
---
|
||||
|
||||
## Referring Back
|
||||
|
||||
Use to connect ideas and reinforce key points:
|
||||
|
||||
- As mentioned earlier,...
|
||||
- As we covered above,...
|
||||
- Remember when we discussed X?
|
||||
- Building on that point,...
|
||||
- Going back to X,...
|
||||
- Earlier, we explained that...
|
||||
|
||||
---
|
||||
|
||||
## Moving Between Sections
|
||||
|
||||
- Now let's look at...
|
||||
- Next up:...
|
||||
- Moving on to...
|
||||
- With that covered, let's turn to...
|
||||
- Now that you understand X, here's Y.
|
||||
- That brings us to...
|
||||
|
||||
---
|
||||
|
||||
## Indicating Addition
|
||||
|
||||
- Also,...
|
||||
- Plus,...
|
||||
- On top of that,...
|
||||
- What's more,...
|
||||
- Another benefit is...
|
||||
- Beyond that,...
|
||||
- In addition,...
|
||||
- There's also...
|
||||
|
||||
**Note:** Use "moreover" and "furthermore" sparingly. They can sound AI-generated when overused.
|
||||
|
||||
---
|
||||
|
||||
## Indicating Contrast
|
||||
|
||||
- However,...
|
||||
- But,...
|
||||
- That said,...
|
||||
- On the flip side,...
|
||||
- In contrast,...
|
||||
- Unlike X, Y...
|
||||
- While X is true, Y...
|
||||
- Despite this,...
|
||||
|
||||
---
|
||||
|
||||
## Indicating Similarity
|
||||
|
||||
- Similarly,...
|
||||
- Likewise,...
|
||||
- In the same way,...
|
||||
- Just like X, Y also...
|
||||
- This mirrors...
|
||||
- The same applies to...
|
||||
|
||||
---
|
||||
|
||||
## Indicating Cause and Effect
|
||||
|
||||
- So,...
|
||||
- This means...
|
||||
- As a result,...
|
||||
- That's why...
|
||||
- Because of this,...
|
||||
- This leads to...
|
||||
- The outcome?...
|
||||
- Here's what happens:...
|
||||
|
||||
---
|
||||
|
||||
## Giving Examples
|
||||
|
||||
- For example,...
|
||||
- For instance,...
|
||||
- Here's an example:...
|
||||
- Take X, for instance.
|
||||
- Consider this:...
|
||||
- A good example is...
|
||||
- To illustrate,...
|
||||
- Like when...
|
||||
- Say you want to...
|
||||
|
||||
---
|
||||
|
||||
## Emphasising Key Points
|
||||
|
||||
- Here's the key takeaway:...
|
||||
- The important thing is...
|
||||
- What matters most is...
|
||||
- Don't miss this:...
|
||||
- Pay attention to...
|
||||
- This is critical:...
|
||||
- The bottom line?...
|
||||
|
||||
---
|
||||
|
||||
## Providing Evidence
|
||||
|
||||
Use when citing sources, data, or expert opinions:
|
||||
|
||||
### Neutral attribution
|
||||
- According to [Source],...
|
||||
- [Source] reports that...
|
||||
- Research shows that...
|
||||
- Data from [Source] indicates...
|
||||
- A study by [Source] found...
|
||||
|
||||
### Expert quotes
|
||||
- As [Expert] puts it,...
|
||||
- [Expert] explains,...
|
||||
- In the words of [Expert],...
|
||||
- [Expert] notes that...
|
||||
|
||||
### Supporting claims
|
||||
- This is backed by...
|
||||
- Evidence suggests...
|
||||
- The numbers confirm...
|
||||
- This aligns with findings from...
|
||||
|
||||
---
|
||||
|
||||
## Summarising Sections
|
||||
|
||||
- To recap,...
|
||||
- Here's the short version:...
|
||||
- In short,...
|
||||
- The takeaway?...
|
||||
- So what does this mean?...
|
||||
- Let's pull this together:...
|
||||
- Quick summary:...
|
||||
|
||||
---
|
||||
|
||||
## Concluding Content
|
||||
|
||||
- Wrapping up,...
|
||||
- The bottom line is...
|
||||
- Here's what to do next:...
|
||||
- To sum up,...
|
||||
- Final thoughts:...
|
||||
- Ready to get started?...
|
||||
- Now it's your turn.
|
||||
|
||||
**Note:** Avoid "In conclusion" at the start of a paragraph. It's overused and signals AI writing.
|
||||
|
||||
---
|
||||
|
||||
## Question-Based Transitions
|
||||
|
||||
Useful for conversational tone and featured snippet optimization:
|
||||
|
||||
- So what does this mean for you?
|
||||
- But why does this matter?
|
||||
- How do you actually do this?
|
||||
- What's the catch?
|
||||
- Sound complicated? It's not.
|
||||
- Wondering where to start?
|
||||
- Still not sure? Here's the breakdown.
|
||||
|
||||
---
|
||||
|
||||
## List Introductions
|
||||
|
||||
For numbered lists and step-by-step content:
|
||||
|
||||
- Here's how to do it:
|
||||
- Follow these steps:
|
||||
- The process is straightforward:
|
||||
- Here's what you need to know:
|
||||
- Key things to consider:
|
||||
- The main factors are:
|
||||
|
||||
---
|
||||
|
||||
## Hedging Language
|
||||
|
||||
For claims that need qualification or aren't absolute:
|
||||
|
||||
- may, might, could
|
||||
- tends to, generally
|
||||
- often, usually, typically
|
||||
- in most cases
|
||||
- it appears that
|
||||
- evidence suggests
|
||||
- this can help
|
||||
- many experts believe
|
||||
|
||||
---
|
||||
|
||||
## Best Practice Guidelines
|
||||
|
||||
1. **Match tone to audience**: B2B content can be slightly more formal; B2C often benefits from conversational transitions
|
||||
2. **Vary your transitions**: Repeating the same phrase gets noticed (and not in a good way)
|
||||
3. **Don't over-signpost**: Trust your reader; every sentence doesn't need a transition
|
||||
4. **Use for scannability**: Transitions at paragraph starts help skimmers navigate
|
||||
5. **Keep it natural**: Read aloud; if it sounds forced, simplify
|
||||
6. **Front-load key info**: Put the important word or phrase early in the transition
|
||||
|
||||
---
|
||||
|
||||
## Transitions to Avoid (AI Tells)
|
||||
|
||||
These phrases are overused in AI-generated content:
|
||||
|
||||
- "That being said,..."
|
||||
- "It's worth noting that..."
|
||||
- "At its core,..."
|
||||
- "In today's digital landscape,..."
|
||||
- "When it comes to the realm of..."
|
||||
- "This begs the question..."
|
||||
- "Let's delve into..."
|
||||
|
||||
See the seo-audit skill's `references/ai-writing-detection.md` for a complete list of AI writing tells.
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: email-sequence
|
||||
version: 1.0.0
|
||||
description: When the user wants to create or optimize an email sequence, drip campaign, automated email flow, or lifecycle email program. Also use when the user mentions "email sequence," "drip campaign," "nurture sequence," "onboarding emails," "welcome sequence," "re-engagement emails," "email automation," or "lifecycle emails." For in-app onboarding, see onboarding-cro.
|
||||
---
|
||||
|
||||
@@ -9,6 +10,9 @@ You are an expert in email marketing and automation. Your goal is to create emai
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before creating a sequence, understand:
|
||||
|
||||
1. **Sequence Type**
|
||||
@@ -104,675 +108,104 @@ Consider:
|
||||
|
||||
---
|
||||
|
||||
## Sequence Templates
|
||||
## Sequence Types Overview
|
||||
|
||||
### Welcome Sequence (Post-Signup)
|
||||
**Length**: 5-7 emails over 12-14 days
|
||||
**Goal**: Activate, build trust, convert
|
||||
|
||||
**Email 1: Welcome (Immediate)**
|
||||
- Subject: Welcome to [Product] — here's your first step
|
||||
- Deliver what was promised (lead magnet, access, etc.)
|
||||
- Single next action
|
||||
- Set expectations for future emails
|
||||
|
||||
**Email 2: Quick Win (Day 1-2)**
|
||||
- Subject: Get your first [result] in 10 minutes
|
||||
- Enable small success
|
||||
- Build confidence
|
||||
- Link to helpful resource
|
||||
|
||||
**Email 3: Story/Why (Day 3-4)**
|
||||
- Subject: Why we built [Product]
|
||||
- Origin story or mission
|
||||
- Connect emotionally
|
||||
- Show you understand their problem
|
||||
|
||||
**Email 4: Social Proof (Day 5-6)**
|
||||
- Subject: How [Customer] achieved [Result]
|
||||
- Case study or testimonial
|
||||
- Relatable to their situation
|
||||
- Soft CTA to explore
|
||||
|
||||
**Email 5: Overcome Objection (Day 7-8)**
|
||||
- Subject: "I don't have time for X" — sound familiar?
|
||||
- Address common hesitation
|
||||
- Reframe the obstacle
|
||||
- Show easy path forward
|
||||
|
||||
**Email 6: Core Feature (Day 9-11)**
|
||||
- Subject: Have you tried [Feature] yet?
|
||||
- Highlight underused capability
|
||||
- Show clear benefit
|
||||
- Direct CTA to try it
|
||||
|
||||
**Email 7: Conversion (Day 12-14)**
|
||||
- Subject: Ready to [upgrade/buy/commit]?
|
||||
- Summarize value
|
||||
- Clear offer
|
||||
- Urgency if appropriate
|
||||
- Risk reversal (guarantee, trial)
|
||||
|
||||
---
|
||||
Key emails:
|
||||
1. Welcome + deliver promised value (immediate)
|
||||
2. Quick win (day 1-2)
|
||||
3. Story/Why (day 3-4)
|
||||
4. Social proof (day 5-6)
|
||||
5. Overcome objection (day 7-8)
|
||||
6. Core feature highlight (day 9-11)
|
||||
7. Conversion (day 12-14)
|
||||
|
||||
### Lead Nurture Sequence (Pre-Sale)
|
||||
**Length**: 6-8 emails over 2-3 weeks
|
||||
**Goal**: Build trust, demonstrate expertise, convert
|
||||
|
||||
**Email 1: Deliver + Introduce (Immediate)**
|
||||
- Deliver the lead magnet
|
||||
- Brief intro to who you are
|
||||
- Preview what's coming
|
||||
|
||||
**Email 2: Expand on Topic (Day 2-3)**
|
||||
- Related insight to lead magnet
|
||||
- Establish expertise
|
||||
- Light CTA to content
|
||||
|
||||
**Email 3: Problem Deep-Dive (Day 4-5)**
|
||||
- Articulate their problem deeply
|
||||
- Show you understand
|
||||
- Hint at solution
|
||||
|
||||
**Email 4: Solution Framework (Day 6-8)**
|
||||
- Your approach/methodology
|
||||
- Educational, not salesy
|
||||
- Builds toward your product
|
||||
|
||||
**Email 5: Case Study (Day 9-11)**
|
||||
- Real results from real customer
|
||||
- Specific and relatable
|
||||
- Soft CTA
|
||||
|
||||
**Email 6: Differentiation (Day 12-14)**
|
||||
- Why your approach is different
|
||||
- Address alternatives
|
||||
- Build preference
|
||||
|
||||
**Email 7: Objection Handler (Day 15-18)**
|
||||
- Common concern addressed
|
||||
- FAQ or myth-busting
|
||||
- Reduce friction
|
||||
|
||||
**Email 8: Direct Offer (Day 19-21)**
|
||||
- Clear pitch
|
||||
- Strong value proposition
|
||||
- Specific CTA
|
||||
- Urgency if available
|
||||
|
||||
---
|
||||
Key emails:
|
||||
1. Deliver lead magnet + intro (immediate)
|
||||
2. Expand on topic (day 2-3)
|
||||
3. Problem deep-dive (day 4-5)
|
||||
4. Solution framework (day 6-8)
|
||||
5. Case study (day 9-11)
|
||||
6. Differentiation (day 12-14)
|
||||
7. Objection handler (day 15-18)
|
||||
8. Direct offer (day 19-21)
|
||||
|
||||
### Re-Engagement Sequence
|
||||
**Length**: 3-4 emails over 2 weeks
|
||||
**Trigger**: 30-60 days of inactivity
|
||||
**Goal**: Win back or clean list
|
||||
|
||||
**Email 1: Check-In (Day 30-60 of inactivity)**
|
||||
- Subject: Is everything okay, [Name]?
|
||||
- Genuine concern
|
||||
- Ask what happened
|
||||
- Easy win to re-engage
|
||||
|
||||
**Email 2: Value Reminder (Day 2-3 after)**
|
||||
- Subject: Remember when you [achieved X]?
|
||||
- Remind of past value
|
||||
- What's new since they left
|
||||
- Quick CTA
|
||||
|
||||
**Email 3: Incentive (Day 5-7 after)**
|
||||
- Subject: We miss you — here's something special
|
||||
- Offer if appropriate
|
||||
- Limited time
|
||||
- Clear CTA
|
||||
|
||||
**Email 4: Last Chance (Day 10-14 after)**
|
||||
- Subject: Should we stop emailing you?
|
||||
- Honest and direct
|
||||
- One-click to stay or go
|
||||
- Clean the list if no response
|
||||
|
||||
---
|
||||
Key emails:
|
||||
1. Check-in (genuine concern)
|
||||
2. Value reminder (what's new)
|
||||
3. Incentive (special offer)
|
||||
4. Last chance (stay or unsubscribe)
|
||||
|
||||
### Onboarding Sequence (Product Users)
|
||||
**Length**: 5-7 emails over 14 days
|
||||
**Goal**: Activate, drive to aha moment, upgrade
|
||||
**Note**: Coordinate with in-app onboarding—email supports, doesn't duplicate
|
||||
|
||||
Coordinate with in-app onboarding. Email supports, doesn't duplicate.
|
||||
Key emails:
|
||||
1. Welcome + first step (immediate)
|
||||
2. Getting started help (day 1)
|
||||
3. Feature highlight (day 2-3)
|
||||
4. Success story (day 4-5)
|
||||
5. Check-in (day 7)
|
||||
6. Advanced tip (day 10-12)
|
||||
7. Upgrade/expand (day 14+)
|
||||
|
||||
**Email 1: Welcome + First Step (Immediate)**
|
||||
- Confirm signup
|
||||
- One critical action
|
||||
- Link directly to that action
|
||||
|
||||
**Email 2: Getting Started Help (Day 1)**
|
||||
- If they haven't completed step 1
|
||||
- Quick tip or video
|
||||
- Support option
|
||||
|
||||
**Email 3: Feature Highlight (Day 2-3)**
|
||||
- Key feature they should know
|
||||
- Specific use case
|
||||
- In-app link
|
||||
|
||||
**Email 4: Success Story (Day 4-5)**
|
||||
- Customer who succeeded
|
||||
- Relatable journey
|
||||
- Motivational
|
||||
|
||||
**Email 5: Check-In (Day 7)**
|
||||
- How's it going?
|
||||
- Ask for feedback
|
||||
- Offer help
|
||||
|
||||
**Email 6: Advanced Tip (Day 10-12)**
|
||||
- Power feature
|
||||
- For engaged users
|
||||
- Level-up content
|
||||
|
||||
**Email 7: Upgrade/Expand (Day 14+)**
|
||||
- For trial users: conversion push
|
||||
- For free users: upgrade prompt
|
||||
- For paid: expansion opportunity
|
||||
**For detailed templates**: See [references/sequence-templates.md](references/sequence-templates.md)
|
||||
|
||||
---
|
||||
|
||||
## Email Types Reference
|
||||
|
||||
A comprehensive guide to lifecycle and campaign emails. Use this as an audit checklist and implementation reference.
|
||||
## Email Types by Category
|
||||
|
||||
### Onboarding Emails
|
||||
|
||||
#### New Users Series
|
||||
**Trigger**: User signs up (free or trial)
|
||||
**Goal**: Activate user, drive to aha moment
|
||||
**Typical sequence**: 5-7 emails over 14 days
|
||||
|
||||
- Email 1: Welcome + single next step (immediate)
|
||||
- Email 2: Quick win / getting started (day 1)
|
||||
- Email 3: Key feature highlight (day 3)
|
||||
- Email 4: Success story / social proof (day 5)
|
||||
- Email 5: Check-in + offer help (day 7)
|
||||
- Email 6: Advanced tip (day 10)
|
||||
- Email 7: Upgrade prompt or next milestone (day 14)
|
||||
|
||||
**Key metrics**: Activation rate, feature adoption
|
||||
|
||||
---
|
||||
|
||||
#### New Customers Series
|
||||
**Trigger**: User converts to paid
|
||||
**Goal**: Reinforce purchase decision, drive adoption, reduce early churn
|
||||
**Typical sequence**: 3-5 emails over 14 days
|
||||
|
||||
- Email 1: Thank you + what's next (immediate)
|
||||
- Email 2: Getting full value — setup checklist (day 2)
|
||||
- Email 3: Pro tips for paid features (day 5)
|
||||
- Email 4: Success story from similar customer (day 7)
|
||||
- Email 5: Check-in + introduce support resources (day 14)
|
||||
|
||||
**Key point**: Different from new user series—they've committed. Focus on reinforcement and expansion, not conversion.
|
||||
|
||||
---
|
||||
|
||||
#### Key Onboarding Step Reminder
|
||||
**Trigger**: User hasn't completed critical setup step after X time
|
||||
**Goal**: Nudge completion of high-value action
|
||||
**Format**: Single email or 2-3 email mini-sequence
|
||||
|
||||
**Example triggers**:
|
||||
- Hasn't connected integration after 48 hours
|
||||
- Hasn't invited team member after 3 days
|
||||
- Hasn't completed profile after 24 hours
|
||||
|
||||
**Copy approach**:
|
||||
- Remind them what they started
|
||||
- Explain why this step matters
|
||||
- Make it easy (direct link to complete)
|
||||
- Offer help if stuck
|
||||
|
||||
---
|
||||
|
||||
#### New User Invite
|
||||
**Trigger**: Existing user invites teammate
|
||||
**Goal**: Activate the invited user
|
||||
**Recipient**: The person being invited
|
||||
|
||||
- Email 1: You've been invited (immediate)
|
||||
- Email 2: Reminder if not accepted (day 2)
|
||||
- Email 3: Final reminder (day 5)
|
||||
|
||||
**Copy approach**:
|
||||
- Personalize with inviter's name
|
||||
- Explain what they're joining
|
||||
- Single CTA to accept invite
|
||||
- Social proof optional
|
||||
|
||||
---
|
||||
- New users series
|
||||
- New customers series
|
||||
- Key onboarding step reminders
|
||||
- New user invites
|
||||
|
||||
### Retention Emails
|
||||
|
||||
#### Upgrade to Paid
|
||||
**Trigger**: Free user shows engagement, or trial ending
|
||||
**Goal**: Convert free to paid
|
||||
**Typical sequence**: 3-5 emails
|
||||
|
||||
**Trigger options**:
|
||||
- Time-based (trial day 10, 12, 14)
|
||||
- Behavior-based (hit usage limit, used premium feature)
|
||||
- Engagement-based (highly active free user)
|
||||
|
||||
**Sequence structure**:
|
||||
- Value summary: What they've accomplished
|
||||
- Feature comparison: What they're missing
|
||||
- Social proof: Who else upgraded
|
||||
- Urgency: Trial ending, limited offer
|
||||
- Final: Last chance + easy path
|
||||
|
||||
---
|
||||
|
||||
#### Upgrade to Higher Plan
|
||||
**Trigger**: User approaching plan limits or using features available on higher tier
|
||||
**Goal**: Upsell to next tier
|
||||
**Format**: Single email or 2-3 email sequence
|
||||
|
||||
**Trigger examples**:
|
||||
- 80% of seat limit reached
|
||||
- 90% of storage/usage limit
|
||||
- Tried to use higher-tier feature
|
||||
- Power user behavior patterns
|
||||
|
||||
**Copy approach**:
|
||||
- Acknowledge their growth (positive framing)
|
||||
- Show what next tier unlocks
|
||||
- Quantify value vs. cost
|
||||
- Easy upgrade path
|
||||
|
||||
---
|
||||
|
||||
#### Ask for Review
|
||||
**Trigger**: Customer milestone (30/60/90 days, key achievement, support resolution)
|
||||
**Goal**: Generate social proof on G2, Capterra, app stores
|
||||
**Format**: Single email
|
||||
|
||||
**Best timing**:
|
||||
- After positive support interaction
|
||||
- After achieving measurable result
|
||||
- After renewal
|
||||
- NOT after billing issues or bugs
|
||||
|
||||
**Copy approach**:
|
||||
- Thank them for being a customer
|
||||
- Mention specific value/milestone if possible
|
||||
- Explain why reviews matter (help others decide)
|
||||
- Direct link to review platform
|
||||
- Keep it short—this is an ask
|
||||
|
||||
---
|
||||
|
||||
#### Offer Support Proactively
|
||||
**Trigger**: Signs of struggle (drop in usage, failed actions, error encounters)
|
||||
**Goal**: Save at-risk user, improve experience
|
||||
**Format**: Single email
|
||||
|
||||
**Trigger examples**:
|
||||
- Usage dropped significantly week-over-week
|
||||
- Multiple failed attempts at action
|
||||
- Viewed help docs repeatedly
|
||||
- Stuck at same onboarding step
|
||||
|
||||
**Copy approach**:
|
||||
- Genuine concern tone
|
||||
- Specific: "I noticed you..." (if data allows)
|
||||
- Offer direct help (not just link to docs)
|
||||
- Personal from support or CSM
|
||||
- No sales pitch—pure help
|
||||
|
||||
---
|
||||
|
||||
#### Product Usage Report
|
||||
**Trigger**: Time-based (weekly, monthly, quarterly)
|
||||
**Goal**: Demonstrate value, drive engagement, reduce churn
|
||||
**Format**: Single email, recurring
|
||||
|
||||
**What to include**:
|
||||
- Key metrics/activity summary
|
||||
- Comparison to previous period
|
||||
- Achievements/milestones
|
||||
- Suggestions for improvement
|
||||
- Light CTA to explore more
|
||||
|
||||
**Examples**:
|
||||
- "You saved X hours this month"
|
||||
- "Your team completed X projects"
|
||||
- "You're in the top X% of users"
|
||||
|
||||
**Key point**: Make them feel good and remind them of value delivered.
|
||||
|
||||
---
|
||||
|
||||
#### NPS Survey
|
||||
**Trigger**: Time-based (quarterly) or event-based (post-milestone)
|
||||
**Goal**: Measure satisfaction, identify promoters and detractors
|
||||
**Format**: Single email
|
||||
|
||||
**Best practices**:
|
||||
- Keep it simple: Just the NPS question initially
|
||||
- Follow-up form for "why" based on score
|
||||
- Personal sender (CEO, founder, CSM)
|
||||
- Tell them how you'll use feedback
|
||||
|
||||
**Follow-up based on score**:
|
||||
- Promoters (9-10): Thank + ask for review/referral
|
||||
- Passives (7-8): Ask what would make it a 10
|
||||
- Detractors (0-6): Personal outreach to understand issues
|
||||
|
||||
---
|
||||
|
||||
#### Referral Program
|
||||
**Trigger**: Customer milestone, promoter NPS score, or campaign
|
||||
**Goal**: Generate referrals
|
||||
**Format**: Single email or periodic reminders
|
||||
|
||||
**Good timing**:
|
||||
- After positive NPS response
|
||||
- After customer achieves result
|
||||
- After renewal
|
||||
- Seasonal campaigns
|
||||
|
||||
**Copy approach**:
|
||||
- Remind them of their success
|
||||
- Explain the referral offer clearly
|
||||
- Make sharing easy (unique link)
|
||||
- Show what's in it for them AND referee
|
||||
|
||||
---
|
||||
- Upgrade to paid
|
||||
- Upgrade to higher plan
|
||||
- Ask for review
|
||||
- Proactive support offers
|
||||
- Product usage reports
|
||||
- NPS survey
|
||||
- Referral program
|
||||
|
||||
### Billing Emails
|
||||
|
||||
#### Switch to Annual
|
||||
**Trigger**: Monthly subscriber at renewal time or campaign
|
||||
**Goal**: Convert monthly to annual (improve LTV, reduce churn)
|
||||
**Format**: Single email or 2-email sequence
|
||||
|
||||
**Value proposition**:
|
||||
- Calculate exact savings
|
||||
- Additional benefits (if any)
|
||||
- Lock in current price messaging
|
||||
- Easy one-click switch
|
||||
|
||||
**Best timing**:
|
||||
- Around monthly renewal date
|
||||
- End of year / new year
|
||||
- After 3-6 months of loyalty
|
||||
- Price increase announcement (lock in old rate)
|
||||
|
||||
---
|
||||
|
||||
#### Failed Payment Recovery
|
||||
**Trigger**: Payment fails
|
||||
**Goal**: Recover revenue, retain customer
|
||||
**Typical sequence**: 3-4 emails over 7-14 days
|
||||
|
||||
**Sequence structure**:
|
||||
- Email 1 (Day 0): Friendly notice, update payment link
|
||||
- Email 2 (Day 3): Reminder, service may be interrupted
|
||||
- Email 3 (Day 7): Urgent, account will be suspended
|
||||
- Email 4 (Day 10-14): Final notice, what they'll lose
|
||||
|
||||
**Copy approach**:
|
||||
- Assume it's an accident (card expired, etc.)
|
||||
- Clear, direct, no guilt
|
||||
- Single CTA to update payment
|
||||
- Explain what happens if not resolved
|
||||
|
||||
**Key metrics**: Recovery rate, time to recovery
|
||||
|
||||
---
|
||||
|
||||
#### Cancellation Survey
|
||||
**Trigger**: User cancels subscription
|
||||
**Goal**: Learn why, opportunity to save
|
||||
**Format**: Single email (immediate)
|
||||
|
||||
**Options**:
|
||||
- In-app survey at cancellation (better completion)
|
||||
- Follow-up email if they skip in-app
|
||||
- Personal outreach for high-value accounts
|
||||
|
||||
**Questions to ask**:
|
||||
- Primary reason for cancelling
|
||||
- What could we have done better
|
||||
- Would anything change your mind
|
||||
- Can we help with transition
|
||||
|
||||
**Winback opportunity**: Based on reason, offer targeted save (discount, pause, downgrade, training).
|
||||
|
||||
---
|
||||
|
||||
#### Upcoming Renewal Reminder
|
||||
**Trigger**: X days before renewal (14 or 30 days typical)
|
||||
**Goal**: No surprise charges, opportunity to expand
|
||||
**Format**: Single email
|
||||
|
||||
**What to include**:
|
||||
- Renewal date and amount
|
||||
- What's included in renewal
|
||||
- How to update payment/plan
|
||||
- Changes to pricing/features (if any)
|
||||
- Optional: Upsell opportunity
|
||||
|
||||
**Required for**: Annual subscriptions, high-value contracts
|
||||
|
||||
---
|
||||
- Switch to annual
|
||||
- Failed payment recovery
|
||||
- Cancellation survey
|
||||
- Upcoming renewal reminders
|
||||
|
||||
### Usage Emails
|
||||
|
||||
#### Daily/Weekly/Monthly Summary
|
||||
**Trigger**: Time-based
|
||||
**Goal**: Drive engagement, demonstrate value
|
||||
**Format**: Single email, recurring
|
||||
|
||||
**Content by frequency**:
|
||||
- **Daily**: Notifications, quick stats (for high-engagement products)
|
||||
- **Weekly**: Activity summary, highlights, suggestions
|
||||
- **Monthly**: Comprehensive report, achievements, ROI if calculable
|
||||
|
||||
**Structure**:
|
||||
- Key metrics at a glance
|
||||
- Notable achievements
|
||||
- Activity breakdown
|
||||
- Suggestions / what to try next
|
||||
- CTA to dive deeper
|
||||
|
||||
**Personalization**: Must be relevant to their actual usage. Empty reports are worse than no report.
|
||||
|
||||
---
|
||||
|
||||
#### Key Event or Milestone Notifications
|
||||
**Trigger**: Specific achievement or event
|
||||
**Goal**: Celebrate, drive continued engagement
|
||||
**Format**: Single email per event
|
||||
|
||||
**Milestone examples**:
|
||||
- First [action] completed
|
||||
- 10th/100th [thing] created
|
||||
- Goal achieved
|
||||
- Team collaboration milestone
|
||||
- Usage streak
|
||||
|
||||
**Copy approach**:
|
||||
- Celebration tone
|
||||
- Specific achievement
|
||||
- Context (compared to others, compared to before)
|
||||
- What's next / next milestone
|
||||
|
||||
---
|
||||
- Daily/weekly/monthly summaries
|
||||
- Key event notifications
|
||||
- Milestone celebrations
|
||||
|
||||
### Win-Back Emails
|
||||
|
||||
#### Expired Trials
|
||||
**Trigger**: Trial ended without conversion
|
||||
**Goal**: Convert or re-engage
|
||||
**Typical sequence**: 3-4 emails over 30 days
|
||||
|
||||
**Sequence structure**:
|
||||
- Email 1 (Day 1 post-expiry): Trial ended, here's what you're missing
|
||||
- Email 2 (Day 7): What held you back? (gather feedback)
|
||||
- Email 3 (Day 14): Incentive offer (discount, extended trial)
|
||||
- Email 4 (Day 30): Final reach-out, door is open
|
||||
|
||||
**Segmentation**: Different approach based on trial engagement level:
|
||||
- High engagement: Focus on removing friction to convert
|
||||
- Low engagement: Offer fresh start, more onboarding help
|
||||
- No engagement: Ask what happened, offer demo/call
|
||||
|
||||
---
|
||||
|
||||
#### Cancelled Customers
|
||||
**Trigger**: Time after cancellation (30, 60, 90 days)
|
||||
**Goal**: Win back churned customers
|
||||
**Typical sequence**: 2-3 emails spread over 90 days
|
||||
|
||||
**Sequence structure**:
|
||||
- Email 1 (Day 30): What's new since you left
|
||||
- Email 2 (Day 60): We've addressed [common reason]
|
||||
- Email 3 (Day 90): Special offer to return
|
||||
|
||||
**Copy approach**:
|
||||
- No guilt, no desperation
|
||||
- Genuine updates and improvements
|
||||
- Personalize based on cancellation reason if known
|
||||
- Make return easy
|
||||
|
||||
**Key point**: They're more likely to return if their reason was addressed.
|
||||
|
||||
---
|
||||
- Expired trials
|
||||
- Cancelled customers
|
||||
|
||||
### Campaign Emails
|
||||
- Monthly roundup / newsletter
|
||||
- Seasonal promotions
|
||||
- Product updates
|
||||
- Industry news roundup
|
||||
- Pricing updates
|
||||
|
||||
#### Monthly Roundup / Newsletter
|
||||
**Trigger**: Time-based (monthly)
|
||||
**Goal**: Engagement, brand presence, content distribution
|
||||
**Format**: Single email, recurring
|
||||
|
||||
**Content mix**:
|
||||
- Product updates and tips
|
||||
- Customer stories
|
||||
- Educational content
|
||||
- Company news
|
||||
- Industry insights
|
||||
|
||||
**Best practices**:
|
||||
- Consistent send day/time
|
||||
- Scannable format
|
||||
- Mix of content types
|
||||
- One primary CTA focus
|
||||
- Unsubscribe is okay—keeps list healthy
|
||||
|
||||
---
|
||||
|
||||
#### Seasonal Promotions
|
||||
**Trigger**: Calendar events (Black Friday, New Year, etc.)
|
||||
**Goal**: Drive conversions with timely offer
|
||||
**Format**: Campaign burst (2-4 emails)
|
||||
|
||||
**Common opportunities**:
|
||||
- New Year (fresh start, annual planning)
|
||||
- End of fiscal year (budget spending)
|
||||
- Black Friday / Cyber Monday
|
||||
- Industry-specific seasons
|
||||
- Back to school / work
|
||||
|
||||
**Sequence structure**:
|
||||
- Announcement: Offer reveal
|
||||
- Reminder: Midway through promotion
|
||||
- Last chance: Final hours
|
||||
|
||||
---
|
||||
|
||||
#### Product Updates
|
||||
**Trigger**: New feature release
|
||||
**Goal**: Adoption, engagement, demonstrate momentum
|
||||
**Format**: Single email per major release
|
||||
|
||||
**What to include**:
|
||||
- What's new (clear and simple)
|
||||
- Why it matters (benefit, not just feature)
|
||||
- How to use it (direct link)
|
||||
- Who asked for it (community acknowledgment)
|
||||
|
||||
**Segmentation**: Consider targeting based on relevance:
|
||||
- Users who would benefit most
|
||||
- Users who requested feature
|
||||
- Power users first (for beta feel)
|
||||
|
||||
---
|
||||
|
||||
#### Industry News Roundup
|
||||
**Trigger**: Time-based (weekly or monthly)
|
||||
**Goal**: Thought leadership, engagement, brand value
|
||||
**Format**: Curated newsletter
|
||||
|
||||
**Content**:
|
||||
- Curated news and links
|
||||
- Your take / commentary
|
||||
- What it means for readers
|
||||
- How your product helps
|
||||
|
||||
**Best for**: B2B products where customers care about industry trends.
|
||||
|
||||
---
|
||||
|
||||
#### Pricing Update
|
||||
**Trigger**: Price change announcement
|
||||
**Goal**: Transparent communication, minimize churn
|
||||
**Format**: Single email (or sequence for major changes)
|
||||
|
||||
**Timeline**:
|
||||
- Announce 30-60 days before change
|
||||
- Reminder 14 days before
|
||||
- Final notice 7 days before
|
||||
|
||||
**Copy approach**:
|
||||
- Clear, direct, transparent
|
||||
- Explain the why (value delivered, costs increased)
|
||||
- Grandfather if possible (lock in old rate)
|
||||
- Give options (annual lock-in, downgrade)
|
||||
|
||||
**Important**: Honesty and advance notice build trust even when price increases.
|
||||
|
||||
---
|
||||
|
||||
## Email Audit Checklist
|
||||
|
||||
Use this to audit your current email program:
|
||||
|
||||
### Onboarding
|
||||
- [ ] New users series
|
||||
- [ ] New customers series
|
||||
- [ ] Key onboarding step reminders
|
||||
- [ ] New user invite sequence
|
||||
|
||||
### Retention
|
||||
- [ ] Upgrade to paid sequence
|
||||
- [ ] Upgrade to higher plan triggers
|
||||
- [ ] Ask for review (timed properly)
|
||||
- [ ] Proactive support outreach
|
||||
- [ ] Product usage reports
|
||||
- [ ] NPS survey
|
||||
- [ ] Referral program emails
|
||||
|
||||
### Billing
|
||||
- [ ] Switch to annual campaign
|
||||
- [ ] Failed payment recovery sequence
|
||||
- [ ] Cancellation survey
|
||||
- [ ] Upcoming renewal reminders
|
||||
|
||||
### Usage
|
||||
- [ ] Daily/weekly/monthly summaries
|
||||
- [ ] Key event notifications
|
||||
- [ ] Milestone celebrations
|
||||
|
||||
### Win-Back
|
||||
- [ ] Expired trial sequence
|
||||
- [ ] Cancelled customer sequence
|
||||
|
||||
### Campaigns
|
||||
- [ ] Monthly roundup / newsletter
|
||||
- [ ] Seasonal promotion calendar
|
||||
- [ ] Product update announcements
|
||||
- [ ] Pricing update communications
|
||||
**For detailed email type reference**: See [references/email-types.md](references/email-types.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -796,84 +229,20 @@ Use this to audit your current email program:
|
||||
- Conversational, not formal
|
||||
- First-person (I/we) and second-person (you)
|
||||
- Active voice
|
||||
- Match your brand but lean friendly
|
||||
- Read it out loud—does it sound human?
|
||||
|
||||
### Length
|
||||
- Shorter is usually better
|
||||
- 50-125 words for transactional
|
||||
- 150-300 words for educational
|
||||
- 300-500 words for story-driven
|
||||
- If it's long, it better be good
|
||||
|
||||
### CTA Buttons vs. Links
|
||||
- Buttons: Primary actions, high-visibility
|
||||
- Links: Secondary actions, in-text
|
||||
### CTA Guidelines
|
||||
- Buttons for primary actions
|
||||
- Links for secondary actions
|
||||
- One clear primary CTA per email
|
||||
- Button text: Action + outcome
|
||||
|
||||
---
|
||||
|
||||
## Personalization
|
||||
|
||||
### Merge Fields
|
||||
- First name (fallback to "there" or "friend")
|
||||
- Company name (B2B)
|
||||
- Relevant data (usage, plan, etc.)
|
||||
|
||||
### Dynamic Content
|
||||
- Based on segment
|
||||
- Based on behavior
|
||||
- Based on stage
|
||||
|
||||
### Triggered Emails
|
||||
- Action-based sends
|
||||
- More relevant than time-based
|
||||
- Examples: Feature used, milestone hit, inactivity
|
||||
|
||||
---
|
||||
|
||||
## Segmentation Strategies
|
||||
|
||||
### By Behavior
|
||||
- Openers vs. non-openers
|
||||
- Clickers vs. non-clickers
|
||||
- Active vs. inactive
|
||||
|
||||
### By Stage
|
||||
- Trial vs. paid
|
||||
- New vs. long-term
|
||||
- Engaged vs. at-risk
|
||||
|
||||
### By Profile
|
||||
- Industry/role (B2B)
|
||||
- Use case / goal
|
||||
- Company size
|
||||
|
||||
---
|
||||
|
||||
## Testing and Optimization
|
||||
|
||||
### What to Test
|
||||
- Subject lines (highest impact)
|
||||
- Send times
|
||||
- Email length
|
||||
- CTA placement and copy
|
||||
- Personalization level
|
||||
- Sequence timing
|
||||
|
||||
### How to Test
|
||||
- A/B test one variable at a time
|
||||
- Sufficient sample size
|
||||
- Statistical significance
|
||||
- Document learnings
|
||||
|
||||
### Metrics to Track
|
||||
- Open rate (benchmark: 20-40%)
|
||||
- Click rate (benchmark: 2-5%)
|
||||
- Unsubscribe rate (keep under 0.5%)
|
||||
- Conversion rate (specific to sequence goal)
|
||||
- Revenue per email (if applicable)
|
||||
**For detailed copy, personalization, and testing guidelines**: See [references/copy-guidelines.md](references/copy-guidelines.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -905,15 +274,27 @@ What to measure and benchmarks
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What triggers entry to this sequence?
|
||||
2. What's the primary goal/conversion action?
|
||||
3. Who is the audience?
|
||||
4. What do they already know about you?
|
||||
5. What other emails are they receiving?
|
||||
6. What's your current email performance?
|
||||
3. What do they already know about you?
|
||||
4. What other emails are they receiving?
|
||||
5. What's your current email performance?
|
||||
|
||||
---
|
||||
|
||||
## Tool Integrations
|
||||
|
||||
For implementation, see the [tools registry](../../tools/REGISTRY.md). Key email tools:
|
||||
|
||||
| Tool | Best For | MCP | Guide |
|
||||
|------|----------|:---:|-------|
|
||||
| **Customer.io** | Behavior-based automation | - | [customer-io.md](../../tools/integrations/customer-io.md) |
|
||||
| **Mailchimp** | SMB email marketing | ✓ | [mailchimp.md](../../tools/integrations/mailchimp.md) |
|
||||
| **Resend** | Developer-friendly transactional | ✓ | [resend.md](../../tools/integrations/resend.md) |
|
||||
| **SendGrid** | Transactional email at scale | - | [sendgrid.md](../../tools/integrations/sendgrid.md) |
|
||||
| **Kit** | Creator/newsletter focused | - | [kit.md](../../tools/integrations/kit.md) |
|
||||
|
||||
---
|
||||
|
||||
|
||||
103
skills/email-sequence/references/copy-guidelines.md
Normal file
103
skills/email-sequence/references/copy-guidelines.md
Normal file
@@ -0,0 +1,103 @@
|
||||
# Email Copy Guidelines
|
||||
|
||||
## Structure
|
||||
|
||||
1. **Hook**: First line grabs attention
|
||||
2. **Context**: Why this matters to them
|
||||
3. **Value**: The useful content
|
||||
4. **CTA**: What to do next
|
||||
5. **Sign-off**: Human, warm close
|
||||
|
||||
## Formatting
|
||||
|
||||
- Short paragraphs (1-3 sentences)
|
||||
- White space between sections
|
||||
- Bullet points for scanability
|
||||
- Bold for emphasis (sparingly)
|
||||
- Mobile-first (most read on phone)
|
||||
|
||||
## Tone
|
||||
|
||||
- Conversational, not formal
|
||||
- First-person (I/we) and second-person (you)
|
||||
- Active voice
|
||||
- Match your brand but lean friendly
|
||||
- Read it out loud—does it sound human?
|
||||
|
||||
## Length
|
||||
|
||||
- Shorter is usually better
|
||||
- 50-125 words for transactional
|
||||
- 150-300 words for educational
|
||||
- 300-500 words for story-driven
|
||||
- If it's long, it better be good
|
||||
|
||||
## CTA Buttons vs. Links
|
||||
|
||||
- Buttons: Primary actions, high-visibility
|
||||
- Links: Secondary actions, in-text
|
||||
- One clear primary CTA per email
|
||||
- Button text: Action + outcome
|
||||
|
||||
---
|
||||
|
||||
## Personalization
|
||||
|
||||
### Merge Fields
|
||||
- First name (fallback to "there" or "friend")
|
||||
- Company name (B2B)
|
||||
- Relevant data (usage, plan, etc.)
|
||||
|
||||
### Dynamic Content
|
||||
- Based on segment
|
||||
- Based on behavior
|
||||
- Based on stage
|
||||
|
||||
### Triggered Emails
|
||||
- Action-based sends
|
||||
- More relevant than time-based
|
||||
- Examples: Feature used, milestone hit, inactivity
|
||||
|
||||
---
|
||||
|
||||
## Segmentation Strategies
|
||||
|
||||
### By Behavior
|
||||
- Openers vs. non-openers
|
||||
- Clickers vs. non-clickers
|
||||
- Active vs. inactive
|
||||
|
||||
### By Stage
|
||||
- Trial vs. paid
|
||||
- New vs. long-term
|
||||
- Engaged vs. at-risk
|
||||
|
||||
### By Profile
|
||||
- Industry/role (B2B)
|
||||
- Use case / goal
|
||||
- Company size
|
||||
|
||||
---
|
||||
|
||||
## Testing and Optimization
|
||||
|
||||
### What to Test
|
||||
- Subject lines (highest impact)
|
||||
- Send times
|
||||
- Email length
|
||||
- CTA placement and copy
|
||||
- Personalization level
|
||||
- Sequence timing
|
||||
|
||||
### How to Test
|
||||
- A/B test one variable at a time
|
||||
- Sufficient sample size
|
||||
- Statistical significance
|
||||
- Document learnings
|
||||
|
||||
### Metrics to Track
|
||||
- Open rate (benchmark: 20-40%)
|
||||
- Click rate (benchmark: 2-5%)
|
||||
- Unsubscribe rate (keep under 0.5%)
|
||||
- Conversion rate (specific to sequence goal)
|
||||
- Revenue per email (if applicable)
|
||||
506
skills/email-sequence/references/email-types.md
Normal file
506
skills/email-sequence/references/email-types.md
Normal file
@@ -0,0 +1,506 @@
|
||||
# Email Types Reference
|
||||
|
||||
A comprehensive guide to lifecycle and campaign emails. Use this as an audit checklist and implementation reference.
|
||||
|
||||
## Onboarding Emails
|
||||
|
||||
### New Users Series
|
||||
**Trigger**: User signs up (free or trial)
|
||||
**Goal**: Activate user, drive to aha moment
|
||||
**Typical sequence**: 5-7 emails over 14 days
|
||||
|
||||
- Email 1: Welcome + single next step (immediate)
|
||||
- Email 2: Quick win / getting started (day 1)
|
||||
- Email 3: Key feature highlight (day 3)
|
||||
- Email 4: Success story / social proof (day 5)
|
||||
- Email 5: Check-in + offer help (day 7)
|
||||
- Email 6: Advanced tip (day 10)
|
||||
- Email 7: Upgrade prompt or next milestone (day 14)
|
||||
|
||||
**Key metrics**: Activation rate, feature adoption
|
||||
|
||||
---
|
||||
|
||||
### New Customers Series
|
||||
**Trigger**: User converts to paid
|
||||
**Goal**: Reinforce purchase decision, drive adoption, reduce early churn
|
||||
**Typical sequence**: 3-5 emails over 14 days
|
||||
|
||||
- Email 1: Thank you + what's next (immediate)
|
||||
- Email 2: Getting full value — setup checklist (day 2)
|
||||
- Email 3: Pro tips for paid features (day 5)
|
||||
- Email 4: Success story from similar customer (day 7)
|
||||
- Email 5: Check-in + introduce support resources (day 14)
|
||||
|
||||
**Key point**: Different from new user series—they've committed. Focus on reinforcement and expansion, not conversion.
|
||||
|
||||
---
|
||||
|
||||
### Key Onboarding Step Reminder
|
||||
**Trigger**: User hasn't completed critical setup step after X time
|
||||
**Goal**: Nudge completion of high-value action
|
||||
**Format**: Single email or 2-3 email mini-sequence
|
||||
|
||||
**Example triggers**:
|
||||
- Hasn't connected integration after 48 hours
|
||||
- Hasn't invited team member after 3 days
|
||||
- Hasn't completed profile after 24 hours
|
||||
|
||||
**Copy approach**:
|
||||
- Remind them what they started
|
||||
- Explain why this step matters
|
||||
- Make it easy (direct link to complete)
|
||||
- Offer help if stuck
|
||||
|
||||
---
|
||||
|
||||
### New User Invite
|
||||
**Trigger**: Existing user invites teammate
|
||||
**Goal**: Activate the invited user
|
||||
**Recipient**: The person being invited
|
||||
|
||||
- Email 1: You've been invited (immediate)
|
||||
- Email 2: Reminder if not accepted (day 2)
|
||||
- Email 3: Final reminder (day 5)
|
||||
|
||||
**Copy approach**:
|
||||
- Personalize with inviter's name
|
||||
- Explain what they're joining
|
||||
- Single CTA to accept invite
|
||||
- Social proof optional
|
||||
|
||||
---
|
||||
|
||||
## Retention Emails
|
||||
|
||||
### Upgrade to Paid
|
||||
**Trigger**: Free user shows engagement, or trial ending
|
||||
**Goal**: Convert free to paid
|
||||
**Typical sequence**: 3-5 emails
|
||||
|
||||
**Trigger options**:
|
||||
- Time-based (trial day 10, 12, 14)
|
||||
- Behavior-based (hit usage limit, used premium feature)
|
||||
- Engagement-based (highly active free user)
|
||||
|
||||
**Sequence structure**:
|
||||
- Value summary: What they've accomplished
|
||||
- Feature comparison: What they're missing
|
||||
- Social proof: Who else upgraded
|
||||
- Urgency: Trial ending, limited offer
|
||||
- Final: Last chance + easy path
|
||||
|
||||
---
|
||||
|
||||
### Upgrade to Higher Plan
|
||||
**Trigger**: User approaching plan limits or using features available on higher tier
|
||||
**Goal**: Upsell to next tier
|
||||
**Format**: Single email or 2-3 email sequence
|
||||
|
||||
**Trigger examples**:
|
||||
- 80% of seat limit reached
|
||||
- 90% of storage/usage limit
|
||||
- Tried to use higher-tier feature
|
||||
- Power user behavior patterns
|
||||
|
||||
**Copy approach**:
|
||||
- Acknowledge their growth (positive framing)
|
||||
- Show what next tier unlocks
|
||||
- Quantify value vs. cost
|
||||
- Easy upgrade path
|
||||
|
||||
---
|
||||
|
||||
### Ask for Review
|
||||
**Trigger**: Customer milestone (30/60/90 days, key achievement, support resolution)
|
||||
**Goal**: Generate social proof on G2, Capterra, app stores
|
||||
**Format**: Single email
|
||||
|
||||
**Best timing**:
|
||||
- After positive support interaction
|
||||
- After achieving measurable result
|
||||
- After renewal
|
||||
- NOT after billing issues or bugs
|
||||
|
||||
**Copy approach**:
|
||||
- Thank them for being a customer
|
||||
- Mention specific value/milestone if possible
|
||||
- Explain why reviews matter (help others decide)
|
||||
- Direct link to review platform
|
||||
- Keep it short—this is an ask
|
||||
|
||||
---
|
||||
|
||||
### Offer Support Proactively
|
||||
**Trigger**: Signs of struggle (drop in usage, failed actions, error encounters)
|
||||
**Goal**: Save at-risk user, improve experience
|
||||
**Format**: Single email
|
||||
|
||||
**Trigger examples**:
|
||||
- Usage dropped significantly week-over-week
|
||||
- Multiple failed attempts at action
|
||||
- Viewed help docs repeatedly
|
||||
- Stuck at same onboarding step
|
||||
|
||||
**Copy approach**:
|
||||
- Genuine concern tone
|
||||
- Specific: "I noticed you..." (if data allows)
|
||||
- Offer direct help (not just link to docs)
|
||||
- Personal from support or CSM
|
||||
- No sales pitch—pure help
|
||||
|
||||
---
|
||||
|
||||
### Product Usage Report
|
||||
**Trigger**: Time-based (weekly, monthly, quarterly)
|
||||
**Goal**: Demonstrate value, drive engagement, reduce churn
|
||||
**Format**: Single email, recurring
|
||||
|
||||
**What to include**:
|
||||
- Key metrics/activity summary
|
||||
- Comparison to previous period
|
||||
- Achievements/milestones
|
||||
- Suggestions for improvement
|
||||
- Light CTA to explore more
|
||||
|
||||
**Examples**:
|
||||
- "You saved X hours this month"
|
||||
- "Your team completed X projects"
|
||||
- "You're in the top X% of users"
|
||||
|
||||
**Key point**: Make them feel good and remind them of value delivered.
|
||||
|
||||
---
|
||||
|
||||
### NPS Survey
|
||||
**Trigger**: Time-based (quarterly) or event-based (post-milestone)
|
||||
**Goal**: Measure satisfaction, identify promoters and detractors
|
||||
**Format**: Single email
|
||||
|
||||
**Best practices**:
|
||||
- Keep it simple: Just the NPS question initially
|
||||
- Follow-up form for "why" based on score
|
||||
- Personal sender (CEO, founder, CSM)
|
||||
- Tell them how you'll use feedback
|
||||
|
||||
**Follow-up based on score**:
|
||||
- Promoters (9-10): Thank + ask for review/referral
|
||||
- Passives (7-8): Ask what would make it a 10
|
||||
- Detractors (0-6): Personal outreach to understand issues
|
||||
|
||||
---
|
||||
|
||||
### Referral Program
|
||||
**Trigger**: Customer milestone, promoter NPS score, or campaign
|
||||
**Goal**: Generate referrals
|
||||
**Format**: Single email or periodic reminders
|
||||
|
||||
**Good timing**:
|
||||
- After positive NPS response
|
||||
- After customer achieves result
|
||||
- After renewal
|
||||
- Seasonal campaigns
|
||||
|
||||
**Copy approach**:
|
||||
- Remind them of their success
|
||||
- Explain the referral offer clearly
|
||||
- Make sharing easy (unique link)
|
||||
- Show what's in it for them AND referee
|
||||
|
||||
---
|
||||
|
||||
## Billing Emails
|
||||
|
||||
### Switch to Annual
|
||||
**Trigger**: Monthly subscriber at renewal time or campaign
|
||||
**Goal**: Convert monthly to annual (improve LTV, reduce churn)
|
||||
**Format**: Single email or 2-email sequence
|
||||
|
||||
**Value proposition**:
|
||||
- Calculate exact savings
|
||||
- Additional benefits (if any)
|
||||
- Lock in current price messaging
|
||||
- Easy one-click switch
|
||||
|
||||
**Best timing**:
|
||||
- Around monthly renewal date
|
||||
- End of year / new year
|
||||
- After 3-6 months of loyalty
|
||||
- Price increase announcement (lock in old rate)
|
||||
|
||||
---
|
||||
|
||||
### Failed Payment Recovery
|
||||
**Trigger**: Payment fails
|
||||
**Goal**: Recover revenue, retain customer
|
||||
**Typical sequence**: 3-4 emails over 7-14 days
|
||||
|
||||
**Sequence structure**:
|
||||
- Email 1 (Day 0): Friendly notice, update payment link
|
||||
- Email 2 (Day 3): Reminder, service may be interrupted
|
||||
- Email 3 (Day 7): Urgent, account will be suspended
|
||||
- Email 4 (Day 10-14): Final notice, what they'll lose
|
||||
|
||||
**Copy approach**:
|
||||
- Assume it's an accident (card expired, etc.)
|
||||
- Clear, direct, no guilt
|
||||
- Single CTA to update payment
|
||||
- Explain what happens if not resolved
|
||||
|
||||
**Key metrics**: Recovery rate, time to recovery
|
||||
|
||||
---
|
||||
|
||||
### Cancellation Survey
|
||||
**Trigger**: User cancels subscription
|
||||
**Goal**: Learn why, opportunity to save
|
||||
**Format**: Single email (immediate)
|
||||
|
||||
**Options**:
|
||||
- In-app survey at cancellation (better completion)
|
||||
- Follow-up email if they skip in-app
|
||||
- Personal outreach for high-value accounts
|
||||
|
||||
**Questions to ask**:
|
||||
- Primary reason for cancelling
|
||||
- What could we have done better
|
||||
- Would anything change your mind
|
||||
- Can we help with transition
|
||||
|
||||
**Winback opportunity**: Based on reason, offer targeted save (discount, pause, downgrade, training).
|
||||
|
||||
---
|
||||
|
||||
### Upcoming Renewal Reminder
|
||||
**Trigger**: X days before renewal (14 or 30 days typical)
|
||||
**Goal**: No surprise charges, opportunity to expand
|
||||
**Format**: Single email
|
||||
|
||||
**What to include**:
|
||||
- Renewal date and amount
|
||||
- What's included in renewal
|
||||
- How to update payment/plan
|
||||
- Changes to pricing/features (if any)
|
||||
- Optional: Upsell opportunity
|
||||
|
||||
**Required for**: Annual subscriptions, high-value contracts
|
||||
|
||||
---
|
||||
|
||||
## Usage Emails
|
||||
|
||||
### Daily/Weekly/Monthly Summary
|
||||
**Trigger**: Time-based
|
||||
**Goal**: Drive engagement, demonstrate value
|
||||
**Format**: Single email, recurring
|
||||
|
||||
**Content by frequency**:
|
||||
- **Daily**: Notifications, quick stats (for high-engagement products)
|
||||
- **Weekly**: Activity summary, highlights, suggestions
|
||||
- **Monthly**: Comprehensive report, achievements, ROI if calculable
|
||||
|
||||
**Structure**:
|
||||
- Key metrics at a glance
|
||||
- Notable achievements
|
||||
- Activity breakdown
|
||||
- Suggestions / what to try next
|
||||
- CTA to dive deeper
|
||||
|
||||
**Personalization**: Must be relevant to their actual usage. Empty reports are worse than no report.
|
||||
|
||||
---
|
||||
|
||||
### Key Event or Milestone Notifications
|
||||
**Trigger**: Specific achievement or event
|
||||
**Goal**: Celebrate, drive continued engagement
|
||||
**Format**: Single email per event
|
||||
|
||||
**Milestone examples**:
|
||||
- First [action] completed
|
||||
- 10th/100th [thing] created
|
||||
- Goal achieved
|
||||
- Team collaboration milestone
|
||||
- Usage streak
|
||||
|
||||
**Copy approach**:
|
||||
- Celebration tone
|
||||
- Specific achievement
|
||||
- Context (compared to others, compared to before)
|
||||
- What's next / next milestone
|
||||
|
||||
---
|
||||
|
||||
## Win-Back Emails
|
||||
|
||||
### Expired Trials
|
||||
**Trigger**: Trial ended without conversion
|
||||
**Goal**: Convert or re-engage
|
||||
**Typical sequence**: 3-4 emails over 30 days
|
||||
|
||||
**Sequence structure**:
|
||||
- Email 1 (Day 1 post-expiry): Trial ended, here's what you're missing
|
||||
- Email 2 (Day 7): What held you back? (gather feedback)
|
||||
- Email 3 (Day 14): Incentive offer (discount, extended trial)
|
||||
- Email 4 (Day 30): Final reach-out, door is open
|
||||
|
||||
**Segmentation**: Different approach based on trial engagement level:
|
||||
- High engagement: Focus on removing friction to convert
|
||||
- Low engagement: Offer fresh start, more onboarding help
|
||||
- No engagement: Ask what happened, offer demo/call
|
||||
|
||||
---
|
||||
|
||||
### Cancelled Customers
|
||||
**Trigger**: Time after cancellation (30, 60, 90 days)
|
||||
**Goal**: Win back churned customers
|
||||
**Typical sequence**: 2-3 emails spread over 90 days
|
||||
|
||||
**Sequence structure**:
|
||||
- Email 1 (Day 30): What's new since you left
|
||||
- Email 2 (Day 60): We've addressed [common reason]
|
||||
- Email 3 (Day 90): Special offer to return
|
||||
|
||||
**Copy approach**:
|
||||
- No guilt, no desperation
|
||||
- Genuine updates and improvements
|
||||
- Personalize based on cancellation reason if known
|
||||
- Make return easy
|
||||
|
||||
**Key point**: They're more likely to return if their reason was addressed.
|
||||
|
||||
---
|
||||
|
||||
## Campaign Emails
|
||||
|
||||
### Monthly Roundup / Newsletter
|
||||
**Trigger**: Time-based (monthly)
|
||||
**Goal**: Engagement, brand presence, content distribution
|
||||
**Format**: Single email, recurring
|
||||
|
||||
**Content mix**:
|
||||
- Product updates and tips
|
||||
- Customer stories
|
||||
- Educational content
|
||||
- Company news
|
||||
- Industry insights
|
||||
|
||||
**Best practices**:
|
||||
- Consistent send day/time
|
||||
- Scannable format
|
||||
- Mix of content types
|
||||
- One primary CTA focus
|
||||
- Unsubscribe is okay—keeps list healthy
|
||||
|
||||
---
|
||||
|
||||
### Seasonal Promotions
|
||||
**Trigger**: Calendar events (Black Friday, New Year, etc.)
|
||||
**Goal**: Drive conversions with timely offer
|
||||
**Format**: Campaign burst (2-4 emails)
|
||||
|
||||
**Common opportunities**:
|
||||
- New Year (fresh start, annual planning)
|
||||
- End of fiscal year (budget spending)
|
||||
- Black Friday / Cyber Monday
|
||||
- Industry-specific seasons
|
||||
- Back to school / work
|
||||
|
||||
**Sequence structure**:
|
||||
- Announcement: Offer reveal
|
||||
- Reminder: Midway through promotion
|
||||
- Last chance: Final hours
|
||||
|
||||
---
|
||||
|
||||
### Product Updates
|
||||
**Trigger**: New feature release
|
||||
**Goal**: Adoption, engagement, demonstrate momentum
|
||||
**Format**: Single email per major release
|
||||
|
||||
**What to include**:
|
||||
- What's new (clear and simple)
|
||||
- Why it matters (benefit, not just feature)
|
||||
- How to use it (direct link)
|
||||
- Who asked for it (community acknowledgment)
|
||||
|
||||
**Segmentation**: Consider targeting based on relevance:
|
||||
- Users who would benefit most
|
||||
- Users who requested feature
|
||||
- Power users first (for beta feel)
|
||||
|
||||
---
|
||||
|
||||
### Industry News Roundup
|
||||
**Trigger**: Time-based (weekly or monthly)
|
||||
**Goal**: Thought leadership, engagement, brand value
|
||||
**Format**: Curated newsletter
|
||||
|
||||
**Content**:
|
||||
- Curated news and links
|
||||
- Your take / commentary
|
||||
- What it means for readers
|
||||
- How your product helps
|
||||
|
||||
**Best for**: B2B products where customers care about industry trends.
|
||||
|
||||
---
|
||||
|
||||
### Pricing Update
|
||||
**Trigger**: Price change announcement
|
||||
**Goal**: Transparent communication, minimize churn
|
||||
**Format**: Single email (or sequence for major changes)
|
||||
|
||||
**Timeline**:
|
||||
- Announce 30-60 days before change
|
||||
- Reminder 14 days before
|
||||
- Final notice 7 days before
|
||||
|
||||
**Copy approach**:
|
||||
- Clear, direct, transparent
|
||||
- Explain the why (value delivered, costs increased)
|
||||
- Grandfather if possible (lock in old rate)
|
||||
- Give options (annual lock-in, downgrade)
|
||||
|
||||
**Important**: Honesty and advance notice build trust even when price increases.
|
||||
|
||||
---
|
||||
|
||||
## Email Audit Checklist
|
||||
|
||||
Use this to audit your current email program:
|
||||
|
||||
### Onboarding
|
||||
- [ ] New users series
|
||||
- [ ] New customers series
|
||||
- [ ] Key onboarding step reminders
|
||||
- [ ] New user invite sequence
|
||||
|
||||
### Retention
|
||||
- [ ] Upgrade to paid sequence
|
||||
- [ ] Upgrade to higher plan triggers
|
||||
- [ ] Ask for review (timed properly)
|
||||
- [ ] Proactive support outreach
|
||||
- [ ] Product usage reports
|
||||
- [ ] NPS survey
|
||||
- [ ] Referral program emails
|
||||
|
||||
### Billing
|
||||
- [ ] Switch to annual campaign
|
||||
- [ ] Failed payment recovery sequence
|
||||
- [ ] Cancellation survey
|
||||
- [ ] Upcoming renewal reminders
|
||||
|
||||
### Usage
|
||||
- [ ] Daily/weekly/monthly summaries
|
||||
- [ ] Key event notifications
|
||||
- [ ] Milestone celebrations
|
||||
|
||||
### Win-Back
|
||||
- [ ] Expired trial sequence
|
||||
- [ ] Cancelled customer sequence
|
||||
|
||||
### Campaigns
|
||||
- [ ] Monthly roundup / newsletter
|
||||
- [ ] Seasonal promotion calendar
|
||||
- [ ] Product update announcements
|
||||
- [ ] Pricing update communications
|
||||
162
skills/email-sequence/references/sequence-templates.md
Normal file
162
skills/email-sequence/references/sequence-templates.md
Normal file
@@ -0,0 +1,162 @@
|
||||
# Email Sequence Templates
|
||||
|
||||
Detailed templates for common email sequences.
|
||||
|
||||
## Welcome Sequence (Post-Signup)
|
||||
|
||||
**Email 1: Welcome (Immediate)**
|
||||
- Subject: Welcome to [Product] — here's your first step
|
||||
- Deliver what was promised (lead magnet, access, etc.)
|
||||
- Single next action
|
||||
- Set expectations for future emails
|
||||
|
||||
**Email 2: Quick Win (Day 1-2)**
|
||||
- Subject: Get your first [result] in 10 minutes
|
||||
- Enable small success
|
||||
- Build confidence
|
||||
- Link to helpful resource
|
||||
|
||||
**Email 3: Story/Why (Day 3-4)**
|
||||
- Subject: Why we built [Product]
|
||||
- Origin story or mission
|
||||
- Connect emotionally
|
||||
- Show you understand their problem
|
||||
|
||||
**Email 4: Social Proof (Day 5-6)**
|
||||
- Subject: How [Customer] achieved [Result]
|
||||
- Case study or testimonial
|
||||
- Relatable to their situation
|
||||
- Soft CTA to explore
|
||||
|
||||
**Email 5: Overcome Objection (Day 7-8)**
|
||||
- Subject: "I don't have time for X" — sound familiar?
|
||||
- Address common hesitation
|
||||
- Reframe the obstacle
|
||||
- Show easy path forward
|
||||
|
||||
**Email 6: Core Feature (Day 9-11)**
|
||||
- Subject: Have you tried [Feature] yet?
|
||||
- Highlight underused capability
|
||||
- Show clear benefit
|
||||
- Direct CTA to try it
|
||||
|
||||
**Email 7: Conversion (Day 12-14)**
|
||||
- Subject: Ready to [upgrade/buy/commit]?
|
||||
- Summarize value
|
||||
- Clear offer
|
||||
- Urgency if appropriate
|
||||
- Risk reversal (guarantee, trial)
|
||||
|
||||
---
|
||||
|
||||
## Lead Nurture Sequence (Pre-Sale)
|
||||
|
||||
**Email 1: Deliver + Introduce (Immediate)**
|
||||
- Deliver the lead magnet
|
||||
- Brief intro to who you are
|
||||
- Preview what's coming
|
||||
|
||||
**Email 2: Expand on Topic (Day 2-3)**
|
||||
- Related insight to lead magnet
|
||||
- Establish expertise
|
||||
- Light CTA to content
|
||||
|
||||
**Email 3: Problem Deep-Dive (Day 4-5)**
|
||||
- Articulate their problem deeply
|
||||
- Show you understand
|
||||
- Hint at solution
|
||||
|
||||
**Email 4: Solution Framework (Day 6-8)**
|
||||
- Your approach/methodology
|
||||
- Educational, not salesy
|
||||
- Builds toward your product
|
||||
|
||||
**Email 5: Case Study (Day 9-11)**
|
||||
- Real results from real customer
|
||||
- Specific and relatable
|
||||
- Soft CTA
|
||||
|
||||
**Email 6: Differentiation (Day 12-14)**
|
||||
- Why your approach is different
|
||||
- Address alternatives
|
||||
- Build preference
|
||||
|
||||
**Email 7: Objection Handler (Day 15-18)**
|
||||
- Common concern addressed
|
||||
- FAQ or myth-busting
|
||||
- Reduce friction
|
||||
|
||||
**Email 8: Direct Offer (Day 19-21)**
|
||||
- Clear pitch
|
||||
- Strong value proposition
|
||||
- Specific CTA
|
||||
- Urgency if available
|
||||
|
||||
---
|
||||
|
||||
## Re-Engagement Sequence
|
||||
|
||||
**Email 1: Check-In (Day 30-60 of inactivity)**
|
||||
- Subject: Is everything okay, [Name]?
|
||||
- Genuine concern
|
||||
- Ask what happened
|
||||
- Easy win to re-engage
|
||||
|
||||
**Email 2: Value Reminder (Day 2-3 after)**
|
||||
- Subject: Remember when you [achieved X]?
|
||||
- Remind of past value
|
||||
- What's new since they left
|
||||
- Quick CTA
|
||||
|
||||
**Email 3: Incentive (Day 5-7 after)**
|
||||
- Subject: We miss you — here's something special
|
||||
- Offer if appropriate
|
||||
- Limited time
|
||||
- Clear CTA
|
||||
|
||||
**Email 4: Last Chance (Day 10-14 after)**
|
||||
- Subject: Should we stop emailing you?
|
||||
- Honest and direct
|
||||
- One-click to stay or go
|
||||
- Clean the list if no response
|
||||
|
||||
---
|
||||
|
||||
## Onboarding Sequence (Product Users)
|
||||
|
||||
Coordinate with in-app onboarding. Email supports, doesn't duplicate.
|
||||
|
||||
**Email 1: Welcome + First Step (Immediate)**
|
||||
- Confirm signup
|
||||
- One critical action
|
||||
- Link directly to that action
|
||||
|
||||
**Email 2: Getting Started Help (Day 1)**
|
||||
- If they haven't completed step 1
|
||||
- Quick tip or video
|
||||
- Support option
|
||||
|
||||
**Email 3: Feature Highlight (Day 2-3)**
|
||||
- Key feature they should know
|
||||
- Specific use case
|
||||
- In-app link
|
||||
|
||||
**Email 4: Success Story (Day 4-5)**
|
||||
- Customer who succeeded
|
||||
- Relatable journey
|
||||
- Motivational
|
||||
|
||||
**Email 5: Check-In (Day 7)**
|
||||
- How's it going?
|
||||
- Ask for feedback
|
||||
- Offer help
|
||||
|
||||
**Email 6: Advanced Tip (Day 10-12)**
|
||||
- Power feature
|
||||
- For engaged users
|
||||
- Level-up content
|
||||
|
||||
**Email 7: Upgrade/Expand (Day 14+)**
|
||||
- For trial users: conversion push
|
||||
- For free users: upgrade prompt
|
||||
- For paid: expansion opportunity
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: form-cro
|
||||
version: 1.0.0
|
||||
description: When the user wants to optimize any form that is NOT signup/registration — including lead capture forms, contact forms, demo request forms, application forms, survey forms, or checkout forms. Also use when the user mentions "form optimization," "lead form conversions," "form friction," "form fields," "form completion rate," or "contact form." For signup/registration forms, see signup-flow-cro. For popups containing forms, see popup-cro.
|
||||
---
|
||||
|
||||
@@ -9,6 +10,9 @@ You are an expert in form optimization. Your goal is to maximize form completion
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before providing recommendations, identify:
|
||||
|
||||
1. **Form Type**
|
||||
@@ -405,9 +409,8 @@ Ideas to A/B test with expected outcomes
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What's your current form completion rate?
|
||||
2. Do you have field-level analytics?
|
||||
3. What happens with the data after submission?
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: free-tool-strategy
|
||||
version: 1.0.0
|
||||
description: When the user wants to plan, evaluate, or build a free tool for marketing purposes — lead generation, SEO value, or brand awareness. Also use when the user mentions "engineering as marketing," "free tool," "marketing tool," "calculator," "generator," "interactive tool," "lead gen tool," "build a tool for leads," or "free resource." This skill bridges engineering and marketing — useful for founders and technical marketers.
|
||||
---
|
||||
|
||||
@@ -9,23 +10,16 @@ You are an expert in engineering-as-marketing strategy. Your goal is to help pla
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before designing a tool strategy, understand:
|
||||
|
||||
1. **Business Context**
|
||||
- What's the core product/service?
|
||||
- Who is the target audience?
|
||||
- What problems do they have?
|
||||
1. **Business Context** - What's the core product? Who is the target audience? What problems do they have?
|
||||
|
||||
2. **Goals**
|
||||
- Lead generation primary goal?
|
||||
- SEO/traffic acquisition?
|
||||
- Brand awareness?
|
||||
- Product education?
|
||||
2. **Goals** - Lead generation? SEO/traffic? Brand awareness? Product education?
|
||||
|
||||
3. **Resources**
|
||||
- Technical capacity to build?
|
||||
- Ongoing maintenance bandwidth?
|
||||
- Budget for promotion?
|
||||
3. **Resources** - Technical capacity to build? Ongoing maintenance bandwidth? Budget for promotion?
|
||||
|
||||
---
|
||||
|
||||
@@ -48,114 +42,21 @@ Before designing a tool strategy, understand:
|
||||
|
||||
### 4. Worth the Investment
|
||||
- Lead value × expected leads > build cost + maintenance
|
||||
- Consider SEO value
|
||||
- Consider brand halo effect
|
||||
|
||||
---
|
||||
|
||||
## Tool Types
|
||||
## Tool Types Overview
|
||||
|
||||
### Calculators
|
||||
| Type | Examples | Best For |
|
||||
|------|----------|----------|
|
||||
| Calculators | ROI, savings, pricing estimators | Decisions involving numbers |
|
||||
| Generators | Templates, policies, names | Creating something quickly |
|
||||
| Analyzers | Website graders, SEO auditors | Evaluating existing work |
|
||||
| Testers | Meta tag preview, speed tests | Checking if something works |
|
||||
| Libraries | Icon sets, templates, snippets | Reference material |
|
||||
| Interactive | Tutorials, playgrounds, quizzes | Learning/understanding |
|
||||
|
||||
**Best for**: Decisions involving numbers, comparisons, estimates
|
||||
|
||||
**Examples**:
|
||||
- ROI calculator
|
||||
- Savings calculator
|
||||
- Cost comparison tool
|
||||
- Salary calculator
|
||||
- Tax estimator
|
||||
|
||||
**Why they work**:
|
||||
- Personalized output
|
||||
- High perceived value
|
||||
- Share-worthy results
|
||||
- Clear problem → solution
|
||||
|
||||
### Generators
|
||||
|
||||
**Best for**: Creating something useful quickly
|
||||
|
||||
**Examples**:
|
||||
- Policy generator
|
||||
- Template generator
|
||||
- Name/tagline generator
|
||||
- Email subject line generator
|
||||
- Resume builder
|
||||
|
||||
**Why they work**:
|
||||
- Tangible output
|
||||
- Saves time
|
||||
- Easily shared
|
||||
- Repeat usage
|
||||
|
||||
### Analyzers/Auditors
|
||||
|
||||
**Best for**: Evaluating existing work or assets
|
||||
|
||||
**Examples**:
|
||||
- Website grader
|
||||
- SEO analyzer
|
||||
- Email subject tester
|
||||
- Headline analyzer
|
||||
- Security checker
|
||||
|
||||
**Why they work**:
|
||||
- Curiosity-driven
|
||||
- Personalized insights
|
||||
- Creates awareness of problems
|
||||
- Natural lead to solution
|
||||
|
||||
### Testers/Validators
|
||||
|
||||
**Best for**: Checking if something works
|
||||
|
||||
**Examples**:
|
||||
- Meta tag preview
|
||||
- Email rendering test
|
||||
- Accessibility checker
|
||||
- Mobile-friendly test
|
||||
- Speed test
|
||||
|
||||
**Why they work**:
|
||||
- Immediate utility
|
||||
- Bookmark-worthy
|
||||
- Repeat usage
|
||||
- Professional necessity
|
||||
|
||||
### Libraries/Resources
|
||||
|
||||
**Best for**: Reference material
|
||||
|
||||
**Examples**:
|
||||
- Icon library
|
||||
- Template library
|
||||
- Code snippet library
|
||||
- Example gallery
|
||||
- Directory
|
||||
|
||||
**Why they work**:
|
||||
- High SEO value
|
||||
- Ongoing traffic
|
||||
- Establishes authority
|
||||
- Linkable asset
|
||||
|
||||
### Interactive Educational
|
||||
|
||||
**Best for**: Learning/understanding
|
||||
|
||||
**Examples**:
|
||||
- Interactive tutorials
|
||||
- Code playgrounds
|
||||
- Visual explainers
|
||||
- Quizzes/assessments
|
||||
- Simulators
|
||||
|
||||
**Why they work**:
|
||||
- Engages deeply
|
||||
- Demonstrates expertise
|
||||
- Shareable
|
||||
- Memory-creating
|
||||
**For detailed tool types and examples**: See [references/tool-types.md](references/tool-types.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -163,277 +64,84 @@ Before designing a tool strategy, understand:
|
||||
|
||||
### Start with Pain Points
|
||||
|
||||
1. **What problems does your audience Google?**
|
||||
- Search query research
|
||||
- Common questions
|
||||
- "How to" searches
|
||||
1. **What problems does your audience Google?** - Search query research, common questions
|
||||
|
||||
2. **What manual processes are tedious?**
|
||||
- Tasks done in spreadsheets
|
||||
- Repetitive calculations
|
||||
- Copy-paste workflows
|
||||
2. **What manual processes are tedious?** - Spreadsheet tasks, repetitive calculations
|
||||
|
||||
3. **What do they need before buying your product?**
|
||||
- Assessments of current state
|
||||
- Planning/scoping
|
||||
- Comparisons
|
||||
3. **What do they need before buying your product?** - Assessments, planning, comparisons
|
||||
|
||||
4. **What information do they wish they had?**
|
||||
- Data they can't easily access
|
||||
- Personalized insights
|
||||
- Industry benchmarks
|
||||
4. **What information do they wish they had?** - Data they can't easily access, benchmarks
|
||||
|
||||
### Validate the Idea
|
||||
|
||||
**Search demand:**
|
||||
- Is there search volume for this problem?
|
||||
- What keywords would rank?
|
||||
- How competitive?
|
||||
- **Search demand**: Is there search volume? How competitive?
|
||||
- **Uniqueness**: What exists? How can you be 10x better?
|
||||
- **Lead quality**: Does this audience match buyers?
|
||||
- **Build feasibility**: How complex? Can you scope an MVP?
|
||||
|
||||
**Uniqueness:**
|
||||
- What exists already?
|
||||
- How can you be 10x better or different?
|
||||
- What's your unique angle?
|
||||
---
|
||||
|
||||
**Lead quality:**
|
||||
- Does this problem-audience match buyers?
|
||||
- Will users be your target customers?
|
||||
- Is there a natural path to your product?
|
||||
## Lead Capture Strategy
|
||||
|
||||
**Build feasibility:**
|
||||
- How complex to build?
|
||||
- Can you scope an MVP?
|
||||
- Ongoing maintenance burden?
|
||||
### Gating Options
|
||||
|
||||
| Approach | Pros | Cons |
|
||||
|----------|------|------|
|
||||
| Fully gated | Maximum capture | Lower usage |
|
||||
| Partially gated | Balance of both | Common pattern |
|
||||
| Ungated + optional | Maximum reach | Lower capture |
|
||||
| Ungated entirely | Pure SEO/brand | No direct leads |
|
||||
|
||||
### Lead Capture Best Practices
|
||||
- Value exchange clear: "Get your full report"
|
||||
- Minimal friction: Email only
|
||||
- Show preview of what they'll get
|
||||
- Optional: Segment by asking one qualifying question
|
||||
|
||||
---
|
||||
|
||||
## SEO Considerations
|
||||
|
||||
### Keyword Strategy
|
||||
**Tool landing page**: "[thing] calculator", "[thing] generator", "free [tool type]"
|
||||
|
||||
**Tool landing page:**
|
||||
- "[thing] calculator"
|
||||
- "[thing] generator"
|
||||
- "free [tool type]"
|
||||
- "[industry] [tool type]"
|
||||
|
||||
**Supporting content:**
|
||||
- "How to [use case]"
|
||||
- "What is [concept tool helps with]"
|
||||
- Blog posts that link to tool
|
||||
**Supporting content**: "How to [use case]", "What is [concept]"
|
||||
|
||||
### Link Building
|
||||
|
||||
Free tools attract links because:
|
||||
- Genuinely useful (people reference them)
|
||||
- Unique (can't link to just any page)
|
||||
- Shareable (social amplification)
|
||||
|
||||
**Outreach opportunities:**
|
||||
- Roundup posts ("best free tools for X")
|
||||
- Resource pages
|
||||
- Industry publications
|
||||
- Blogs writing about the problem
|
||||
|
||||
### Technical SEO
|
||||
|
||||
- Fast load time critical
|
||||
- Mobile-friendly essential
|
||||
- Crawlable content (not just JS app)
|
||||
- Proper meta tags
|
||||
- Schema markup if applicable
|
||||
|
||||
---
|
||||
|
||||
## Lead Capture Strategy
|
||||
|
||||
### When to Gate
|
||||
|
||||
**Fully gated (email required to use):**
|
||||
- High-value, unique tools
|
||||
- Personalized reports
|
||||
- Risk: Lower usage
|
||||
|
||||
**Partially gated (email for full results):**
|
||||
- Show preview, gate details
|
||||
- Better balance
|
||||
- Most common pattern
|
||||
|
||||
**Ungated with optional capture:**
|
||||
- Tool is free to use
|
||||
- Email to save/share results
|
||||
- Highest usage, lower capture
|
||||
|
||||
**Ungated entirely:**
|
||||
- Pure SEO/brand play
|
||||
- No direct leads
|
||||
- Maximum reach
|
||||
|
||||
### Lead Capture Best Practices
|
||||
|
||||
- Value exchange clear: "Get your full report"
|
||||
- Minimal friction: Email only
|
||||
- Show preview of what they'll get
|
||||
- Optional: Segment by asking one qualifying question
|
||||
|
||||
### Post-Capture
|
||||
|
||||
- Immediate email with results/link
|
||||
- Nurture sequence relevant to tool topic
|
||||
- Clear path to main product
|
||||
- Don't spam—provide value
|
||||
|
||||
---
|
||||
|
||||
## Build vs. Buy vs. Embed
|
||||
## Build vs. Buy
|
||||
|
||||
### Build Custom
|
||||
|
||||
**When:**
|
||||
- Unique concept, nothing exists
|
||||
- Core to brand/product
|
||||
- High strategic value
|
||||
- Have development capacity
|
||||
|
||||
**Consider:**
|
||||
- Development time
|
||||
- Ongoing maintenance
|
||||
- Hosting costs
|
||||
- Bug fixes
|
||||
When: Unique concept, core to brand, high strategic value, have dev capacity
|
||||
|
||||
### Use No-Code Tools
|
||||
|
||||
**Options:**
|
||||
- Outgrow, Involve.me (calculators/quizzes)
|
||||
- Typeform, Tally (forms/quizzes)
|
||||
- Notion, Coda (databases)
|
||||
- Bubble, Webflow (apps)
|
||||
|
||||
**When:**
|
||||
- Speed to market
|
||||
- Limited dev resources
|
||||
- Testing concept viability
|
||||
Options: Outgrow, Involve.me, Typeform, Tally, Bubble, Webflow
|
||||
When: Speed to market, limited dev resources, testing concept
|
||||
|
||||
### Embed Existing
|
||||
|
||||
**When:**
|
||||
- Something good already exists
|
||||
- White-label options available
|
||||
- Not core differentiator
|
||||
|
||||
**Consider:**
|
||||
- Branding limitations
|
||||
- Dependency on third party
|
||||
- Cost vs. build
|
||||
When: Something good exists, white-label available, not core differentiator
|
||||
|
||||
---
|
||||
|
||||
## MVP Scope
|
||||
|
||||
### Minimum Viable Tool
|
||||
|
||||
1. **Core functionality only**
|
||||
- Does the one thing
|
||||
- No bells and whistles
|
||||
- Works reliably
|
||||
|
||||
2. **Essential UX**
|
||||
- Clear input
|
||||
- Obvious output
|
||||
- Mobile works
|
||||
|
||||
3. **Basic lead capture**
|
||||
- Email collection works
|
||||
- Leads go somewhere useful
|
||||
- Follow-up exists
|
||||
1. Core functionality only—does the one thing, works reliably
|
||||
2. Essential UX—clear input, obvious output, mobile works
|
||||
3. Basic lead capture—email collection, leads go somewhere useful
|
||||
|
||||
### What to Skip Initially
|
||||
|
||||
- Account creation
|
||||
- Saving results
|
||||
- Advanced features
|
||||
- Perfect design
|
||||
- Every edge case
|
||||
|
||||
### Iterate Based on Use
|
||||
|
||||
- Track where users drop off
|
||||
- See what questions they have
|
||||
- Add features that get requested
|
||||
- Improve based on data
|
||||
Account creation, saving results, advanced features, perfect design, every edge case
|
||||
|
||||
---
|
||||
|
||||
## Promotion Strategy
|
||||
|
||||
### Launch
|
||||
|
||||
**Owned channels:**
|
||||
- Email list announcement
|
||||
- Blog post / landing page
|
||||
- Social media
|
||||
- Product hunt (if applicable)
|
||||
|
||||
**Outreach:**
|
||||
- Relevant newsletters
|
||||
- Industry publications
|
||||
- Bloggers in space
|
||||
- Social influencers
|
||||
|
||||
### Ongoing
|
||||
|
||||
**SEO:**
|
||||
- Target tool-related keywords
|
||||
- Supporting content
|
||||
- Link building
|
||||
|
||||
**Social:**
|
||||
- Share interesting results (anonymized)
|
||||
- Use case examples
|
||||
- Tips for using the tool
|
||||
|
||||
**Product integration:**
|
||||
- Mention in sales process
|
||||
- Link from related product features
|
||||
- Include in email sequences
|
||||
|
||||
---
|
||||
|
||||
## Measurement
|
||||
|
||||
### Metrics to Track
|
||||
|
||||
**Acquisition:**
|
||||
- Traffic to tool
|
||||
- Traffic sources
|
||||
- Keyword rankings
|
||||
- Backlinks acquired
|
||||
|
||||
**Engagement:**
|
||||
- Tool usage/completions
|
||||
- Time spent
|
||||
- Return visitors
|
||||
- Shares
|
||||
|
||||
**Conversion:**
|
||||
- Email captures
|
||||
- Lead quality score
|
||||
- MQLs generated
|
||||
- Pipeline influenced
|
||||
- Customers attributed
|
||||
|
||||
### Attribution
|
||||
|
||||
- UTM parameters for paid promotion
|
||||
- Separate landing page for organic
|
||||
- Track lead source through funnel
|
||||
- Survey new customers
|
||||
|
||||
---
|
||||
|
||||
## Evaluation Framework
|
||||
|
||||
### Tool Idea Scorecard
|
||||
## Evaluation Scorecard
|
||||
|
||||
Rate each factor 1-5:
|
||||
|
||||
@@ -441,129 +149,23 @@ Rate each factor 1-5:
|
||||
|--------|-------|
|
||||
| Search demand exists | ___ |
|
||||
| Audience match to buyers | ___ |
|
||||
| Uniqueness vs. existing tools | ___ |
|
||||
| Uniqueness vs. existing | ___ |
|
||||
| Natural path to product | ___ |
|
||||
| Build feasibility | ___ |
|
||||
| Maintenance burden (inverse) | ___ |
|
||||
| Link-building potential | ___ |
|
||||
| Share-worthiness | ___ |
|
||||
|
||||
**25+**: Strong candidate
|
||||
**15-24**: Promising, needs refinement
|
||||
**<15**: Reconsider or scope differently
|
||||
|
||||
### ROI Projection
|
||||
|
||||
```
|
||||
Estimated monthly leads: [X]
|
||||
Lead-to-customer rate: [Y%]
|
||||
Average customer value: [$Z]
|
||||
|
||||
Monthly value: X × Y% × $Z = $___
|
||||
|
||||
Build cost: $___
|
||||
Monthly maintenance: $___
|
||||
|
||||
Payback period: Build cost / (Monthly value - Monthly maintenance)
|
||||
```
|
||||
**25+**: Strong candidate | **15-24**: Promising | **<15**: Reconsider
|
||||
|
||||
---
|
||||
|
||||
## Output Format
|
||||
## Task-Specific Questions
|
||||
|
||||
### Tool Strategy Document
|
||||
|
||||
```
|
||||
# Free Tool Strategy: [Tool Name]
|
||||
|
||||
## Concept
|
||||
[What it does in one paragraph]
|
||||
|
||||
## Target Audience
|
||||
[Who uses it, what problem it solves]
|
||||
|
||||
## Lead Generation Fit
|
||||
[How this connects to your product/sales]
|
||||
|
||||
## SEO Opportunity
|
||||
- Target keywords: [list]
|
||||
- Search volume: [estimate]
|
||||
- Competition: [assessment]
|
||||
|
||||
## Build Approach
|
||||
- Custom / No-code / Embed
|
||||
- MVP scope: [core features]
|
||||
- Estimated effort: [time/cost]
|
||||
|
||||
## Lead Capture Strategy
|
||||
- Gating approach: [Full/Partial/Ungated]
|
||||
- Capture mechanism: [description]
|
||||
- Follow-up sequence: [outline]
|
||||
|
||||
## Success Metrics
|
||||
- [Metric 1]: [Target]
|
||||
- [Metric 2]: [Target]
|
||||
|
||||
## Promotion Plan
|
||||
- Launch: [channels]
|
||||
- Ongoing: [strategy]
|
||||
|
||||
## Timeline
|
||||
- Phase 1: [scope] - [timeframe]
|
||||
- Phase 2: [scope] - [timeframe]
|
||||
```
|
||||
|
||||
### Implementation Spec
|
||||
If moving forward with build
|
||||
|
||||
### Promotion Plan
|
||||
Detailed launch and ongoing strategy
|
||||
|
||||
---
|
||||
|
||||
## Example Tool Concepts by Business Type
|
||||
|
||||
### SaaS Product
|
||||
- Product ROI calculator
|
||||
- Competitor comparison tool
|
||||
- Readiness assessment quiz
|
||||
- Template library for use case
|
||||
|
||||
### Agency/Services
|
||||
- Industry benchmark tool
|
||||
- Project scoping calculator
|
||||
- Portfolio review tool
|
||||
- Cost estimator
|
||||
|
||||
### E-commerce
|
||||
- Product finder quiz
|
||||
- Comparison tool
|
||||
- Size/fit calculator
|
||||
- Savings calculator
|
||||
|
||||
### Developer Tools
|
||||
- Code snippet library
|
||||
- Testing/preview tool
|
||||
- Documentation generator
|
||||
- Interactive tutorials
|
||||
|
||||
### Finance
|
||||
- Financial calculators
|
||||
- Investment comparison
|
||||
- Budget planner
|
||||
- Tax estimator
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
|
||||
If you need more context:
|
||||
1. What's your core product/service?
|
||||
2. What problems does your audience commonly face?
|
||||
3. What existing tools do they use for workarounds?
|
||||
4. How do you currently generate leads?
|
||||
5. What technical resources are available?
|
||||
6. What's the timeline and budget?
|
||||
1. What existing tools does your audience use for workarounds?
|
||||
2. How do you currently generate leads?
|
||||
3. What technical resources are available?
|
||||
4. What's the timeline and budget?
|
||||
|
||||
---
|
||||
|
||||
@@ -573,4 +175,3 @@ If you need more context:
|
||||
- **seo-audit**: For SEO-optimizing the tool
|
||||
- **analytics-tracking**: For measuring tool usage
|
||||
- **email-sequence**: For nurturing leads from the tool
|
||||
- **programmatic-seo**: For building tool-based pages at scale
|
||||
|
||||
208
skills/free-tool-strategy/references/tool-types.md
Normal file
208
skills/free-tool-strategy/references/tool-types.md
Normal file
@@ -0,0 +1,208 @@
|
||||
# Free Tool Types Reference
|
||||
|
||||
Detailed guide to each type of marketing tool you can build.
|
||||
|
||||
## Calculators
|
||||
|
||||
**Best for**: Decisions involving numbers, comparisons, estimates
|
||||
|
||||
**Examples**:
|
||||
- ROI calculator
|
||||
- Savings calculator
|
||||
- Cost comparison tool
|
||||
- Salary calculator
|
||||
- Tax estimator
|
||||
- Pricing estimator
|
||||
- Compound interest calculator
|
||||
- Break-even calculator
|
||||
|
||||
**Why they work**:
|
||||
- Personalized output
|
||||
- High perceived value
|
||||
- Share-worthy results
|
||||
- Clear problem → solution
|
||||
|
||||
**Implementation tips**:
|
||||
- Keep inputs simple
|
||||
- Show calculations transparently
|
||||
- Make results shareable
|
||||
- Add "powered by" branding
|
||||
|
||||
---
|
||||
|
||||
## Generators
|
||||
|
||||
**Best for**: Creating something useful quickly
|
||||
|
||||
**Examples**:
|
||||
- Policy generator (privacy, terms)
|
||||
- Template generator
|
||||
- Name/tagline generator
|
||||
- Email subject line generator
|
||||
- Resume builder
|
||||
- Color palette generator
|
||||
- Logo maker
|
||||
- Contract generator
|
||||
|
||||
**Why they work**:
|
||||
- Tangible output
|
||||
- Saves time
|
||||
- Easily shared
|
||||
- Repeat usage
|
||||
|
||||
**Implementation tips**:
|
||||
- Output should be immediately usable
|
||||
- Allow customization
|
||||
- Offer download/export options
|
||||
- Include email gating for premium outputs
|
||||
|
||||
---
|
||||
|
||||
## Analyzers/Auditors
|
||||
|
||||
**Best for**: Evaluating existing work or assets
|
||||
|
||||
**Examples**:
|
||||
- Website grader
|
||||
- SEO analyzer
|
||||
- Email subject tester
|
||||
- Headline analyzer
|
||||
- Security checker
|
||||
- Performance auditor
|
||||
- Accessibility checker
|
||||
- Code quality analyzer
|
||||
|
||||
**Why they work**:
|
||||
- Curiosity-driven
|
||||
- Personalized insights
|
||||
- Creates awareness of problems
|
||||
- Natural lead to solution
|
||||
|
||||
**Implementation tips**:
|
||||
- Score or grade for gamification
|
||||
- Benchmark against averages
|
||||
- Provide actionable recommendations
|
||||
- Follow up with improvement offers
|
||||
|
||||
---
|
||||
|
||||
## Testers/Validators
|
||||
|
||||
**Best for**: Checking if something works
|
||||
|
||||
**Examples**:
|
||||
- Meta tag preview
|
||||
- Email rendering test
|
||||
- Mobile-friendly test
|
||||
- Speed test
|
||||
- DNS checker
|
||||
- SSL certificate checker
|
||||
- Redirect checker
|
||||
- Broken link finder
|
||||
|
||||
**Why they work**:
|
||||
- Immediate utility
|
||||
- Bookmark-worthy
|
||||
- Repeat usage
|
||||
- Professional necessity
|
||||
|
||||
**Implementation tips**:
|
||||
- Fast results are essential
|
||||
- Show pass/fail clearly
|
||||
- Provide fix instructions
|
||||
- Integrate with your product where relevant
|
||||
|
||||
---
|
||||
|
||||
## Libraries/Resources
|
||||
|
||||
**Best for**: Reference material
|
||||
|
||||
**Examples**:
|
||||
- Icon library
|
||||
- Template library
|
||||
- Code snippet library
|
||||
- Example gallery
|
||||
- Industry directory
|
||||
- Resource list
|
||||
- Swipe file collection
|
||||
- Font pairing tool
|
||||
|
||||
**Why they work**:
|
||||
- High SEO value
|
||||
- Ongoing traffic
|
||||
- Establishes authority
|
||||
- Linkable asset
|
||||
|
||||
**Implementation tips**:
|
||||
- Make searchable/filterable
|
||||
- Allow easy copying/downloading
|
||||
- Update regularly
|
||||
- Accept community submissions
|
||||
|
||||
---
|
||||
|
||||
## Interactive Educational
|
||||
|
||||
**Best for**: Learning/understanding
|
||||
|
||||
**Examples**:
|
||||
- Interactive tutorials
|
||||
- Code playgrounds
|
||||
- Visual explainers
|
||||
- Quizzes/assessments
|
||||
- Simulators
|
||||
- Comparison tools
|
||||
- Decision trees
|
||||
- Configurators
|
||||
|
||||
**Why they work**:
|
||||
- Engages deeply
|
||||
- Demonstrates expertise
|
||||
- Shareable
|
||||
- Memory-creating
|
||||
|
||||
**Implementation tips**:
|
||||
- Make it hands-on
|
||||
- Show immediate feedback
|
||||
- Lead to deeper resources
|
||||
- Capture engaged users
|
||||
|
||||
---
|
||||
|
||||
## Tool Concept Examples by Industry
|
||||
|
||||
### SaaS Product
|
||||
- Product ROI calculator
|
||||
- Competitor comparison tool
|
||||
- Readiness assessment quiz
|
||||
- Template library for use case
|
||||
- Feature configurator
|
||||
|
||||
### Agency/Services
|
||||
- Industry benchmark tool
|
||||
- Project scoping calculator
|
||||
- Portfolio review tool
|
||||
- Cost estimator
|
||||
- Proposal generator
|
||||
|
||||
### E-commerce
|
||||
- Product finder quiz
|
||||
- Comparison tool
|
||||
- Size/fit calculator
|
||||
- Savings calculator
|
||||
- Gift finder
|
||||
|
||||
### Developer Tools
|
||||
- Code snippet library
|
||||
- Testing/preview tool
|
||||
- Documentation generator
|
||||
- Interactive tutorials
|
||||
- API playground
|
||||
|
||||
### Finance
|
||||
- Financial calculators
|
||||
- Investment comparison
|
||||
- Budget planner
|
||||
- Tax estimator
|
||||
- Loan calculator
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: launch-strategy
|
||||
version: 1.0.0
|
||||
description: "When the user wants to plan a product launch, feature announcement, or release strategy. Also use when the user mentions 'launch,' 'Product Hunt,' 'feature release,' 'announcement,' 'go-to-market,' 'beta launch,' 'early access,' 'waitlist,' or 'product update.' This skill covers phased launches, channel strategy, and ongoing launch momentum."
|
||||
---
|
||||
|
||||
@@ -7,6 +8,13 @@ description: "When the user wants to plan a product launch, feature announcement
|
||||
|
||||
You are an expert in SaaS product launches and feature announcements. Your goal is to help users plan launches that build momentum, capture attention, and convert interest into users.
|
||||
|
||||
## Before Starting
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
---
|
||||
|
||||
## Core Philosophy
|
||||
|
||||
The best companies don't just launch once—they launch again and again. Every new feature, improvement, and update is an opportunity to capture attention and engage your audience.
|
||||
@@ -323,9 +331,8 @@ Even small changelog updates remind customers your product is evolving. This bui
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What are you launching? (New product, major feature, minor update)
|
||||
2. What's your current audience size and engagement?
|
||||
3. What owned channels do you have? (Email list size, blog traffic, community)
|
||||
|
||||
@@ -1,14 +1,18 @@
|
||||
---
|
||||
name: marketing-ideas
|
||||
description: "When the user needs marketing ideas, inspiration, or strategies for their SaaS or software product. Also use when the user asks for 'marketing ideas,' 'growth ideas,' 'how to market,' 'marketing strategies,' 'marketing tactics,' 'ways to promote,' or 'ideas to grow.' This skill provides 140 proven marketing approaches organized by category."
|
||||
version: 1.0.0
|
||||
description: "When the user needs marketing ideas, inspiration, or strategies for their SaaS or software product. Also use when the user asks for 'marketing ideas,' 'growth ideas,' 'how to market,' 'marketing strategies,' 'marketing tactics,' 'ways to promote,' or 'ideas to grow.' This skill provides 139 proven marketing approaches organized by category."
|
||||
---
|
||||
|
||||
# Marketing Ideas for SaaS
|
||||
|
||||
You are a marketing strategist with a library of 140 proven marketing ideas. Your goal is to help users find the right marketing strategies for their specific situation, stage, and resources.
|
||||
You are a marketing strategist with a library of 139 proven marketing ideas. Your goal is to help users find the right marketing strategies for their specific situation, stage, and resources.
|
||||
|
||||
## How to Use This Skill
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
When asked for marketing ideas:
|
||||
1. Ask about their product, audience, and current stage if not clear
|
||||
2. Suggest 3-5 most relevant ideas based on their context
|
||||
@@ -17,536 +21,125 @@ When asked for marketing ideas:
|
||||
|
||||
---
|
||||
|
||||
## The 140 Marketing Ideas
|
||||
|
||||
Organized by category for easy reference.
|
||||
|
||||
---
|
||||
|
||||
## Content & SEO
|
||||
|
||||
### 3. Easy Keyword Ranking
|
||||
Target low-competition keywords where you can rank quickly. Find terms competitors overlook—niche variations, long-tail queries, emerging topics. Build authority in micro-niches before expanding.
|
||||
|
||||
### 7. SEO Audit
|
||||
Conduct comprehensive technical SEO audits of your own site and share findings publicly. Document fixes and improvements to build authority while improving your rankings.
|
||||
|
||||
### 39. Glossary Marketing
|
||||
Create comprehensive glossaries defining industry terms. Each term becomes an SEO-optimized page targeting "what is X" searches, building topical authority while capturing top-of-funnel traffic.
|
||||
|
||||
### 40. Programmatic SEO
|
||||
Build template-driven pages at scale targeting keyword patterns. Location pages, comparison pages, integration pages—any pattern with search volume can become a scalable content engine.
|
||||
|
||||
### 41. Content Repurposing
|
||||
Transform one piece of content into multiple formats. Blog post becomes Twitter thread, YouTube video, podcast episode, infographic. Maximize ROI on content creation.
|
||||
|
||||
### 56. Proprietary Data Content
|
||||
Leverage unique data from your product to create original research and reports. Data competitors can't replicate creates linkable, quotable assets.
|
||||
|
||||
### 67. Internal Linking
|
||||
Strategic internal linking distributes authority and improves crawlability. Build topical clusters connecting related content to strengthen overall SEO performance.
|
||||
|
||||
### 73. Content Refreshing
|
||||
Regularly update existing content with fresh data, examples, and insights. Refreshed content often outperforms new content and protects existing rankings.
|
||||
|
||||
### 74. Knowledge Base SEO
|
||||
Optimize help documentation for search. Support articles targeting problem-solution queries capture users actively seeking solutions.
|
||||
|
||||
### 137. Parasite SEO
|
||||
Publish content on high-authority platforms (Medium, LinkedIn, Substack) that rank faster than your own domain. Funnel that traffic back to your product.
|
||||
|
||||
---
|
||||
|
||||
## Competitor & Comparison
|
||||
|
||||
### 2. Competitor Comparison Pages
|
||||
Create detailed comparison pages positioning your product against competitors. "[Your Product] vs [Competitor]" and "[Competitor] alternatives" pages capture high-intent searchers.
|
||||
|
||||
### 4. Marketing Jiu-Jitsu
|
||||
Turn competitor weaknesses into your strengths. When competitors raise prices, launch affordability campaigns. When they have outages, emphasize your reliability.
|
||||
|
||||
### 38. Competitive Ad Research
|
||||
Study competitor advertising through tools like SpyFu or Facebook Ad Library. Learn what messaging resonates, then improve on their approach.
|
||||
|
||||
---
|
||||
|
||||
## Free Tools & Engineering
|
||||
|
||||
### 5. Side Projects as Marketing
|
||||
Build small, useful tools related to your main product. Side projects attract users who may later convert, generate backlinks, and showcase your capabilities.
|
||||
|
||||
### 30. Engineering as Marketing
|
||||
Build free tools that solve real problems for your target audience. Calculators, analyzers, generators—useful utilities that naturally lead to your paid product.
|
||||
|
||||
### 31. Importers as Marketing
|
||||
Build import tools for competitor data. "Import from [Competitor]" reduces switching friction while capturing users actively looking to leave.
|
||||
|
||||
### 92. Quiz Marketing
|
||||
Create interactive quizzes that engage users while qualifying leads. Personality quizzes, assessments, and diagnostic tools generate shares and capture emails.
|
||||
|
||||
### 93. Calculator Marketing
|
||||
Build calculators solving real problems—ROI calculators, pricing estimators, savings tools. Calculators attract links, rank well, and demonstrate value.
|
||||
|
||||
### 94. Chrome Extensions
|
||||
Create browser extensions providing standalone value. Chrome Web Store becomes another distribution channel while keeping your brand in daily view.
|
||||
|
||||
### 110. Microsites
|
||||
Build focused microsites for specific campaigns, products, or audiences. Dedicated domains can rank faster and allow bolder positioning.
|
||||
|
||||
### 117. Scanners
|
||||
Build free scanning tools that audit or analyze something for users. Website scanners, security checkers, performance analyzers—provide value while showcasing expertise.
|
||||
|
||||
### 122. Public APIs
|
||||
Open APIs enable developers to build on your platform, creating an ecosystem that attracts users and increases switching costs.
|
||||
|
||||
---
|
||||
|
||||
## Paid Advertising
|
||||
|
||||
### 18. Podcast Advertising
|
||||
Sponsor relevant podcasts to reach engaged audiences. Host-read ads perform especially well due to built-in trust.
|
||||
|
||||
### 48. Pre-targeting Ads
|
||||
Show awareness ads before launching direct response campaigns. Warm audiences convert better than cold ones.
|
||||
|
||||
### 55. Facebook Ads
|
||||
Meta's detailed targeting reaches specific audiences. Test creative variations and leverage retargeting for users who've shown interest.
|
||||
|
||||
### 57. Instagram Ads
|
||||
Visual-first advertising for products with strong imagery. Stories and Reels ads capture attention in native formats.
|
||||
|
||||
### 60. Twitter Ads
|
||||
Reach engaged professionals discussing industry topics. Promoted tweets and follower campaigns build visibility.
|
||||
|
||||
### 62. LinkedIn Ads
|
||||
Target by job title, company size, and industry. Premium CPMs justified by B2B purchase intent.
|
||||
|
||||
### 64. Reddit Ads
|
||||
Reach passionate communities with authentic messaging. Reddit users detect inauthentic ads quickly—transparency wins.
|
||||
|
||||
### 66. Quora Ads
|
||||
Target users actively asking questions your product answers. Intent-rich environment for educational ads.
|
||||
|
||||
### 68. Google Ads
|
||||
Capture high-intent search queries. Brand terms protect your name; competitor terms capture switchers; category terms reach researchers.
|
||||
|
||||
### 70. YouTube Ads
|
||||
Video ads with detailed targeting. Pre-roll and discovery ads reach users consuming related content.
|
||||
|
||||
### 72. Cross-Platform Retargeting
|
||||
Follow users across platforms with consistent messaging. Retargeting converts window shoppers into buyers.
|
||||
|
||||
### 129. Click-to-Messenger Ads
|
||||
Ads that open direct conversations rather than landing pages. Higher engagement through immediate dialogue.
|
||||
|
||||
---
|
||||
|
||||
## Social Media & Community
|
||||
|
||||
### 42. Community Marketing
|
||||
Build and nurture communities around your product or industry. Slack groups, Discord servers, Facebook groups, or forums create loyal advocates.
|
||||
|
||||
### 43. Quora Marketing
|
||||
Answer relevant questions with genuine expertise. Include product mentions where naturally appropriate.
|
||||
|
||||
### 76. Reddit Keyword Research
|
||||
Mine Reddit for real language your audience uses. Discover pain points, objections, and desires expressed naturally.
|
||||
|
||||
### 82. Reddit Marketing
|
||||
Participate authentically in relevant subreddits. Provide value first; promotional content fails without established credibility.
|
||||
|
||||
### 105. LinkedIn Audience
|
||||
Build personal brands on LinkedIn for B2B reach. Thought leadership content builds authority and drives inbound interest.
|
||||
|
||||
### 106. Instagram Audience
|
||||
Visual storytelling for products with strong aesthetics. Behind-the-scenes, user stories, and product showcases build following.
|
||||
|
||||
### 107. X Audience
|
||||
Build presence on X/Twitter through consistent value. Threads, insights, and engagement grow followings that convert.
|
||||
|
||||
### 130. Short Form Video
|
||||
TikTok, Reels, and Shorts reach new audiences with snackable content. Educational and entertaining short videos spread organically.
|
||||
|
||||
### 138. Engagement Pods
|
||||
Coordinate with peers to boost each other's content engagement. Early engagement signals help content reach wider audiences.
|
||||
|
||||
### 139. Comment Marketing
|
||||
Thoughtful comments on relevant content build visibility. Add value to discussions where your target audience pays attention.
|
||||
|
||||
---
|
||||
|
||||
## Email Marketing
|
||||
|
||||
### 17. Mistake Email Marketing
|
||||
Send "oops" emails when something genuinely goes wrong. Authenticity and transparency often generate higher engagement than polished campaigns.
|
||||
|
||||
### 25. Reactivation Emails
|
||||
Win back churned or inactive users with targeted campaigns. Remind them of value, share what's new, offer incentives.
|
||||
|
||||
### 28. Founder Welcome Email
|
||||
Personal welcome emails from founders create connection. Share your story, ask about their goals, start relationships.
|
||||
|
||||
### 36. Dynamic Email Capture
|
||||
Smart email capture that adapts to user behavior. Exit intent, scroll depth, time on page—trigger popups at the right moment.
|
||||
|
||||
### 79. Monthly Newsletters
|
||||
Consistent newsletters keep your brand top-of-mind. Curate industry news, share insights, highlight product updates.
|
||||
|
||||
### 80. Inbox Placement
|
||||
Technical email optimization for deliverability. Authentication, list hygiene, and engagement signals determine whether emails arrive.
|
||||
|
||||
### 113. Onboarding Emails
|
||||
Guide new users to activation with targeted email sequences. Behavior-triggered emails outperform time-based schedules.
|
||||
|
||||
### 115. Win-back Emails
|
||||
Re-engage churned users with compelling reasons to return. New features, improvements, or offers reignite interest.
|
||||
|
||||
### 116. Trial Reactivation
|
||||
Expired trials aren't lost causes. Targeted campaigns highlighting new value can recover abandoned trials.
|
||||
|
||||
---
|
||||
|
||||
## Partnerships & Programs
|
||||
|
||||
### 9. Affiliate Discovery Through Backlinks
|
||||
Find potential affiliates by analyzing who links to competitors. Sites already promoting similar products may welcome affiliate relationships.
|
||||
|
||||
### 27. Influencer Whitelisting
|
||||
Run ads through influencer accounts for authentic reach. Whitelisting combines influencer credibility with paid targeting.
|
||||
|
||||
### 33. Reseller Programs
|
||||
Enable agencies and service providers to resell your product. White-label options create invested distribution partners.
|
||||
|
||||
### 37. Expert Networks
|
||||
Build networks of certified experts who implement your product. Experts extend your reach while ensuring quality implementations.
|
||||
|
||||
### 50. Newsletter Swaps
|
||||
Exchange promotional mentions with complementary newsletters. Access each other's audiences without advertising costs.
|
||||
|
||||
### 51. Article Quotes
|
||||
Contribute expert quotes to journalists and publications. Tools like HARO connect experts with writers seeking sources.
|
||||
|
||||
### 77. Pixel Sharing
|
||||
Partner with complementary companies to share remarketing audiences. Expand reach through strategic data partnerships.
|
||||
|
||||
### 78. Shared Slack Channels
|
||||
Create shared channels with partners and customers. Direct communication lines strengthen relationships.
|
||||
|
||||
### 97. Affiliate Program
|
||||
Structured commission programs for referrers. Affiliates become motivated salespeople earning from successful referrals.
|
||||
|
||||
### 98. Integration Marketing
|
||||
Joint marketing with integration partners. Combined audiences and shared promotion amplify reach for both products.
|
||||
|
||||
### 99. Community Sponsorship
|
||||
Sponsor relevant communities, newsletters, or publications. Aligned sponsorships build brand awareness with target audiences.
|
||||
|
||||
---
|
||||
|
||||
## Events & Speaking
|
||||
|
||||
### 15. Live Webinars
|
||||
Educational webinars demonstrate expertise while generating leads. Interactive formats create engagement and urgency.
|
||||
|
||||
### 53. Virtual Summits
|
||||
Multi-speaker online events attract audiences through varied perspectives. Summit speakers promote to their audiences, amplifying reach.
|
||||
|
||||
### 87. Roadshows
|
||||
Take your product on the road to meet customers directly. Regional events create personal connections at scale.
|
||||
|
||||
### 90. Local Meetups
|
||||
Host or attend local meetups in key markets. In-person connections create stronger relationships than digital alone.
|
||||
|
||||
### 91. Meetup Sponsorship
|
||||
Sponsor relevant meetups to reach engaged local audiences. Food, venue, or swag sponsorships generate goodwill.
|
||||
|
||||
### 103. Conference Speaking
|
||||
Speak at industry conferences to reach engaged audiences. Presentations showcase expertise while generating leads.
|
||||
|
||||
### 126. Conferences
|
||||
Host your own conference to become the center of your industry. User conferences strengthen communities and generate content.
|
||||
|
||||
### 132. Conference Sponsorship
|
||||
Sponsor relevant conferences for brand visibility. Booth presence, speaking slots, and attendee lists justify investment.
|
||||
|
||||
---
|
||||
|
||||
## PR & Media
|
||||
|
||||
### 8. Media Acquisitions as Marketing
|
||||
Acquire newsletters, podcasts, or publications in your space. Owned media provides direct access to engaged audiences.
|
||||
|
||||
### 52. Press Coverage
|
||||
Pitch newsworthy stories to relevant publications. Launches, funding, data, and trends create press opportunities.
|
||||
|
||||
### 84. Fundraising PR
|
||||
Leverage funding announcements for press coverage. Rounds signal validation and create natural news hooks.
|
||||
|
||||
### 118. Documentaries
|
||||
Create documentary content exploring your industry or customers. Long-form storytelling builds deep connection and differentiation.
|
||||
|
||||
---
|
||||
|
||||
## Launches & Promotions
|
||||
|
||||
### 21. Black Friday Promotions
|
||||
Annual deals create urgency and acquisition spikes. Promotional periods capture deal-seekers who become long-term customers.
|
||||
|
||||
### 22. Product Hunt Launch
|
||||
Structured Product Hunt launches reach early adopters. Preparation, timing, and community engagement drive successful launches.
|
||||
|
||||
### 23. Early-Access Referrals
|
||||
Reward referrals with earlier access during launches. Waitlist referral programs create viral anticipation.
|
||||
|
||||
### 44. New Year Promotions
|
||||
New Year brings fresh budgets and goal-setting energy. Promotional timing aligned with renewal mindsets increases conversion.
|
||||
|
||||
### 54. Early Access Pricing
|
||||
Launch with discounted early access tiers. Early supporters get deals while you build testimonials and feedback.
|
||||
|
||||
### 58. Product Hunt Alternatives
|
||||
Launch on alternatives to Product Hunt—BetaList, Launching Next, AlternativeTo. Multiple launch platforms expand reach.
|
||||
|
||||
### 59. Twitter Giveaways
|
||||
Engagement-boosting giveaways that require follows, retweets, or tags. Giveaways grow following while generating buzz.
|
||||
|
||||
### 109. Giveaways
|
||||
Strategic giveaways attract attention and capture leads. Product giveaways, partner prizes, or experience rewards create engagement.
|
||||
|
||||
### 119. Vacation Giveaways
|
||||
Grand prize giveaways generate massive engagement. Dream vacation packages motivate sharing and participation.
|
||||
|
||||
### 140. Lifetime Deals
|
||||
One-time payment deals generate cash and users. Lifetime deal platforms reach deal-hunting audiences willing to pay upfront.
|
||||
|
||||
---
|
||||
|
||||
## Product-Led Growth
|
||||
|
||||
### 16. Powered By Marketing
|
||||
"Powered by [Your Product]" badges on customer output create free impressions. Every customer becomes a marketing channel.
|
||||
|
||||
### 19. Free Migrations
|
||||
Offer free migration services from competitors. Reduce switching friction while capturing users ready to leave.
|
||||
|
||||
### 20. Contract Buyouts
|
||||
Pay to exit competitor contracts. Dramatic commitment removes the final barrier for locked-in prospects.
|
||||
|
||||
### 32. One-Click Registration
|
||||
Minimize signup friction with one-click OAuth options. Pre-filled forms and instant access increase conversion.
|
||||
|
||||
### 69. In-App Upsells
|
||||
Strategic upgrade prompts within the product experience. Contextual upsells at usage limits or feature attempts convert best.
|
||||
|
||||
### 71. Newsletter Referrals
|
||||
Built-in referral programs for newsletters and content. Easy sharing mechanisms turn subscribers into promoters.
|
||||
|
||||
### 75. Viral Loops
|
||||
Product mechanics that naturally encourage sharing. Collaboration features, public outputs, or referral incentives create organic growth.
|
||||
|
||||
### 114. Offboarding Flows
|
||||
Optimize cancellation flows to retain or learn. Exit surveys, save offers, and pause options reduce churn.
|
||||
|
||||
### 124. Concierge Setup
|
||||
White-glove onboarding for high-value accounts. Personal setup assistance increases activation and retention.
|
||||
|
||||
### 127. Onboarding Optimization
|
||||
Continuous improvement of the new user experience. Faster time-to-value increases conversion and retention.
|
||||
|
||||
---
|
||||
|
||||
## Content Formats
|
||||
|
||||
### 1. Playlists as Marketing
|
||||
Create Spotify playlists for your audience—productivity playlists, work music, industry-themed collections. Daily listening touchpoints build brand affinity.
|
||||
|
||||
### 46. Template Marketing
|
||||
Offer free templates users can immediately use. Templates in your product create habit and dependency while showcasing capabilities.
|
||||
|
||||
### 49. Graphic Novel Marketing
|
||||
Transform complex stories into visual narratives. Graphic novels stand out and make abstract concepts tangible.
|
||||
|
||||
### 65. Promo Videos
|
||||
High-quality promotional videos showcase your product professionally. Invest in production value for shareable, memorable content.
|
||||
|
||||
### 81. Industry Interviews
|
||||
Interview customers, experts, and thought leaders. Interview content builds relationships while creating valuable assets.
|
||||
|
||||
### 89. Social Screenshots
|
||||
Design shareable screenshot templates for social proof. Make it easy for customers to share wins and testimonials.
|
||||
|
||||
### 101. Online Courses
|
||||
Educational courses establish authority while generating leads. Free courses attract learners; paid courses create revenue.
|
||||
|
||||
### 102. Book Marketing
|
||||
Author a book establishing expertise in your domain. Books create credibility, speaking opportunities, and media coverage.
|
||||
|
||||
### 111. Annual Reports
|
||||
Publish annual reports showcasing industry data and trends. Original research becomes a linkable, quotable reference.
|
||||
|
||||
### 120. End of Year Wraps
|
||||
Personalized year-end summaries users want to share. "Spotify Wrapped" style reports turn data into social content.
|
||||
|
||||
### 121. Podcasts
|
||||
Launch a podcast reaching audiences during commutes and workouts. Regular audio content builds intimate audience relationships.
|
||||
|
||||
### 63. Changelogs
|
||||
Public changelogs showcase product momentum. Regular updates demonstrate active development and responsiveness.
|
||||
|
||||
### 112. Public Demos
|
||||
Live product demonstrations showing real usage. Transparent demos build trust and answer questions in real-time.
|
||||
|
||||
---
|
||||
|
||||
## Unconventional & Creative
|
||||
|
||||
### 6. Awards as Marketing
|
||||
Create industry awards positioning your brand as tastemaker. Award programs attract applications, sponsors, and press coverage.
|
||||
|
||||
### 10. Challenges as Marketing
|
||||
Launch viral challenges that spread organically. Creative challenges generate user content and social sharing.
|
||||
|
||||
### 11. Reality TV Marketing
|
||||
Create reality-show style content following real customers. Documentary competition formats create engaging narratives.
|
||||
|
||||
### 12. Controversy as Marketing
|
||||
Strategic positioning against industry norms. Contrarian takes generate attention and discussion.
|
||||
|
||||
### 13. Moneyball Marketing
|
||||
Data-driven marketing finding undervalued channels and tactics. Analytics identify opportunities competitors overlook.
|
||||
|
||||
### 14. Curation as Marketing
|
||||
Curate valuable resources for your audience. Directories, lists, and collections provide value while building authority.
|
||||
|
||||
### 29. Grants as Marketing
|
||||
Offer grants to customers or community members. Grant programs generate applications, PR, and goodwill.
|
||||
|
||||
### 34. Product Competitions
|
||||
Sponsor competitions using your product. Hackathons, design contests, and challenges showcase capabilities while engaging users.
|
||||
|
||||
### 35. Cameo Marketing
|
||||
Use Cameo celebrities for personalized marketing messages. Unexpected celebrity endorsements generate buzz and shares.
|
||||
|
||||
### 83. OOH Advertising
|
||||
Out-of-home advertising—billboards, transit ads, and placements. Physical presence in key locations builds brand awareness.
|
||||
|
||||
### 125. Marketing Stunts
|
||||
Bold, attention-grabbing marketing moments. Well-executed stunts generate press coverage and social sharing.
|
||||
|
||||
### 128. Guerrilla Marketing
|
||||
Unconventional, low-cost marketing in unexpected places. Creative guerrilla tactics stand out from traditional advertising.
|
||||
|
||||
### 136. Humor Marketing
|
||||
Use humor to stand out and create memorability. Funny content gets shared and builds brand personality.
|
||||
|
||||
---
|
||||
|
||||
## Platforms & Marketplaces
|
||||
|
||||
### 24. Open Source as Marketing
|
||||
Open-source components or tools build developer goodwill. Open source creates community, contributions, and credibility.
|
||||
|
||||
### 61. App Store Optimization
|
||||
Optimize app store listings for discoverability. Keywords, screenshots, and reviews drive organic app installs.
|
||||
|
||||
### 86. App Marketplaces
|
||||
List in relevant app marketplaces and directories. Salesforce AppExchange, Shopify App Store, and similar platforms provide distribution.
|
||||
|
||||
### 95. YouTube Reviews
|
||||
Get YouTubers to review your product. Authentic reviews reach engaged audiences and create lasting content.
|
||||
|
||||
### 96. YouTube Channel
|
||||
Build a YouTube presence with tutorials, updates, and thought leadership. Video content compounds in value over time.
|
||||
|
||||
### 108. Source Platforms
|
||||
Submit to platforms that aggregate tools and products. G2, Capterra, GetApp, and similar directories drive discovery.
|
||||
|
||||
### 88. Review Sites
|
||||
Actively manage presence on review platforms. Reviews influence purchase decisions; actively request and respond to them.
|
||||
|
||||
### 100. Live Audio
|
||||
Host live audio discussions on Twitter Spaces, Clubhouse, or LinkedIn Audio. Real-time conversation creates intimate engagement.
|
||||
|
||||
---
|
||||
|
||||
## International & Localization
|
||||
|
||||
### 133. International Expansion
|
||||
Expand to new geographic markets. Localization, partnerships, and regional marketing unlock new growth.
|
||||
|
||||
### 134. Price Localization
|
||||
Adjust pricing for local purchasing power. Localized pricing increases conversion in price-sensitive markets.
|
||||
|
||||
---
|
||||
|
||||
## Developer & Technical
|
||||
|
||||
### 104. Investor Marketing
|
||||
Market to investors for downstream portfolio introductions. Investors recommend tools to their portfolio companies.
|
||||
|
||||
### 123. Certifications
|
||||
Create certification programs validating expertise. Certifications create invested advocates while generating training revenue.
|
||||
|
||||
### 131. Support as Marketing
|
||||
Turn support interactions into marketing opportunities. Exceptional support creates stories customers share.
|
||||
|
||||
### 135. Developer Relations
|
||||
Build relationships with developer communities. DevRel creates advocates who recommend your product to peers.
|
||||
|
||||
---
|
||||
|
||||
## Audience-Specific
|
||||
|
||||
### 26. Two-Sided Referrals
|
||||
Reward both referrer and referred in referral programs. Dual incentives motivate sharing while welcoming new users.
|
||||
|
||||
### 45. Podcast Tours
|
||||
Guest on multiple podcasts reaching your target audience. Podcast tours create compounding awareness across shows.
|
||||
|
||||
### 47. Customer Language
|
||||
Use the exact words your customers use. Mining reviews, support tickets, and interviews for language that resonates.
|
||||
## Ideas by Category (Quick Reference)
|
||||
|
||||
| Category | Ideas | Examples |
|
||||
|----------|-------|----------|
|
||||
| Content & SEO | 1-10 | Programmatic SEO, Glossary marketing, Content repurposing |
|
||||
| Competitor | 11-13 | Comparison pages, Marketing jiu-jitsu |
|
||||
| Free Tools | 14-22 | Calculators, Generators, Chrome extensions |
|
||||
| Paid Ads | 23-34 | LinkedIn, Google, Retargeting, Podcast ads |
|
||||
| Social & Community | 35-44 | LinkedIn audience, Reddit marketing, Short-form video |
|
||||
| Email | 45-53 | Founder emails, Onboarding sequences, Win-back |
|
||||
| Partnerships | 54-64 | Affiliate programs, Integration marketing, Newsletter swaps |
|
||||
| Events | 65-72 | Webinars, Conference speaking, Virtual summits |
|
||||
| PR & Media | 73-76 | Press coverage, Documentaries |
|
||||
| Launches | 77-86 | Product Hunt, Lifetime deals, Giveaways |
|
||||
| Product-Led | 87-96 | Viral loops, Powered-by marketing, Free migrations |
|
||||
| Content Formats | 97-109 | Podcasts, Courses, Annual reports, Year wraps |
|
||||
| Unconventional | 110-122 | Awards, Challenges, Guerrilla marketing |
|
||||
| Platforms | 123-130 | App marketplaces, Review sites, YouTube |
|
||||
| International | 131-132 | Expansion, Price localization |
|
||||
| Developer | 133-136 | DevRel, Certifications |
|
||||
| Audience-Specific | 137-139 | Referrals, Podcast tours, Customer language |
|
||||
|
||||
**For the complete list with descriptions**: See [references/ideas-by-category.md](references/ideas-by-category.md)
|
||||
|
||||
---
|
||||
|
||||
## Implementation Tips
|
||||
|
||||
When suggesting ideas, consider:
|
||||
### By Stage
|
||||
|
||||
**By Stage:**
|
||||
- Pre-launch: Waitlist referrals, early access, Product Hunt prep
|
||||
- Early stage: Content, SEO, community, founder-led sales
|
||||
- Growth stage: Paid acquisition, partnerships, events
|
||||
- Scale: Brand, international, acquisitions
|
||||
**Pre-launch:**
|
||||
- Waitlist referrals (#79)
|
||||
- Early access pricing (#81)
|
||||
- Product Hunt prep (#78)
|
||||
|
||||
**By Budget:**
|
||||
- Free: Content, SEO, community, social media
|
||||
- Low budget: Targeted ads, sponsorships, tools
|
||||
- Medium budget: Events, partnerships, PR
|
||||
- High budget: Acquisitions, conferences, brand campaigns
|
||||
**Early stage:**
|
||||
- Content & SEO (#1-10)
|
||||
- Community (#35)
|
||||
- Founder-led sales (#47)
|
||||
|
||||
**By Timeline:**
|
||||
- Quick wins: Ads, email, social posts
|
||||
- Medium-term: Content, SEO, community building
|
||||
- Long-term: Brand, thought leadership, platform effects
|
||||
**Growth stage:**
|
||||
- Paid acquisition (#23-34)
|
||||
- Partnerships (#54-64)
|
||||
- Events (#65-72)
|
||||
|
||||
**Scale:**
|
||||
- Brand campaigns
|
||||
- International (#131-132)
|
||||
- Media acquisitions (#73)
|
||||
|
||||
### By Budget
|
||||
|
||||
**Free:**
|
||||
- Content & SEO
|
||||
- Community building
|
||||
- Social media
|
||||
- Comment marketing
|
||||
|
||||
**Low budget:**
|
||||
- Targeted ads
|
||||
- Sponsorships
|
||||
- Free tools
|
||||
|
||||
**Medium budget:**
|
||||
- Events
|
||||
- Partnerships
|
||||
- PR
|
||||
|
||||
**High budget:**
|
||||
- Acquisitions
|
||||
- Conferences
|
||||
- Brand campaigns
|
||||
|
||||
### By Timeline
|
||||
|
||||
**Quick wins:**
|
||||
- Ads, email, social posts
|
||||
|
||||
**Medium-term:**
|
||||
- Content, SEO, community
|
||||
|
||||
**Long-term:**
|
||||
- Brand, thought leadership, platform effects
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Top Ideas by Use Case
|
||||
|
||||
If you need more context:
|
||||
1. What's your product and who's your target customer?
|
||||
2. What's your current stage and main growth goal?
|
||||
3. What's your marketing budget and team size?
|
||||
4. What have you already tried that worked or didn't?
|
||||
5. What are your competitors doing that you admire or want to counter?
|
||||
### Need Leads Fast
|
||||
- Google Ads (#31) - High-intent search
|
||||
- LinkedIn Ads (#28) - B2B targeting
|
||||
- Engineering as Marketing (#15) - Free tool lead gen
|
||||
|
||||
### Building Authority
|
||||
- Conference Speaking (#70)
|
||||
- Book Marketing (#104)
|
||||
- Podcasts (#107)
|
||||
|
||||
### Low Budget Growth
|
||||
- Easy Keyword Ranking (#1)
|
||||
- Reddit Marketing (#38)
|
||||
- Comment Marketing (#44)
|
||||
|
||||
### Product-Led Growth
|
||||
- Viral Loops (#93)
|
||||
- Powered By Marketing (#87)
|
||||
- In-App Upsells (#91)
|
||||
|
||||
### Enterprise Sales
|
||||
- Investor Marketing (#133)
|
||||
- Expert Networks (#57)
|
||||
- Conference Sponsorship (#72)
|
||||
|
||||
---
|
||||
|
||||
## Output Format
|
||||
|
||||
When recommending ideas:
|
||||
When recommending ideas, provide for each:
|
||||
|
||||
**For each recommended idea:**
|
||||
- **Idea name**: One-line description
|
||||
- **Why it fits**: Connection to their situation
|
||||
- **How to start**: First 2-3 implementation steps
|
||||
@@ -555,11 +148,19 @@ When recommending ideas:
|
||||
|
||||
---
|
||||
|
||||
## Task-Specific Questions
|
||||
|
||||
1. What's your current stage and main growth goal?
|
||||
2. What's your marketing budget and team size?
|
||||
3. What have you already tried that worked or didn't?
|
||||
4. What competitor tactics do you admire?
|
||||
|
||||
---
|
||||
|
||||
## Related Skills
|
||||
|
||||
- **programmatic-seo**: For scaling SEO content (#40)
|
||||
- **competitor-alternatives**: For comparison pages (#2)
|
||||
- **programmatic-seo**: For scaling SEO content (#4)
|
||||
- **competitor-alternatives**: For comparison pages (#11)
|
||||
- **email-sequence**: For email marketing tactics
|
||||
- **free-tool-strategy**: For engineering as marketing (#30)
|
||||
- **page-cro**: For landing page optimization
|
||||
- **ab-test-setup**: For testing marketing experiments
|
||||
- **free-tool-strategy**: For engineering as marketing (#15)
|
||||
- **referral-program**: For viral growth (#93)
|
||||
|
||||
347
skills/marketing-ideas/references/ideas-by-category.md
Normal file
347
skills/marketing-ideas/references/ideas-by-category.md
Normal file
@@ -0,0 +1,347 @@
|
||||
# The 139 Marketing Ideas
|
||||
|
||||
Complete list of proven marketing approaches organized by category.
|
||||
|
||||
## Content & SEO (1-10)
|
||||
|
||||
1. **Easy Keyword Ranking** - Target low-competition keywords where you can rank quickly. Find terms competitors overlook—niche variations, long-tail queries, emerging topics.
|
||||
|
||||
2. **SEO Audit** - Conduct comprehensive technical SEO audits of your own site and share findings publicly. Document fixes and improvements to build authority.
|
||||
|
||||
3. **Glossary Marketing** - Create comprehensive glossaries defining industry terms. Each term becomes an SEO-optimized page targeting "what is X" searches.
|
||||
|
||||
4. **Programmatic SEO** - Build template-driven pages at scale targeting keyword patterns. Location pages, comparison pages, integration pages—any pattern with search volume.
|
||||
|
||||
5. **Content Repurposing** - Transform one piece of content into multiple formats. Blog post becomes Twitter thread, YouTube video, podcast episode, infographic.
|
||||
|
||||
6. **Proprietary Data Content** - Leverage unique data from your product to create original research and reports. Data competitors can't replicate creates linkable assets.
|
||||
|
||||
7. **Internal Linking** - Strategic internal linking distributes authority and improves crawlability. Build topical clusters connecting related content.
|
||||
|
||||
8. **Content Refreshing** - Regularly update existing content with fresh data, examples, and insights. Refreshed content often outperforms new content.
|
||||
|
||||
9. **Knowledge Base SEO** - Optimize help documentation for search. Support articles targeting problem-solution queries capture users actively seeking solutions.
|
||||
|
||||
10. **Parasite SEO** - Publish content on high-authority platforms (Medium, LinkedIn, Substack) that rank faster than your own domain.
|
||||
|
||||
---
|
||||
|
||||
## Competitor & Comparison (11-13)
|
||||
|
||||
11. **Competitor Comparison Pages** - Create detailed comparison pages positioning your product against competitors. "[Your Product] vs [Competitor]" pages capture high-intent searchers.
|
||||
|
||||
12. **Marketing Jiu-Jitsu** - Turn competitor weaknesses into your strengths. When competitors raise prices, launch affordability campaigns.
|
||||
|
||||
13. **Competitive Ad Research** - Study competitor advertising through tools like SpyFu or Facebook Ad Library. Learn what messaging resonates.
|
||||
|
||||
---
|
||||
|
||||
## Free Tools & Engineering (14-22)
|
||||
|
||||
14. **Side Projects as Marketing** - Build small, useful tools related to your main product. Side projects attract users who may later convert.
|
||||
|
||||
15. **Engineering as Marketing** - Build free tools that solve real problems. Calculators, analyzers, generators—useful utilities that naturally lead to your paid product.
|
||||
|
||||
16. **Importers as Marketing** - Build import tools for competitor data. "Import from [Competitor]" reduces switching friction.
|
||||
|
||||
17. **Quiz Marketing** - Create interactive quizzes that engage users while qualifying leads. Personality quizzes, assessments, and diagnostic tools generate shares.
|
||||
|
||||
18. **Calculator Marketing** - Build calculators solving real problems—ROI calculators, pricing estimators, savings tools. Calculators attract links and rank well.
|
||||
|
||||
19. **Chrome Extensions** - Create browser extensions providing standalone value. Chrome Web Store becomes another distribution channel.
|
||||
|
||||
20. **Microsites** - Build focused microsites for specific campaigns, products, or audiences. Dedicated domains can rank faster.
|
||||
|
||||
21. **Scanners** - Build free scanning tools that audit or analyze something. Website scanners, security checkers, performance analyzers.
|
||||
|
||||
22. **Public APIs** - Open APIs enable developers to build on your platform, creating an ecosystem.
|
||||
|
||||
---
|
||||
|
||||
## Paid Advertising (23-34)
|
||||
|
||||
23. **Podcast Advertising** - Sponsor relevant podcasts to reach engaged audiences. Host-read ads perform especially well.
|
||||
|
||||
24. **Pre-targeting Ads** - Show awareness ads before launching direct response campaigns. Warm audiences convert better.
|
||||
|
||||
25. **Facebook Ads** - Meta's detailed targeting reaches specific audiences. Test creative variations and leverage retargeting.
|
||||
|
||||
26. **Instagram Ads** - Visual-first advertising for products with strong imagery. Stories and Reels ads capture attention.
|
||||
|
||||
27. **Twitter Ads** - Reach engaged professionals discussing industry topics. Promoted tweets and follower campaigns.
|
||||
|
||||
28. **LinkedIn Ads** - Target by job title, company size, and industry. Premium CPMs justified by B2B purchase intent.
|
||||
|
||||
29. **Reddit Ads** - Reach passionate communities with authentic messaging. Transparency wins on Reddit.
|
||||
|
||||
30. **Quora Ads** - Target users actively asking questions your product answers. Intent-rich environment.
|
||||
|
||||
31. **Google Ads** - Capture high-intent search queries. Brand terms, competitor terms, and category terms.
|
||||
|
||||
32. **YouTube Ads** - Video ads with detailed targeting. Pre-roll and discovery ads reach users consuming related content.
|
||||
|
||||
33. **Cross-Platform Retargeting** - Follow users across platforms with consistent messaging.
|
||||
|
||||
34. **Click-to-Messenger Ads** - Ads that open direct conversations rather than landing pages.
|
||||
|
||||
---
|
||||
|
||||
## Social Media & Community (35-44)
|
||||
|
||||
35. **Community Marketing** - Build and nurture communities around your product. Slack groups, Discord servers, Facebook groups.
|
||||
|
||||
36. **Quora Marketing** - Answer relevant questions with genuine expertise. Include product mentions where naturally appropriate.
|
||||
|
||||
37. **Reddit Keyword Research** - Mine Reddit for real language your audience uses. Discover pain points and desires.
|
||||
|
||||
38. **Reddit Marketing** - Participate authentically in relevant subreddits. Provide value first.
|
||||
|
||||
39. **LinkedIn Audience** - Build personal brands on LinkedIn for B2B reach. Thought leadership builds authority.
|
||||
|
||||
40. **Instagram Audience** - Visual storytelling for products with strong aesthetics. Behind-the-scenes and user stories.
|
||||
|
||||
41. **X Audience** - Build presence on X/Twitter through consistent value. Threads and insights grow followings.
|
||||
|
||||
42. **Short Form Video** - TikTok, Reels, and Shorts reach new audiences with snackable content.
|
||||
|
||||
43. **Engagement Pods** - Coordinate with peers to boost each other's content engagement.
|
||||
|
||||
44. **Comment Marketing** - Thoughtful comments on relevant content build visibility.
|
||||
|
||||
---
|
||||
|
||||
## Email Marketing (45-53)
|
||||
|
||||
45. **Mistake Email Marketing** - Send "oops" emails when something genuinely goes wrong. Authenticity generates engagement.
|
||||
|
||||
46. **Reactivation Emails** - Win back churned or inactive users with targeted campaigns.
|
||||
|
||||
47. **Founder Welcome Email** - Personal welcome emails from founders create connection.
|
||||
|
||||
48. **Dynamic Email Capture** - Smart email capture that adapts to user behavior. Exit intent, scroll depth triggers.
|
||||
|
||||
49. **Monthly Newsletters** - Consistent newsletters keep your brand top-of-mind.
|
||||
|
||||
50. **Inbox Placement** - Technical email optimization for deliverability. Authentication and list hygiene.
|
||||
|
||||
51. **Onboarding Emails** - Guide new users to activation with targeted sequences.
|
||||
|
||||
52. **Win-back Emails** - Re-engage churned users with compelling reasons to return.
|
||||
|
||||
53. **Trial Reactivation** - Expired trials aren't lost causes. Targeted campaigns can recover them.
|
||||
|
||||
---
|
||||
|
||||
## Partnerships & Programs (54-64)
|
||||
|
||||
54. **Affiliate Discovery Through Backlinks** - Find potential affiliates by analyzing who links to competitors.
|
||||
|
||||
55. **Influencer Whitelisting** - Run ads through influencer accounts for authentic reach.
|
||||
|
||||
56. **Reseller Programs** - Enable agencies to resell your product. White-label options create distribution partners.
|
||||
|
||||
57. **Expert Networks** - Build networks of certified experts who implement your product.
|
||||
|
||||
58. **Newsletter Swaps** - Exchange promotional mentions with complementary newsletters.
|
||||
|
||||
59. **Article Quotes** - Contribute expert quotes to journalists. HARO connects experts with writers.
|
||||
|
||||
60. **Pixel Sharing** - Partner with complementary companies to share remarketing audiences.
|
||||
|
||||
61. **Shared Slack Channels** - Create shared channels with partners and customers.
|
||||
|
||||
62. **Affiliate Program** - Structured commission programs for referrers.
|
||||
|
||||
63. **Integration Marketing** - Joint marketing with integration partners.
|
||||
|
||||
64. **Community Sponsorship** - Sponsor relevant communities, newsletters, or publications.
|
||||
|
||||
---
|
||||
|
||||
## Events & Speaking (65-72)
|
||||
|
||||
65. **Live Webinars** - Educational webinars demonstrate expertise while generating leads.
|
||||
|
||||
66. **Virtual Summits** - Multi-speaker online events attract audiences through varied perspectives.
|
||||
|
||||
67. **Roadshows** - Take your product on the road to meet customers directly.
|
||||
|
||||
68. **Local Meetups** - Host or attend local meetups in key markets.
|
||||
|
||||
69. **Meetup Sponsorship** - Sponsor relevant meetups to reach engaged local audiences.
|
||||
|
||||
70. **Conference Speaking** - Speak at industry conferences to reach engaged audiences.
|
||||
|
||||
71. **Conferences** - Host your own conference to become the center of your industry.
|
||||
|
||||
72. **Conference Sponsorship** - Sponsor relevant conferences for brand visibility.
|
||||
|
||||
---
|
||||
|
||||
## PR & Media (73-76)
|
||||
|
||||
73. **Media Acquisitions as Marketing** - Acquire newsletters, podcasts, or publications in your space.
|
||||
|
||||
74. **Press Coverage** - Pitch newsworthy stories to relevant publications.
|
||||
|
||||
75. **Fundraising PR** - Leverage funding announcements for press coverage.
|
||||
|
||||
76. **Documentaries** - Create documentary content exploring your industry or customers.
|
||||
|
||||
---
|
||||
|
||||
## Launches & Promotions (77-86)
|
||||
|
||||
77. **Black Friday Promotions** - Annual deals create urgency and acquisition spikes.
|
||||
|
||||
78. **Product Hunt Launch** - Structured Product Hunt launches reach early adopters.
|
||||
|
||||
79. **Early-Access Referrals** - Reward referrals with earlier access during launches.
|
||||
|
||||
80. **New Year Promotions** - New Year brings fresh budgets and goal-setting energy.
|
||||
|
||||
81. **Early Access Pricing** - Launch with discounted early access tiers.
|
||||
|
||||
82. **Product Hunt Alternatives** - Launch on BetaList, Launching Next, AlternativeTo.
|
||||
|
||||
83. **Twitter Giveaways** - Engagement-boosting giveaways that require follows or retweets.
|
||||
|
||||
84. **Giveaways** - Strategic giveaways attract attention and capture leads.
|
||||
|
||||
85. **Vacation Giveaways** - Grand prize giveaways generate massive engagement.
|
||||
|
||||
86. **Lifetime Deals** - One-time payment deals generate cash and users.
|
||||
|
||||
---
|
||||
|
||||
## Product-Led Growth (87-96)
|
||||
|
||||
87. **Powered By Marketing** - "Powered by [Your Product]" badges create free impressions.
|
||||
|
||||
88. **Free Migrations** - Offer free migration services from competitors.
|
||||
|
||||
89. **Contract Buyouts** - Pay to exit competitor contracts.
|
||||
|
||||
90. **One-Click Registration** - Minimize signup friction with OAuth options.
|
||||
|
||||
91. **In-App Upsells** - Strategic upgrade prompts within the product experience.
|
||||
|
||||
92. **Newsletter Referrals** - Built-in referral programs for newsletters.
|
||||
|
||||
93. **Viral Loops** - Product mechanics that naturally encourage sharing.
|
||||
|
||||
94. **Offboarding Flows** - Optimize cancellation flows to retain or learn.
|
||||
|
||||
95. **Concierge Setup** - White-glove onboarding for high-value accounts.
|
||||
|
||||
96. **Onboarding Optimization** - Continuous improvement of new user experience.
|
||||
|
||||
---
|
||||
|
||||
## Content Formats (97-109)
|
||||
|
||||
97. **Playlists as Marketing** - Create Spotify playlists for your audience.
|
||||
|
||||
98. **Template Marketing** - Offer free templates users can immediately use.
|
||||
|
||||
99. **Graphic Novel Marketing** - Transform complex stories into visual narratives.
|
||||
|
||||
100. **Promo Videos** - High-quality promotional videos showcase your product.
|
||||
|
||||
101. **Industry Interviews** - Interview customers, experts, and thought leaders.
|
||||
|
||||
102. **Social Screenshots** - Design shareable screenshot templates for social proof.
|
||||
|
||||
103. **Online Courses** - Educational courses establish authority while generating leads.
|
||||
|
||||
104. **Book Marketing** - Author a book establishing expertise in your domain.
|
||||
|
||||
105. **Annual Reports** - Publish annual reports showcasing industry data and trends.
|
||||
|
||||
106. **End of Year Wraps** - Personalized year-end summaries users want to share.
|
||||
|
||||
107. **Podcasts** - Launch a podcast reaching audiences during commutes.
|
||||
|
||||
108. **Changelogs** - Public changelogs showcase product momentum.
|
||||
|
||||
109. **Public Demos** - Live product demonstrations showing real usage.
|
||||
|
||||
---
|
||||
|
||||
## Unconventional & Creative (110-122)
|
||||
|
||||
110. **Awards as Marketing** - Create industry awards positioning your brand as tastemaker.
|
||||
|
||||
111. **Challenges as Marketing** - Launch viral challenges that spread organically.
|
||||
|
||||
112. **Reality TV Marketing** - Create reality-show style content following real customers.
|
||||
|
||||
113. **Controversy as Marketing** - Strategic positioning against industry norms.
|
||||
|
||||
114. **Moneyball Marketing** - Data-driven marketing finding undervalued channels.
|
||||
|
||||
115. **Curation as Marketing** - Curate valuable resources for your audience.
|
||||
|
||||
116. **Grants as Marketing** - Offer grants to customers or community members.
|
||||
|
||||
117. **Product Competitions** - Sponsor competitions using your product.
|
||||
|
||||
118. **Cameo Marketing** - Use Cameo celebrities for personalized messages.
|
||||
|
||||
119. **OOH Advertising** - Out-of-home advertising—billboards, transit ads.
|
||||
|
||||
120. **Marketing Stunts** - Bold, attention-grabbing marketing moments.
|
||||
|
||||
121. **Guerrilla Marketing** - Unconventional, low-cost marketing in unexpected places.
|
||||
|
||||
122. **Humor Marketing** - Use humor to stand out and create memorability.
|
||||
|
||||
---
|
||||
|
||||
## Platforms & Marketplaces (123-130)
|
||||
|
||||
123. **Open Source as Marketing** - Open-source components or tools build developer goodwill.
|
||||
|
||||
124. **App Store Optimization** - Optimize app store listings for discoverability.
|
||||
|
||||
125. **App Marketplaces** - List in Salesforce AppExchange, Shopify App Store, etc.
|
||||
|
||||
126. **YouTube Reviews** - Get YouTubers to review your product.
|
||||
|
||||
127. **YouTube Channel** - Build a YouTube presence with tutorials and thought leadership.
|
||||
|
||||
128. **Source Platforms** - Submit to G2, Capterra, GetApp, and similar directories.
|
||||
|
||||
129. **Review Sites** - Actively manage presence on review platforms.
|
||||
|
||||
130. **Live Audio** - Host Twitter Spaces, Clubhouse, or LinkedIn Audio discussions.
|
||||
|
||||
---
|
||||
|
||||
## International & Localization (131-132)
|
||||
|
||||
131. **International Expansion** - Expand to new geographic markets with localization.
|
||||
|
||||
132. **Price Localization** - Adjust pricing for local purchasing power.
|
||||
|
||||
---
|
||||
|
||||
## Developer & Technical (133-136)
|
||||
|
||||
133. **Investor Marketing** - Market to investors for portfolio introductions.
|
||||
|
||||
134. **Certifications** - Create certification programs validating expertise.
|
||||
|
||||
135. **Support as Marketing** - Exceptional support creates stories customers share.
|
||||
|
||||
136. **Developer Relations** - Build relationships with developer communities.
|
||||
|
||||
---
|
||||
|
||||
## Audience-Specific (137-139)
|
||||
|
||||
137. **Two-Sided Referrals** - Reward both referrer and referred.
|
||||
|
||||
138. **Podcast Tours** - Guest on multiple podcasts reaching your target audience.
|
||||
|
||||
139. **Customer Language** - Use the exact words your customers use in marketing.
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: marketing-psychology
|
||||
version: 1.0.0
|
||||
description: "When the user wants to apply psychological principles, mental models, or behavioral science to marketing. Also use when the user mentions 'psychology,' 'mental models,' 'cognitive bias,' 'persuasion,' 'behavioral science,' 'why people buy,' 'decision-making,' or 'consumer behavior.' This skill provides 70+ mental models organized for marketing application."
|
||||
---
|
||||
|
||||
@@ -9,6 +10,9 @@ You are an expert in applying psychological principles and mental models to mark
|
||||
|
||||
## How to Use This Skill
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before applying mental models. Use that context to tailor recommendations to the specific product and audience.
|
||||
|
||||
Mental models are thinking tools that help you make better decisions, understand customer behavior, and create more effective marketing. When helping users:
|
||||
|
||||
1. Identify which mental models apply to their situation
|
||||
@@ -431,9 +435,8 @@ When facing a marketing challenge, consider:
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What specific behavior are you trying to influence?
|
||||
2. What does your customer believe before encountering your marketing?
|
||||
3. Where in the journey (awareness → consideration → decision) is this?
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: onboarding-cro
|
||||
version: 1.0.0
|
||||
description: When the user wants to optimize post-signup onboarding, user activation, first-run experience, or time-to-value. Also use when the user mentions "onboarding flow," "activation rate," "user activation," "first-run experience," "empty states," "onboarding checklist," "aha moment," or "new user experience." For signup/registration optimization, see signup-flow-cro. For ongoing email sequences, see email-sequence.
|
||||
---
|
||||
|
||||
@@ -9,62 +10,45 @@ You are an expert in user onboarding and activation. Your goal is to help users
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before providing recommendations, understand:
|
||||
|
||||
1. **Product Context**
|
||||
- What type of product? (SaaS tool, marketplace, app, etc.)
|
||||
- B2B or B2C?
|
||||
- What's the core value proposition?
|
||||
|
||||
2. **Activation Definition**
|
||||
- What's the "aha moment" for your product?
|
||||
- What action indicates a user "gets it"?
|
||||
- What's your current activation rate?
|
||||
|
||||
3. **Current State**
|
||||
- What happens immediately after signup?
|
||||
- Is there an existing onboarding flow?
|
||||
- Where do users currently drop off?
|
||||
1. **Product Context** - What type of product? B2B or B2C? Core value proposition?
|
||||
2. **Activation Definition** - What's the "aha moment"? What action indicates a user "gets it"?
|
||||
3. **Current State** - What happens after signup? Where do users drop off?
|
||||
|
||||
---
|
||||
|
||||
## Core Principles
|
||||
|
||||
### 1. Time-to-Value Is Everything
|
||||
- How quickly can someone experience the core value?
|
||||
- Remove every step between signup and that moment
|
||||
- Consider: Can they experience value BEFORE signup?
|
||||
Remove every step between signup and experiencing core value.
|
||||
|
||||
### 2. One Goal Per Session
|
||||
- Don't try to teach everything at once
|
||||
- Focus first session on one successful outcome
|
||||
- Save advanced features for later
|
||||
Focus first session on one successful outcome. Save advanced features for later.
|
||||
|
||||
### 3. Do, Don't Show
|
||||
- Interactive > Tutorial
|
||||
- Doing the thing > Learning about the thing
|
||||
- Show UI in context of real tasks
|
||||
Interactive > Tutorial. Doing the thing > Learning about the thing.
|
||||
|
||||
### 4. Progress Creates Motivation
|
||||
- Show advancement
|
||||
- Celebrate completions
|
||||
- Make the path visible
|
||||
Show advancement. Celebrate completions. Make the path visible.
|
||||
|
||||
---
|
||||
|
||||
## Defining Activation
|
||||
|
||||
### Find Your Aha Moment
|
||||
|
||||
The action that correlates most strongly with retention:
|
||||
- What do retained users do that churned users don't?
|
||||
- What's the earliest indicator of future engagement?
|
||||
- What action demonstrates they "got it"?
|
||||
|
||||
**Examples by product type:**
|
||||
- Project management: Create first project + add team member
|
||||
- Analytics: Install tracking + see first report
|
||||
- Design tool: Create first design + export/share
|
||||
- Collaboration: Invite first teammate
|
||||
- Marketplace: Complete first transaction
|
||||
|
||||
### Activation Metrics
|
||||
@@ -79,18 +63,11 @@ The action that correlates most strongly with retention:
|
||||
|
||||
### Immediate Post-Signup (First 30 Seconds)
|
||||
|
||||
**Options:**
|
||||
1. **Product-first**: Drop directly into product
|
||||
- Best for: Simple products, B2C, mobile apps
|
||||
- Risk: Blank slate overwhelm
|
||||
|
||||
2. **Guided setup**: Short wizard to configure
|
||||
- Best for: Products needing personalization
|
||||
- Risk: Adds friction before value
|
||||
|
||||
3. **Value-first**: Show outcome immediately
|
||||
- Best for: Products with demo data or samples
|
||||
- Risk: May not feel "real"
|
||||
| Approach | Best For | Risk |
|
||||
|----------|----------|------|
|
||||
| Product-first | Simple products, B2C, mobile | Blank slate overwhelm |
|
||||
| Guided setup | Products needing personalization | Adds friction before value |
|
||||
| Value-first | Products with demo data | May not feel "real" |
|
||||
|
||||
**Whatever you choose:**
|
||||
- Clear single next action
|
||||
@@ -112,19 +89,6 @@ The action that correlates most strongly with retention:
|
||||
- Celebration on completion
|
||||
- Dismiss option (don't trap users)
|
||||
|
||||
**Checklist item structure:**
|
||||
- Clear action verb
|
||||
- Benefit hint
|
||||
- Estimated time
|
||||
- Quick-start capability
|
||||
|
||||
Example:
|
||||
```
|
||||
☐ Connect your first data source (2 min)
|
||||
Get real-time insights from your existing tools
|
||||
[Connect Now]
|
||||
```
|
||||
|
||||
### Empty States
|
||||
|
||||
Empty states are onboarding opportunities, not dead ends.
|
||||
@@ -135,44 +99,14 @@ Empty states are onboarding opportunities, not dead ends.
|
||||
- Clear primary action to add first item
|
||||
- Optional: Pre-populate with example data
|
||||
|
||||
**Structure:**
|
||||
1. Illustration or preview
|
||||
2. Brief explanation of value
|
||||
3. Primary CTA to add first item
|
||||
4. Optional: Secondary action (import, template)
|
||||
|
||||
### Tooltips and Guided Tours
|
||||
|
||||
**When to use:**
|
||||
- Complex UI that benefits from orientation
|
||||
- Features that aren't self-evident
|
||||
- Power features users might miss
|
||||
|
||||
**When to avoid:**
|
||||
- Simple, intuitive interfaces
|
||||
- Mobile apps (limited screen space)
|
||||
- When they interrupt important flows
|
||||
**When to use:** Complex UI, features that aren't self-evident, power features users might miss
|
||||
|
||||
**Best practices:**
|
||||
- Max 3-5 steps per tour
|
||||
- Point to actual UI elements
|
||||
- Dismissable at any time
|
||||
- Don't repeat for returning users
|
||||
- Consider user-initiated tours
|
||||
|
||||
### Progress Indicators
|
||||
|
||||
**Types:**
|
||||
- Checklist (discrete tasks)
|
||||
- Progress bar (% complete)
|
||||
- Level/stage indicator
|
||||
- Profile completeness
|
||||
|
||||
**Best practices:**
|
||||
- Show early progress (start at 20%, not 0%)
|
||||
- Quick early wins (first items easy to complete)
|
||||
- Clear benefit of completing
|
||||
- Don't block features behind completion
|
||||
|
||||
---
|
||||
|
||||
@@ -185,83 +119,40 @@ Empty states are onboarding opportunities, not dead ends.
|
||||
- Incomplete onboarding (24h, 72h)
|
||||
- Activation achieved (celebration + next step)
|
||||
- Feature discovery (days 3, 7, 14)
|
||||
- Stalled user re-engagement
|
||||
|
||||
**Email should:**
|
||||
- Reinforce in-app actions
|
||||
- Not duplicate in-app messaging
|
||||
- Reinforce in-app actions, not duplicate them
|
||||
- Drive back to product with specific CTA
|
||||
- Be personalized based on actions taken
|
||||
|
||||
### Push Notifications (Mobile)
|
||||
|
||||
- Permission timing is critical (not immediately)
|
||||
- Clear value proposition for enabling
|
||||
- Reserve for genuine value moments
|
||||
- Re-engagement for stalled users
|
||||
|
||||
---
|
||||
|
||||
## Engagement Loops
|
||||
|
||||
### Building Habits
|
||||
- What regular action should users take?
|
||||
- What trigger can prompt return?
|
||||
- What reward reinforces the behavior?
|
||||
|
||||
**Loop structure:**
|
||||
Trigger → Action → Variable Reward → Investment
|
||||
|
||||
**Examples:**
|
||||
- Trigger: Email digest of activity
|
||||
- Action: Log in to respond
|
||||
- Reward: Social engagement, progress, achievement
|
||||
- Investment: Add more data, connections, content
|
||||
|
||||
### Milestone Celebrations
|
||||
- Acknowledge meaningful achievements
|
||||
- Show progress relative to journey
|
||||
- Suggest next milestone
|
||||
- Shareable moments (social proof generation)
|
||||
|
||||
---
|
||||
|
||||
## Handling Stalled Users
|
||||
|
||||
### Detection
|
||||
- Define "stalled" criteria (X days inactive, incomplete setup)
|
||||
- Monitor at cohort level
|
||||
- Track recovery rate
|
||||
Define "stalled" criteria (X days inactive, incomplete setup)
|
||||
|
||||
### Re-engagement Tactics
|
||||
1. **Email sequence for incomplete onboarding**
|
||||
- Reminder of value proposition
|
||||
- Address common blockers
|
||||
- Offer help/demo/call
|
||||
- Deadline/urgency if appropriate
|
||||
|
||||
2. **In-app recovery**
|
||||
- Welcome back message
|
||||
- Pick up where they left off
|
||||
- Simplified path to activation
|
||||
|
||||
3. **Human touch**
|
||||
- For high-value accounts: personal outreach
|
||||
- Offer live walkthrough
|
||||
- Ask what's blocking them
|
||||
1. **Email sequence** - Reminder of value, address blockers, offer help
|
||||
2. **In-app recovery** - Welcome back, pick up where left off
|
||||
3. **Human touch** - For high-value accounts, personal outreach
|
||||
|
||||
---
|
||||
|
||||
## Measurement
|
||||
|
||||
### Key Metrics
|
||||
- **Activation rate**: % reaching activation event
|
||||
- **Time to activation**: How long to first value
|
||||
- **Onboarding completion**: % completing setup
|
||||
- **Day 1/7/30 retention**: Return rate by timeframe
|
||||
- **Feature adoption**: Which features get used
|
||||
|
||||
| Metric | Description |
|
||||
|--------|-------------|
|
||||
| Activation rate | % reaching activation event |
|
||||
| Time to activation | How long to first value |
|
||||
| Onboarding completion | % completing setup |
|
||||
| Day 1/7/30 retention | Return rate by timeframe |
|
||||
|
||||
### Funnel Analysis
|
||||
|
||||
Track drop-off at each step:
|
||||
```
|
||||
Signup → Step 1 → Step 2 → Activation → Retention
|
||||
@@ -275,148 +166,43 @@ Identify biggest drops and focus there.
|
||||
## Output Format
|
||||
|
||||
### Onboarding Audit
|
||||
For each issue:
|
||||
- **Finding**: What's happening
|
||||
- **Impact**: Why it matters
|
||||
- **Recommendation**: Specific fix
|
||||
- **Priority**: High/Medium/Low
|
||||
For each issue: Finding → Impact → Recommendation → Priority
|
||||
|
||||
### Onboarding Flow Design
|
||||
- **Activation goal**: What they should achieve
|
||||
- **Step-by-step flow**: Each screen/state
|
||||
- **Checklist items**: If applicable
|
||||
- **Empty states**: Copy and CTA
|
||||
- **Email sequence**: Triggers and content
|
||||
- **Metrics plan**: What to measure
|
||||
|
||||
### Copy Deliverables
|
||||
- Welcome screen copy
|
||||
- Checklist items with microcopy
|
||||
- Activation goal
|
||||
- Step-by-step flow
|
||||
- Checklist items (if applicable)
|
||||
- Empty state copy
|
||||
- Tooltip content
|
||||
- Email sequence copy
|
||||
- Milestone celebration copy
|
||||
- Email sequence triggers
|
||||
- Metrics plan
|
||||
|
||||
---
|
||||
|
||||
## Common Patterns by Product Type
|
||||
|
||||
### B2B SaaS Tool
|
||||
1. Short setup wizard (use case selection)
|
||||
2. First value-generating action
|
||||
3. Team invitation prompt
|
||||
4. Checklist for deeper setup
|
||||
|
||||
### Marketplace/Platform
|
||||
1. Complete profile
|
||||
2. First search/browse
|
||||
3. First transaction
|
||||
4. Repeat engagement loop
|
||||
|
||||
### Mobile App
|
||||
1. Permission requests (strategic timing)
|
||||
2. Quick win in first session
|
||||
3. Push notification setup
|
||||
4. Habit loop establishment
|
||||
|
||||
### Content/Social Platform
|
||||
1. Follow/customize feed
|
||||
2. First content consumption
|
||||
3. First content creation
|
||||
4. Social connection/engagement
|
||||
| Product Type | Key Steps |
|
||||
|--------------|-----------|
|
||||
| B2B SaaS | Setup wizard → First value action → Team invite → Deep setup |
|
||||
| Marketplace | Complete profile → Browse → First transaction → Repeat loop |
|
||||
| Mobile App | Permissions → Quick win → Push setup → Habit loop |
|
||||
| Content Platform | Follow/customize → Consume → Create → Engage |
|
||||
|
||||
---
|
||||
|
||||
## Experiment Ideas
|
||||
|
||||
### Flow Simplification Experiments
|
||||
When recommending experiments, consider tests for:
|
||||
- Flow simplification (step count, ordering)
|
||||
- Progress and motivation mechanics
|
||||
- Personalization by role or goal
|
||||
- Support and help availability
|
||||
|
||||
**Reduce Friction**
|
||||
- Add or remove email verification during onboarding
|
||||
- Test empty states vs. pre-populated dummy data
|
||||
- Provide pre-filled templates to accelerate setup
|
||||
- Add OAuth options for faster account linking
|
||||
- Reduce number of required onboarding steps
|
||||
|
||||
**Step Sequencing**
|
||||
- Test different ordering of onboarding steps
|
||||
- Lead with highest-value features first
|
||||
- Move friction-heavy steps later in flow
|
||||
- Test required vs. optional step balance
|
||||
|
||||
**Progress & Motivation**
|
||||
- Add progress bars or completion percentages
|
||||
- Test onboarding checklists (3-5 items vs. 5-7 items)
|
||||
- Gamify milestones with badges or rewards
|
||||
- Show "X% complete" messaging
|
||||
**For comprehensive experiment ideas**: See [references/experiments.md](references/experiments.md)
|
||||
|
||||
---
|
||||
|
||||
### Guided Experience Experiments
|
||||
## Task-Specific Questions
|
||||
|
||||
**Product Tours**
|
||||
- Add interactive product tours (Navattic, Storylane)
|
||||
- Test tooltip-based guidance vs. modal walkthroughs
|
||||
- Video tutorials for complex workflows
|
||||
- Self-paced vs. guided tour options
|
||||
|
||||
**CTA Optimization**
|
||||
- Test CTA text variations during onboarding
|
||||
- Test CTA placement within onboarding screens
|
||||
- Add in-app tooltips for advanced features
|
||||
- Sticky CTAs that persist during onboarding
|
||||
|
||||
---
|
||||
|
||||
### Personalization Experiments
|
||||
|
||||
**User Segmentation**
|
||||
- Segment users by role to show relevant features
|
||||
- Segment by goal to customize onboarding path
|
||||
- Create role-specific dashboards
|
||||
- Ask use-case question to personalize flow
|
||||
|
||||
**Dynamic Content**
|
||||
- Personalized welcome messages
|
||||
- Industry-specific examples and templates
|
||||
- Dynamic feature recommendations based on answers
|
||||
|
||||
---
|
||||
|
||||
### Quick Wins & Engagement Experiments
|
||||
|
||||
**Time-to-Value**
|
||||
- Highlight quick wins early ("Complete your first X")
|
||||
- Show success messages after key actions
|
||||
- Display progress celebrations at milestones
|
||||
- Suggest next steps after each completion
|
||||
|
||||
**Support & Help**
|
||||
- Offer free onboarding calls for complex products
|
||||
- Add contextual help throughout onboarding
|
||||
- Test chat support availability during onboarding
|
||||
- Proactive outreach for stuck users
|
||||
|
||||
---
|
||||
|
||||
### Email & Multi-Channel Experiments
|
||||
|
||||
**Onboarding Emails**
|
||||
- Personalized welcome email from founder
|
||||
- Behavior-based emails (triggered by actions/inactions)
|
||||
- Test email timing and frequency
|
||||
- Include quick tips and video content
|
||||
|
||||
**Feedback Loops**
|
||||
- Add NPS survey during onboarding
|
||||
- Ask "What's blocking you?" for incomplete users
|
||||
- Follow-up based on NPS score
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
|
||||
If you need more context:
|
||||
1. What action most correlates with retention?
|
||||
2. What happens immediately after signup?
|
||||
3. Where do users currently drop off?
|
||||
|
||||
248
skills/onboarding-cro/references/experiments.md
Normal file
248
skills/onboarding-cro/references/experiments.md
Normal file
@@ -0,0 +1,248 @@
|
||||
# Onboarding Experiment Ideas
|
||||
|
||||
Comprehensive list of A/B tests and experiments for user onboarding and activation.
|
||||
|
||||
## Flow Simplification Experiments
|
||||
|
||||
### Reduce Friction
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Email verification timing | During vs. after onboarding |
|
||||
| Empty states vs. dummy data | Pre-populated examples |
|
||||
| Pre-filled templates | Accelerate setup with templates |
|
||||
| OAuth options | Faster account linking |
|
||||
| Required step count | Fewer required steps |
|
||||
| Optional vs. required fields | Minimize requirements |
|
||||
| Skip options | Allow bypassing non-critical steps |
|
||||
|
||||
### Step Sequencing
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Step ordering | Test different sequences |
|
||||
| Value-first ordering | Highest-value features first |
|
||||
| Friction placement | Move hard steps later |
|
||||
| Required vs. optional balance | Ratio of required steps |
|
||||
| Single vs. branching paths | One path vs. personalized |
|
||||
| Quick start vs. full setup | Minimal path to value |
|
||||
|
||||
### Progress & Motivation
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Progress bars | Show completion percentage |
|
||||
| Checklist length | 3-5 items vs. 5-7 items |
|
||||
| Gamification | Badges, rewards, achievements |
|
||||
| Completion messaging | "X% complete" visibility |
|
||||
| Starting point | Begin at 20% vs. 0% |
|
||||
| Celebration moments | Acknowledge completions |
|
||||
|
||||
---
|
||||
|
||||
## Guided Experience Experiments
|
||||
|
||||
### Product Tours
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Interactive tours | Tools like Navattic, Storylane |
|
||||
| Tooltip vs. modal guidance | Subtle vs. attention-grabbing |
|
||||
| Video tutorials | For complex workflows |
|
||||
| Self-paced vs. guided | User control vs. structured |
|
||||
| Tour length | Shorter vs. comprehensive |
|
||||
| Tour triggering | Automatic vs. user-initiated |
|
||||
|
||||
### CTA Optimization
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| CTA text variations | Action-oriented copy testing |
|
||||
| CTA placement | Position within screens |
|
||||
| In-app tooltips | Feature discovery prompts |
|
||||
| Sticky CTAs | Persist during onboarding |
|
||||
| CTA contrast | Visual prominence |
|
||||
| Secondary CTAs | "Learn more" vs. primary only |
|
||||
|
||||
### UI Guidance
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Hotspot highlights | Draw attention to key features |
|
||||
| Coachmarks | Contextual tips |
|
||||
| Feature announcements | New feature discovery |
|
||||
| Contextual help | Help where users need it |
|
||||
| Search vs. guided | Self-service vs. directed |
|
||||
|
||||
---
|
||||
|
||||
## Personalization Experiments
|
||||
|
||||
### User Segmentation
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Role-based onboarding | Different paths by role |
|
||||
| Goal-based paths | Customize by stated goal |
|
||||
| Role-specific dashboards | Relevant default views |
|
||||
| Use-case question | Personalize based on answer |
|
||||
| Industry-specific paths | Vertical customization |
|
||||
| Experience-based | Beginner vs. expert paths |
|
||||
|
||||
### Dynamic Content
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Personalized welcome | Name, company, role |
|
||||
| Industry examples | Relevant use cases |
|
||||
| Dynamic recommendations | Based on user answers |
|
||||
| Template suggestions | Pre-filled for segment |
|
||||
| Feature highlighting | Relevant to stated goals |
|
||||
| Benchmark data | Industry-specific metrics |
|
||||
|
||||
---
|
||||
|
||||
## Quick Wins & Engagement Experiments
|
||||
|
||||
### Time-to-Value
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| First quick win | "Complete your first X" |
|
||||
| Success messages | After key actions |
|
||||
| Progress celebrations | Milestone moments |
|
||||
| Next step suggestions | After each completion |
|
||||
| Value demonstration | Show what they achieved |
|
||||
| Outcome preview | What success looks like |
|
||||
|
||||
### Motivation Mechanics
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Achievement badges | Gamification elements |
|
||||
| Streaks | Consecutive day engagement |
|
||||
| Leaderboards | Social comparison (if appropriate) |
|
||||
| Rewards | Incentives for completion |
|
||||
| Unlock mechanics | Features revealed progressively |
|
||||
|
||||
### Support & Help
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Free onboarding calls | For complex products |
|
||||
| Contextual help | Throughout onboarding |
|
||||
| Chat support | Availability during onboarding |
|
||||
| Proactive outreach | For stuck users |
|
||||
| Self-service resources | Help docs, videos |
|
||||
| Community access | Peer support early |
|
||||
|
||||
---
|
||||
|
||||
## Email & Multi-Channel Experiments
|
||||
|
||||
### Onboarding Emails
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Founder welcome email | Personal vs. generic |
|
||||
| Behavior-based triggers | Action/inaction based |
|
||||
| Email timing | Immediate vs. delayed |
|
||||
| Email frequency | More vs. fewer touches |
|
||||
| Quick tips format | Short actionable content |
|
||||
| Video in email | More engaging format |
|
||||
|
||||
### Email Content
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Subject lines | Open rate optimization |
|
||||
| Personalization depth | Name vs. behavior-based |
|
||||
| CTA prominence | Single clear action |
|
||||
| Social proof inclusion | Testimonials in email |
|
||||
| Urgency messaging | Trial reminders |
|
||||
| Plain text vs. designed | Format testing |
|
||||
|
||||
### Feedback Loops
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| NPS during onboarding | When to ask |
|
||||
| Blocking question | "What's stopping you?" |
|
||||
| NPS follow-up | Actions based on score |
|
||||
| In-app feedback | Thumbs up/down on features |
|
||||
| Survey timing | When to request feedback |
|
||||
| Feedback incentives | Reward for completing |
|
||||
|
||||
---
|
||||
|
||||
## Re-engagement Experiments
|
||||
|
||||
### Stalled User Recovery
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Re-engagement email timing | When to send |
|
||||
| Personal outreach | Human vs. automated |
|
||||
| Simplified path | Reduced steps for returners |
|
||||
| Incentive offers | Discount or extended trial |
|
||||
| Problem identification | Ask what's blocking |
|
||||
| Demo offer | Live walkthrough |
|
||||
|
||||
### Return Experience
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Welcome back message | Acknowledge return |
|
||||
| Progress resume | Pick up where left off |
|
||||
| Changed state | What happened while away |
|
||||
| Re-onboarding | Fresh start option |
|
||||
| Urgency messaging | Trial time remaining |
|
||||
|
||||
---
|
||||
|
||||
## Technical & UX Experiments
|
||||
|
||||
### Performance
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Load time optimization | Faster = higher completion |
|
||||
| Progressive loading | Perceived performance |
|
||||
| Offline capability | Mobile experience |
|
||||
| Error handling | Graceful failure recovery |
|
||||
|
||||
### Mobile Onboarding
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Touch targets | Size and spacing |
|
||||
| Swipe navigation | Mobile-native patterns |
|
||||
| Screen count | Fewer screens needed |
|
||||
| Input optimization | Mobile-friendly forms |
|
||||
| Permission timing | When to ask |
|
||||
|
||||
### Accessibility
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Screen reader support | Accessibility impact |
|
||||
| Keyboard navigation | Non-mouse users |
|
||||
| Color contrast | Visibility |
|
||||
| Font sizing | Readability |
|
||||
|
||||
---
|
||||
|
||||
## Metrics to Track
|
||||
|
||||
For all experiments, measure:
|
||||
|
||||
| Metric | Description |
|
||||
|--------|-------------|
|
||||
| Activation rate | % reaching activation event |
|
||||
| Time to activation | Hours/days to first value |
|
||||
| Step completion rate | % completing each step |
|
||||
| Drop-off points | Where users abandon |
|
||||
| Return rate | Users who come back |
|
||||
| Day 1/7/30 retention | Engagement over time |
|
||||
| Feature adoption | Which features get used |
|
||||
| Support requests | Volume during onboarding |
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: page-cro
|
||||
version: 1.0.0
|
||||
description: When the user wants to optimize, improve, or increase conversions on any marketing page — including homepage, landing pages, pricing pages, feature pages, or blog posts. Also use when the user says "CRO," "conversion rate optimization," "this page isn't converting," "improve conversions," or "why isn't this page working." For signup/registration flows, see signup-flow-cro. For post-signup activation, see onboarding-cro. For forms outside of signup, see form-cro. For popups/modals, see popup-cro.
|
||||
---
|
||||
|
||||
@@ -9,33 +10,16 @@ You are a conversion rate optimization expert. Your goal is to analyze marketing
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before providing recommendations, identify:
|
||||
|
||||
1. **Page Type**: What kind of page is this?
|
||||
- Homepage
|
||||
- Landing page (paid traffic, specific campaign)
|
||||
- Pricing page
|
||||
- Feature/product page
|
||||
- Blog post with CTA
|
||||
- About page
|
||||
- Other
|
||||
1. **Page Type**: Homepage, landing page, pricing, feature, blog, about, other
|
||||
2. **Primary Conversion Goal**: Sign up, request demo, purchase, subscribe, download, contact sales
|
||||
3. **Traffic Context**: Where are visitors coming from? (organic, paid, email, social)
|
||||
|
||||
2. **Primary Conversion Goal**: What's the one thing this page should get visitors to do?
|
||||
- Sign up / Start trial
|
||||
- Request demo
|
||||
- Purchase
|
||||
- Subscribe to newsletter
|
||||
- Download resource
|
||||
- Contact sales
|
||||
- Other
|
||||
|
||||
3. **Traffic Context**: If known, where are visitors coming from?
|
||||
- Organic search (what intent?)
|
||||
- Paid ads (what messaging?)
|
||||
- Social media
|
||||
- Email
|
||||
- Referral
|
||||
- Direct
|
||||
---
|
||||
|
||||
## CRO Analysis Framework
|
||||
|
||||
@@ -46,59 +30,46 @@ Analyze the page across these dimensions, in order of impact:
|
||||
**Check for:**
|
||||
- Can a visitor understand what this is and why they should care within 5 seconds?
|
||||
- Is the primary benefit clear, specific, and differentiated?
|
||||
- Does it address a real pain point or desire?
|
||||
- Is it written in the customer's language (not company jargon)?
|
||||
|
||||
**Common issues:**
|
||||
- Feature-focused instead of benefit-focused
|
||||
- Too vague ("The best solution for your needs")
|
||||
- Too clever (sacrificing clarity for creativity)
|
||||
- Trying to say everything instead of the one most important thing
|
||||
- Too vague or too clever (sacrificing clarity)
|
||||
- Trying to say everything instead of the most important thing
|
||||
|
||||
### 2. Headline Effectiveness
|
||||
|
||||
**Evaluate:**
|
||||
- Does it communicate the core value proposition?
|
||||
- Is it specific enough to be meaningful?
|
||||
- Does it create curiosity or urgency without being clickbait?
|
||||
- Does it match the traffic source's messaging (ad → landing page consistency)?
|
||||
- Does it match the traffic source's messaging?
|
||||
|
||||
**Strong headline patterns:**
|
||||
- Outcome-focused: "Get [desired outcome] without [pain point]"
|
||||
- Specificity: Include numbers, timeframes, or concrete details
|
||||
- Social proof baked in: "Join 10,000+ teams who..."
|
||||
- Direct address of pain: "Tired of [specific problem]?"
|
||||
- Social proof: "Join 10,000+ teams who..."
|
||||
|
||||
### 3. CTA Placement, Copy, and Hierarchy
|
||||
|
||||
**Primary CTA assessment:**
|
||||
- Is there one clear primary action?
|
||||
- Is it visible without scrolling (above the fold)?
|
||||
- Is it visible without scrolling?
|
||||
- Does the button copy communicate value, not just action?
|
||||
- Weak: "Submit," "Sign Up," "Learn More"
|
||||
- Strong: "Start Free Trial," "Get My Report," "See Pricing"
|
||||
- Is there sufficient contrast and visual weight?
|
||||
|
||||
**CTA hierarchy:**
|
||||
- Is there a logical primary vs. secondary CTA structure?
|
||||
- Are CTAs repeated at key decision points (after benefits, after social proof, etc.)?
|
||||
- Is the commitment level appropriate for the page stage?
|
||||
- Are CTAs repeated at key decision points?
|
||||
|
||||
### 4. Visual Hierarchy and Scannability
|
||||
|
||||
**Check:**
|
||||
- Can someone scanning get the main message?
|
||||
- Are the most important elements visually prominent?
|
||||
- Is there clear information hierarchy (H1 → H2 → body)?
|
||||
- Is there enough white space to let elements breathe?
|
||||
- Is there enough white space?
|
||||
- Do images support or distract from the message?
|
||||
|
||||
**Common issues:**
|
||||
- Wall of text with no visual breaks
|
||||
- Competing elements fighting for attention
|
||||
- Important information buried below the fold
|
||||
- Stock photos that add nothing
|
||||
|
||||
### 5. Trust Signals and Social Proof
|
||||
|
||||
**Types to look for:**
|
||||
@@ -107,49 +78,37 @@ Analyze the page across these dimensions, in order of impact:
|
||||
- Case study snippets with real numbers
|
||||
- Review scores and counts
|
||||
- Security badges (where relevant)
|
||||
- "As seen in" media mentions
|
||||
- Team/founder credibility
|
||||
|
||||
**Placement:**
|
||||
- Near CTAs (to reduce friction at decision point)
|
||||
- After benefit claims (to validate them)
|
||||
- Throughout the page at natural break points
|
||||
**Placement:** Near CTAs and after benefit claims
|
||||
|
||||
### 6. Objection Handling
|
||||
|
||||
**Identify likely objections for this page type:**
|
||||
**Common objections to address:**
|
||||
- Price/value concerns
|
||||
- "Will this work for my situation?"
|
||||
- Implementation difficulty
|
||||
- Time to value
|
||||
- Switching costs
|
||||
- Trust/legitimacy concerns
|
||||
- "What if it doesn't work?"
|
||||
|
||||
**Check if the page addresses these through:**
|
||||
- FAQ sections
|
||||
- Guarantee/refund policies
|
||||
- Comparison content
|
||||
- Feature explanations
|
||||
- Process transparency
|
||||
**Address through:** FAQ sections, guarantees, comparison content, process transparency
|
||||
|
||||
### 7. Friction Points
|
||||
|
||||
**Look for unnecessary friction:**
|
||||
**Look for:**
|
||||
- Too many form fields
|
||||
- Unclear next steps
|
||||
- Confusing navigation
|
||||
- Required information that shouldn't be required
|
||||
- Broken or slow elements
|
||||
- Mobile experience issues
|
||||
- Long load times
|
||||
|
||||
---
|
||||
|
||||
## Output Format
|
||||
|
||||
Structure your recommendations as:
|
||||
|
||||
### Quick Wins (Implement Now)
|
||||
Changes that are easy to make and likely to have immediate impact.
|
||||
Easy changes with likely immediate impact.
|
||||
|
||||
### High-Impact Changes (Prioritize)
|
||||
Bigger changes that require more effort but will significantly improve conversions.
|
||||
@@ -158,177 +117,65 @@ Bigger changes that require more effort but will significantly improve conversio
|
||||
Hypotheses worth A/B testing rather than assuming.
|
||||
|
||||
### Copy Alternatives
|
||||
For key elements (headlines, CTAs, value props), provide 2-3 alternative versions with rationale.
|
||||
For key elements (headlines, CTAs), provide 2-3 alternatives with rationale.
|
||||
|
||||
---
|
||||
|
||||
## Page-Specific Frameworks
|
||||
|
||||
### Homepage CRO
|
||||
|
||||
Homepages serve multiple audiences. Focus on:
|
||||
- Clear positioning statement that works for cold visitors
|
||||
- Quick path to most common conversion action
|
||||
- Navigation that helps visitors self-select
|
||||
- Handling both "ready to buy" and "still researching" visitors
|
||||
- Clear positioning for cold visitors
|
||||
- Quick path to most common conversion
|
||||
- Handle both "ready to buy" and "still researching"
|
||||
|
||||
### Landing Page CRO
|
||||
|
||||
Single-purpose pages. Focus on:
|
||||
- Message match with traffic source
|
||||
- Single CTA (remove navigation if possible)
|
||||
- Complete argument on one page (minimize clicks to convert)
|
||||
- Urgency/scarcity if genuine
|
||||
- Complete argument on one page
|
||||
|
||||
### Pricing Page CRO
|
||||
|
||||
High-intent visitors. Focus on:
|
||||
- Clear plan comparison
|
||||
- Recommended plan indication
|
||||
- Feature clarity (what's included/excluded)
|
||||
- Addressing "which plan is right for me?" anxiety
|
||||
- Easy path from pricing to checkout
|
||||
- Address "which plan is right for me?" anxiety
|
||||
|
||||
### Feature Page CRO
|
||||
|
||||
Visitors researching specifics. Focus on:
|
||||
- Connecting feature to benefit
|
||||
- Connect feature to benefit
|
||||
- Use cases and examples
|
||||
- Comparison to alternatives
|
||||
- Clear CTA to try/buy
|
||||
- Clear path to try/buy
|
||||
|
||||
### Blog Post CRO
|
||||
|
||||
Content-to-conversion. Focus on:
|
||||
- Contextual CTAs that match content topic
|
||||
- Lead magnets related to article subject
|
||||
- Contextual CTAs matching content topic
|
||||
- Inline CTAs at natural stopping points
|
||||
- Exit-intent as backup
|
||||
|
||||
---
|
||||
|
||||
## Experiment Ideas by Page Type
|
||||
## Experiment Ideas
|
||||
|
||||
### Homepage Experiments
|
||||
When recommending experiments, consider tests for:
|
||||
- Hero section (headline, visual, CTA)
|
||||
- Trust signals and social proof placement
|
||||
- Pricing presentation
|
||||
- Form optimization
|
||||
- Navigation and UX
|
||||
|
||||
**Hero Section**
|
||||
- Test headline variations (specific vs. abstract, benefit vs. feature)
|
||||
- Add or refine subheadline for clarity
|
||||
- Include or exclude prominent CTA above the fold
|
||||
- Test hero visual: screenshot vs. GIF vs. illustration vs. video
|
||||
- A/B test CTA button colors for contrast
|
||||
- Test different CTA button text ("Start Free Trial" vs. "Get Started" vs. "See Demo")
|
||||
- Add interactive demo to engage visitors immediately
|
||||
|
||||
**Trust & Social Proof**
|
||||
- Test placement of customer logos (hero vs. below fold)
|
||||
- Showcase case studies or testimonials in hero section
|
||||
- Add trust badges (security, compliance, awards)
|
||||
- Test customer count or social proof in headline
|
||||
|
||||
**Features & Content**
|
||||
- Highlight key features with icons and brief descriptions
|
||||
- Test feature section order and prominence
|
||||
- Add or remove secondary CTAs throughout page
|
||||
|
||||
**Navigation & UX**
|
||||
- Add sticky navigation bar with persistent CTA
|
||||
- Test navigation menu order (high-priority items at edges)
|
||||
- Add prominent CTA button in nav bar
|
||||
- Live chat widget vs. AI chatbot for instant support
|
||||
- Optimize footer for clarity and secondary conversions
|
||||
**For comprehensive experiment ideas by page type**: See [references/experiments.md](references/experiments.md)
|
||||
|
||||
---
|
||||
|
||||
### Pricing Page Experiments
|
||||
|
||||
**Price Presentation**
|
||||
- Highlight annual billing discounts vs. show monthly only vs. show both
|
||||
- Test different pricing points ($99 vs. $100 vs. $97)
|
||||
- Add "Most Popular" or "Recommended" badge to target plan
|
||||
- Experiment with number of visible tiers (3 vs. 4 vs. 2)
|
||||
- Use price anchoring strategically
|
||||
|
||||
**Pricing UX**
|
||||
- Add pricing calculator for complex/usage-based pricing
|
||||
- Turn complex pricing table into guided multistep form
|
||||
- Test feature comparison table formats
|
||||
- Add toggle for monthly/annual with savings highlighted
|
||||
- Test "Contact Sales" vs. showing enterprise pricing
|
||||
|
||||
**Objection Handling**
|
||||
- Add FAQ section addressing common pricing objections
|
||||
- Include ROI calculator or value demonstration
|
||||
- Add money-back guarantee prominently
|
||||
- Show price-per-user breakdowns for team plans
|
||||
- Include "What's included" clarity for each tier
|
||||
|
||||
**Trust Signals**
|
||||
- Add testimonials specific to pricing/value
|
||||
- Show customer logos near pricing
|
||||
- Display review scores from G2/Capterra
|
||||
|
||||
---
|
||||
|
||||
### Demo Request Page Experiments
|
||||
|
||||
**Form Optimization**
|
||||
- Simplify demo request form (fewer fields)
|
||||
- Test multi-step form with progress bar vs. single-step
|
||||
- Test form placement: above fold vs. after content
|
||||
- Add or remove phone number field
|
||||
- Use field enrichment to hide known fields
|
||||
|
||||
**Page Content**
|
||||
- Optimize demo page content with benefits above form
|
||||
- Add product video or GIF showing demo experience
|
||||
- Include "What You'll Learn" section
|
||||
- Add customer testimonials near form
|
||||
- Address common objections in FAQ
|
||||
|
||||
**CTA & Routing**
|
||||
- Test demo button CTAs ("Book Your Demo" vs. "Schedule 15-Min Call")
|
||||
- Offer on-demand demo alongside live option
|
||||
- Personalize demo page messaging based on visitor data
|
||||
- Remove navigation to reduce distractions
|
||||
- Optimize routing: calendar link for qualified, self-serve for others
|
||||
|
||||
---
|
||||
|
||||
### Resource/Blog Page Experiments
|
||||
|
||||
**Content CTAs**
|
||||
- Add floating or sticky CTAs on blog posts
|
||||
- Test inline CTAs within content vs. end-of-post only
|
||||
- Show estimated reading time
|
||||
- Add related resources at end of article
|
||||
- Test gated vs. free content strategies
|
||||
|
||||
**Resource Section**
|
||||
- Optimize resource section navigation and filtering
|
||||
- Add search functionality
|
||||
- Highlight featured or popular resources
|
||||
- Test grid vs. list view layouts
|
||||
- Create resource bundles by topic
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask the User
|
||||
|
||||
If you need more context, ask:
|
||||
## Task-Specific Questions
|
||||
|
||||
1. What's your current conversion rate and goal?
|
||||
2. Where is traffic coming from?
|
||||
3. What does your signup/purchase flow look like after this page?
|
||||
4. Do you have any user research, heatmaps, or session recordings?
|
||||
4. Do you have user research, heatmaps, or session recordings?
|
||||
5. What have you already tried?
|
||||
|
||||
---
|
||||
|
||||
## Related Skills
|
||||
|
||||
- **signup-flow-cro**: If the issue is in the signup process itself, not the page leading to it
|
||||
- **signup-flow-cro**: If the issue is in the signup process itself
|
||||
- **form-cro**: If forms on the page need optimization
|
||||
- **popup-cro**: If considering popups as part of the conversion strategy
|
||||
- **copywriting**: If the page needs a complete copy rewrite rather than CRO tweaks
|
||||
- **popup-cro**: If considering popups as part of the strategy
|
||||
- **copywriting**: If the page needs a complete copy rewrite
|
||||
- **ab-test-setup**: To properly test recommended changes
|
||||
|
||||
239
skills/page-cro/references/experiments.md
Normal file
239
skills/page-cro/references/experiments.md
Normal file
@@ -0,0 +1,239 @@
|
||||
# Page CRO Experiment Ideas
|
||||
|
||||
Comprehensive list of A/B tests and experiments organized by page type.
|
||||
|
||||
## Homepage Experiments
|
||||
|
||||
### Hero Section
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Headline variations | Specific vs. abstract messaging |
|
||||
| Subheadline clarity | Add/refine to support headline |
|
||||
| CTA above fold | Include or exclude prominent CTA |
|
||||
| Hero visual format | Screenshot vs. GIF vs. illustration vs. video |
|
||||
| CTA button color | Test contrast and visibility |
|
||||
| CTA button text | "Start Free Trial" vs. "Get Started" vs. "See Demo" |
|
||||
| Interactive demo | Engage visitors immediately with product |
|
||||
|
||||
### Trust & Social Proof
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Logo placement | Hero section vs. below fold |
|
||||
| Case study in hero | Show results immediately |
|
||||
| Trust badges | Add security, compliance, awards |
|
||||
| Social proof in headline | "Join 10,000+ teams" messaging |
|
||||
| Testimonial placement | Above fold vs. dedicated section |
|
||||
| Video testimonials | More engaging than text quotes |
|
||||
|
||||
### Features & Content
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Feature presentation | Icons + descriptions vs. detailed sections |
|
||||
| Section ordering | Move high-value features up |
|
||||
| Secondary CTAs | Add/remove throughout page |
|
||||
| Benefit vs. feature focus | Lead with outcomes |
|
||||
| Comparison section | Show vs. competitors or status quo |
|
||||
|
||||
### Navigation & UX
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Sticky navigation | Persistent nav with CTA |
|
||||
| Nav menu order | High-priority items at edges |
|
||||
| Nav CTA button | Add prominent button in nav |
|
||||
| Support widget | Live chat vs. AI chatbot |
|
||||
| Footer optimization | Clearer secondary conversions |
|
||||
| Exit intent popup | Capture abandoning visitors |
|
||||
|
||||
---
|
||||
|
||||
## Pricing Page Experiments
|
||||
|
||||
### Price Presentation
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Annual vs. monthly display | Highlight savings or simplify |
|
||||
| Price points | $99 vs. $100 vs. $97 psychology |
|
||||
| "Most Popular" badge | Highlight target plan |
|
||||
| Number of tiers | 3 vs. 4 vs. 2 visible options |
|
||||
| Price anchoring | Order plans to anchor expectations |
|
||||
| Custom enterprise tier | Show vs. "Contact Sales" |
|
||||
|
||||
### Pricing UX
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Pricing calculator | For usage-based pricing clarity |
|
||||
| Guided pricing flow | Multistep wizard vs. comparison table |
|
||||
| Feature comparison format | Table vs. expandable sections |
|
||||
| Monthly/annual toggle | With savings highlighted |
|
||||
| Plan recommendation quiz | Help visitors choose |
|
||||
| Checkout flow length | Steps required after plan selection |
|
||||
|
||||
### Objection Handling
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| FAQ section | Address pricing objections |
|
||||
| ROI calculator | Demonstrate value vs. cost |
|
||||
| Money-back guarantee | Prominent placement |
|
||||
| Per-user breakdowns | Clarity for team plans |
|
||||
| Feature inclusion clarity | What's in each tier |
|
||||
| Competitor comparison | Side-by-side value comparison |
|
||||
|
||||
### Trust Signals
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Value testimonials | Quotes about ROI specifically |
|
||||
| Customer logos | Near pricing section |
|
||||
| Review scores | G2/Capterra ratings |
|
||||
| Case study snippet | Specific pricing/value results |
|
||||
|
||||
---
|
||||
|
||||
## Demo Request Page Experiments
|
||||
|
||||
### Form Optimization
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Field count | Fewer fields, higher completion |
|
||||
| Multi-step vs. single | Progress bar encouragement |
|
||||
| Form placement | Above fold vs. after content |
|
||||
| Phone field | Include vs. exclude |
|
||||
| Field enrichment | Hide fields you can auto-fill |
|
||||
| Form labels | Inside field vs. above |
|
||||
|
||||
### Page Content
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Benefits above form | Reinforce value before ask |
|
||||
| Demo preview | Video/GIF showing demo experience |
|
||||
| "What You'll Learn" | Set expectations clearly |
|
||||
| Testimonials near form | Reduce friction at decision point |
|
||||
| FAQ below form | Address common objections |
|
||||
| Video vs. text | Format for explaining value |
|
||||
|
||||
### CTA & Routing
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| CTA text | "Book Your Demo" vs. "Schedule 15-Min Call" |
|
||||
| On-demand option | Instant demo alongside live option |
|
||||
| Personalized messaging | Based on visitor data/source |
|
||||
| Navigation removal | Reduce page distractions |
|
||||
| Calendar integration | Inline booking vs. external link |
|
||||
| Qualification routing | Self-serve for some, sales for others |
|
||||
|
||||
---
|
||||
|
||||
## Resource/Blog Page Experiments
|
||||
|
||||
### Content CTAs
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Floating CTAs | Sticky CTA on blog posts |
|
||||
| CTA placement | Inline vs. end-of-post only |
|
||||
| Reading time display | Estimated reading time |
|
||||
| Related resources | End-of-article recommendations |
|
||||
| Gated vs. free | Content access strategy |
|
||||
| Content upgrades | Specific to article topic |
|
||||
|
||||
### Resource Section
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Navigation/filtering | Easier to find relevant content |
|
||||
| Search functionality | Find specific resources |
|
||||
| Featured resources | Highlight best content |
|
||||
| Layout format | Grid vs. list view |
|
||||
| Topic bundles | Grouped resources by theme |
|
||||
| Download tracking | Gate some, track engagement |
|
||||
|
||||
---
|
||||
|
||||
## Landing Page Experiments
|
||||
|
||||
### Message Match
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Headline matching | Match ad copy exactly |
|
||||
| Visual matching | Match ad creative |
|
||||
| Offer alignment | Same offer as ad promised |
|
||||
| Audience-specific pages | Different pages per segment |
|
||||
|
||||
### Conversion Focus
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Navigation removal | Single-focus page |
|
||||
| CTA repetition | Multiple CTAs throughout |
|
||||
| Form vs. button | Direct capture vs. click-through |
|
||||
| Urgency/scarcity | If genuine, test messaging |
|
||||
| Social proof density | Amount and placement |
|
||||
| Video inclusion | Explain offer with video |
|
||||
|
||||
### Page Length
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Short vs. long | Quick conversion vs. complete argument |
|
||||
| Above-fold only | Minimal scroll required |
|
||||
| Section ordering | Most important content first |
|
||||
| Footer removal | Eliminate navigation |
|
||||
|
||||
---
|
||||
|
||||
## Feature Page Experiments
|
||||
|
||||
### Feature Presentation
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Demo/screenshot | Show feature in action |
|
||||
| Use case examples | How customers use it |
|
||||
| Before/after | Impact visualization |
|
||||
| Video walkthrough | Feature tour |
|
||||
| Interactive demo | Try feature without signup |
|
||||
|
||||
### Conversion Path
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Trial CTA | Feature-specific trial offer |
|
||||
| Related features | Cross-link to other features |
|
||||
| Comparison | vs. competitors' version |
|
||||
| Pricing mention | Connect to relevant plan |
|
||||
| Case study link | Feature-specific success story |
|
||||
|
||||
---
|
||||
|
||||
## Cross-Page Experiments
|
||||
|
||||
### Site-Wide Tests
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Chat widget | Impact on conversions |
|
||||
| Cookie consent UX | Minimize friction |
|
||||
| Page load speed | Performance vs. features |
|
||||
| Mobile experience | Responsive optimization |
|
||||
| Accessibility | Impact on conversion |
|
||||
| Personalization | Dynamic content by segment |
|
||||
|
||||
### Navigation Tests
|
||||
|
||||
| Test | Hypothesis |
|
||||
|------|------------|
|
||||
| Menu structure | Information architecture |
|
||||
| Search placement | Help visitors find content |
|
||||
| CTA in nav | Always-visible conversion path |
|
||||
| Breadcrumbs | Navigation clarity |
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: paid-ads
|
||||
version: 1.0.0
|
||||
description: "When the user wants help with paid advertising campaigns on Google Ads, Meta (Facebook/Instagram), LinkedIn, Twitter/X, or other ad platforms. Also use when the user mentions 'PPC,' 'paid media,' 'ad copy,' 'ad creative,' 'ROAS,' 'CPA,' 'ad campaign,' 'retargeting,' or 'audience targeting.' This skill covers campaign strategy, ad creation, audience targeting, and optimization."
|
||||
---
|
||||
|
||||
@@ -9,6 +10,9 @@ You are an expert performance marketer with direct access to ad platform account
|
||||
|
||||
## Before Starting
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Gather this context (ask if not provided):
|
||||
|
||||
### 1. Campaign Goals
|
||||
@@ -21,7 +25,6 @@ Gather this context (ask if not provided):
|
||||
- What are you promoting? (Product, free trial, lead magnet, demo)
|
||||
- What's the landing page URL?
|
||||
- What makes this offer compelling?
|
||||
- Any promotions or urgency elements?
|
||||
|
||||
### 3. Audience
|
||||
- Who is the ideal customer?
|
||||
@@ -33,71 +36,18 @@ Gather this context (ask if not provided):
|
||||
- Have you run ads before? What worked/didn't?
|
||||
- Do you have existing pixel/conversion data?
|
||||
- What's your current funnel conversion rate?
|
||||
- Any existing creative assets?
|
||||
|
||||
---
|
||||
|
||||
## Platform Selection Guide
|
||||
|
||||
### Google Ads
|
||||
**Best for:** High-intent search traffic, capturing existing demand
|
||||
**Use when:**
|
||||
- People actively search for your solution
|
||||
- You have clear keywords with commercial intent
|
||||
- You want bottom-of-funnel conversions
|
||||
|
||||
**Campaign types:**
|
||||
- Search: Keyword-targeted text ads
|
||||
- Performance Max: AI-driven cross-channel
|
||||
- Display: Banner ads across Google network
|
||||
- YouTube: Video ads
|
||||
- Demand Gen: Discovery and Gmail placements
|
||||
|
||||
### Meta (Facebook/Instagram)
|
||||
**Best for:** Demand generation, visual products, broad targeting
|
||||
**Use when:**
|
||||
- Your product has visual appeal
|
||||
- You're creating demand (not just capturing it)
|
||||
- You have strong creative assets
|
||||
- You want to build audiences for retargeting
|
||||
|
||||
**Campaign types:**
|
||||
- Advantage+ Shopping: E-commerce automation
|
||||
- Lead Gen: In-platform lead forms
|
||||
- Conversions: Website conversion optimization
|
||||
- Traffic: Link clicks to site
|
||||
- Engagement: Social proof building
|
||||
|
||||
### LinkedIn Ads
|
||||
**Best for:** B2B targeting, reaching decision-makers
|
||||
**Use when:**
|
||||
- You're selling to businesses
|
||||
- Job title/company targeting matters
|
||||
- Higher price points justify higher CPCs
|
||||
- You need to reach specific industries
|
||||
|
||||
**Campaign types:**
|
||||
- Sponsored Content: Feed posts
|
||||
- Message Ads: Direct InMail
|
||||
- Lead Gen Forms: In-platform capture
|
||||
- Document Ads: Gated content
|
||||
- Conversation Ads: Interactive messaging
|
||||
|
||||
### Twitter/X Ads
|
||||
**Best for:** Tech audiences, real-time relevance, thought leadership
|
||||
**Use when:**
|
||||
- Your audience is active on X
|
||||
- You have timely/trending content
|
||||
- You want to amplify organic content
|
||||
- Lower CPMs matter more than precision targeting
|
||||
|
||||
### TikTok Ads
|
||||
**Best for:** Younger demographics, viral creative, brand awareness
|
||||
**Use when:**
|
||||
- Your audience skews younger (18-34)
|
||||
- You can create native-feeling video content
|
||||
- Brand awareness is a goal
|
||||
- You have creative capacity for video
|
||||
| Platform | Best For | Use When |
|
||||
|----------|----------|----------|
|
||||
| **Google Ads** | High-intent search traffic | People actively search for your solution |
|
||||
| **Meta** | Demand generation, visual products | Creating demand, strong creative assets |
|
||||
| **LinkedIn** | B2B, decision-makers | Job title/company targeting matters, higher price points |
|
||||
| **Twitter/X** | Tech audiences, thought leadership | Audience is active on X, timely content |
|
||||
| **TikTok** | Younger demographics, viral creative | Audience skews 18-34, video capacity |
|
||||
|
||||
---
|
||||
|
||||
@@ -113,14 +63,11 @@ Account
|
||||
│ │ ├── Ad 2: [Creative variation B]
|
||||
│ │ └── Ad 3: [Creative variation C]
|
||||
│ └── Ad Set 2: [Targeting variation]
|
||||
│ └── Ads...
|
||||
└── Campaign 2...
|
||||
```
|
||||
|
||||
### Naming Conventions
|
||||
|
||||
Use consistent naming for easy analysis:
|
||||
|
||||
```
|
||||
[Platform]_[Objective]_[Audience]_[Offer]_[Date]
|
||||
|
||||
@@ -130,7 +77,7 @@ GOOG_Search_Brand_Demo_Ongoing
|
||||
LI_LeadGen_CMOs-SaaS_Whitepaper_Mar24
|
||||
```
|
||||
|
||||
### Budget Allocation Framework
|
||||
### Budget Allocation
|
||||
|
||||
**Testing phase (first 2-4 weeks):**
|
||||
- 70% to proven/safe campaigns
|
||||
@@ -145,213 +92,80 @@ LI_LeadGen_CMOs-SaaS_Whitepaper_Mar24
|
||||
|
||||
## Ad Copy Frameworks
|
||||
|
||||
### Primary Text Formulas
|
||||
### Key Formulas
|
||||
|
||||
**Problem-Agitate-Solve (PAS):**
|
||||
```
|
||||
[Problem statement]
|
||||
[Agitate the pain]
|
||||
[Introduce solution]
|
||||
[CTA]
|
||||
```
|
||||
|
||||
Example:
|
||||
> Spending hours on manual reporting every week?
|
||||
> While you're buried in spreadsheets, your competitors are making decisions.
|
||||
> [Product] automates your reports in minutes.
|
||||
> Start your free trial →
|
||||
> [Problem] → [Agitate the pain] → [Introduce solution] → [CTA]
|
||||
|
||||
**Before-After-Bridge (BAB):**
|
||||
```
|
||||
[Current painful state]
|
||||
[Desired future state]
|
||||
[Your product as the bridge]
|
||||
```
|
||||
|
||||
Example:
|
||||
> Before: Chasing down approvals across email, Slack, and spreadsheets.
|
||||
> After: Every approval tracked, automated, and on time.
|
||||
> [Product] connects your tools and keeps projects moving.
|
||||
> [Current painful state] → [Desired future state] → [Your product as bridge]
|
||||
|
||||
**Social Proof Lead:**
|
||||
```
|
||||
[Impressive stat or testimonial]
|
||||
[What you do]
|
||||
[CTA]
|
||||
```
|
||||
> [Impressive stat or testimonial] → [What you do] → [CTA]
|
||||
|
||||
Example:
|
||||
> "We cut our reporting time by 75%." — Sarah K., Marketing Director
|
||||
> [Product] automates the reports you hate building.
|
||||
> See how it works →
|
||||
|
||||
### Headline Formulas
|
||||
|
||||
**For Search Ads:**
|
||||
- [Keyword] + [Benefit]: "Project Management That Teams Actually Use"
|
||||
- [Action] + [Outcome]: "Automate Reports | Save 10 Hours Weekly"
|
||||
- [Question]: "Tired of Manual Data Entry?"
|
||||
- [Number] + [Benefit]: "500+ Teams Trust [Product] for [Outcome]"
|
||||
|
||||
**For Social Ads:**
|
||||
- Hook with outcome: "How we 3x'd our conversion rate"
|
||||
- Hook with curiosity: "The reporting hack no one talks about"
|
||||
- Hook with contrarian: "Why we stopped using [common tool]"
|
||||
- Hook with specificity: "The exact template we use for..."
|
||||
|
||||
### CTA Variations
|
||||
|
||||
**Soft CTAs (awareness/consideration):**
|
||||
- Learn More
|
||||
- See How It Works
|
||||
- Watch Demo
|
||||
- Get the Guide
|
||||
|
||||
**Hard CTAs (conversion):**
|
||||
- Start Free Trial
|
||||
- Get Started Free
|
||||
- Book a Demo
|
||||
- Claim Your Discount
|
||||
- Buy Now
|
||||
|
||||
**Urgency CTAs (when genuine):**
|
||||
- Limited Time: 30% Off
|
||||
- Offer Ends [Date]
|
||||
- Only X Spots Left
|
||||
**For detailed templates and headline formulas**: See [references/ad-copy-templates.md](references/ad-copy-templates.md)
|
||||
|
||||
---
|
||||
|
||||
## Audience Targeting Strategies
|
||||
## Audience Targeting Overview
|
||||
|
||||
### Google Ads Audiences
|
||||
### Platform Strengths
|
||||
|
||||
**Search campaigns:**
|
||||
- Keywords (exact, phrase, broad match)
|
||||
- Audience layering (observation mode first)
|
||||
- Remarketing lists for search ads (RLSA)
|
||||
| Platform | Key Targeting | Best Signals |
|
||||
|----------|---------------|--------------|
|
||||
| Google | Keywords, search intent | What they're searching |
|
||||
| Meta | Interests, behaviors, lookalikes | Engagement patterns |
|
||||
| LinkedIn | Job titles, companies, industries | Professional identity |
|
||||
|
||||
**Display/YouTube:**
|
||||
- Custom intent (based on search behavior)
|
||||
- In-market audiences
|
||||
- Affinity audiences
|
||||
- Customer match (upload email lists)
|
||||
- Similar/lookalike audiences
|
||||
### Key Concepts
|
||||
|
||||
### Meta Audiences
|
||||
- **Lookalikes**: Base on best customers (by LTV), not all customers
|
||||
- **Retargeting**: Segment by funnel stage (visitors vs. cart abandoners)
|
||||
- **Exclusions**: Always exclude existing customers and recent converters
|
||||
|
||||
**Core audiences (interest/demographic):**
|
||||
- Layer interests with AND logic for precision
|
||||
- Exclude existing customers
|
||||
- Start broad, let algorithm optimize
|
||||
|
||||
**Custom audiences:**
|
||||
- Website visitors (by page, time on site, frequency)
|
||||
- Customer list uploads
|
||||
- Engagement (video viewers, page engagers)
|
||||
- App activity
|
||||
|
||||
**Lookalike audiences:**
|
||||
- Source: Best customers (by LTV, not just all customers)
|
||||
- Size: Start 1%, expand to 1-3% as you scale
|
||||
- Layer: Lookalike + interest for early testing
|
||||
|
||||
### LinkedIn Audiences
|
||||
|
||||
**Job-based targeting:**
|
||||
- Job titles (be specific, avoid broad)
|
||||
- Job functions + seniority
|
||||
- Skills (self-reported)
|
||||
|
||||
**Company-based targeting:**
|
||||
- Company size
|
||||
- Industry
|
||||
- Company names (ABM)
|
||||
- Company growth rate
|
||||
|
||||
**Combinations that work:**
|
||||
- Job function + seniority + company size
|
||||
- Industry + job title
|
||||
- Company list + decision-maker titles
|
||||
**For detailed targeting strategies by platform**: See [references/audience-targeting.md](references/audience-targeting.md)
|
||||
|
||||
---
|
||||
|
||||
## Creative Best Practices
|
||||
|
||||
### Image Ads
|
||||
|
||||
**What works:**
|
||||
- Clear product screenshots showing UI
|
||||
- Before/after comparisons
|
||||
- Stats and numbers as focal point
|
||||
- Human faces (real, not stock)
|
||||
- Bold, readable text overlay (keep under 20%)
|
||||
|
||||
**What doesn't:**
|
||||
- Generic stock photos
|
||||
- Too much text
|
||||
- Cluttered visuals
|
||||
- Low contrast/hard to read
|
||||
|
||||
### Video Ads
|
||||
|
||||
**Structure for short-form (15-30 sec):**
|
||||
### Video Ads Structure (15-30 sec)
|
||||
1. Hook (0-3 sec): Pattern interrupt, question, or bold statement
|
||||
2. Problem (3-8 sec): Relatable pain point
|
||||
3. Solution (8-20 sec): Show product/benefit
|
||||
4. CTA (20-30 sec): Clear next step
|
||||
|
||||
**Structure for longer-form (60+ sec):**
|
||||
1. Hook (0-5 sec)
|
||||
2. Problem deep-dive (5-20 sec)
|
||||
3. Solution introduction (20-35 sec)
|
||||
4. Social proof (35-45 sec)
|
||||
5. How it works (45-55 sec)
|
||||
6. CTA with offer (55-60 sec)
|
||||
|
||||
**Production tips:**
|
||||
- Captions always (85% watch without sound)
|
||||
- Vertical for Stories/Reels, square for feed
|
||||
- Native feel outperforms polished
|
||||
- First 3 seconds determine if they watch
|
||||
|
||||
### Ad Creative Testing
|
||||
|
||||
**Testing hierarchy:**
|
||||
### Creative Testing Hierarchy
|
||||
1. Concept/angle (biggest impact)
|
||||
2. Hook/headline
|
||||
3. Visual style
|
||||
4. Body copy
|
||||
5. CTA
|
||||
|
||||
**Testing approach:**
|
||||
- Test one variable at a time for clean data
|
||||
- Need 100+ conversions per variant for significance
|
||||
- Kill losers fast (3-5 days with sufficient spend)
|
||||
- Iterate on winners
|
||||
|
||||
---
|
||||
|
||||
## Campaign Optimization
|
||||
|
||||
### Key Metrics by Objective
|
||||
|
||||
**Awareness:**
|
||||
- CPM (cost per 1,000 impressions)
|
||||
- Reach and frequency
|
||||
- Video view rate / watch time
|
||||
- Brand lift (if available)
|
||||
|
||||
**Consideration:**
|
||||
- CTR (click-through rate)
|
||||
- CPC (cost per click)
|
||||
- Landing page views
|
||||
- Time on site from ads
|
||||
|
||||
**Conversion:**
|
||||
- CPA (cost per acquisition)
|
||||
- ROAS (return on ad spend)
|
||||
- Conversion rate
|
||||
- Cost per lead / cost per sale
|
||||
| Objective | Primary Metrics |
|
||||
|-----------|-----------------|
|
||||
| Awareness | CPM, Reach, Video view rate |
|
||||
| Consideration | CTR, CPC, Time on site |
|
||||
| Conversion | CPA, ROAS, Conversion rate |
|
||||
|
||||
### Optimization Levers
|
||||
|
||||
@@ -366,25 +180,13 @@ Example:
|
||||
- Creative isn't resonating → test new hooks/angles
|
||||
- Audience mismatch → refine targeting
|
||||
- Ad fatigue → refresh creative
|
||||
- Weak offer → improve value proposition
|
||||
|
||||
**If CPM is high:**
|
||||
- Audience too narrow → expand targeting
|
||||
- High competition → try different placements
|
||||
- Low relevance score → improve creative fit
|
||||
- Bidding too aggressively → adjust bid caps
|
||||
|
||||
### Bid Strategies
|
||||
|
||||
**Manual/controlled:**
|
||||
- Use when: Learning phase, small budgets, need control
|
||||
- Manual CPC, bid caps, cost caps
|
||||
|
||||
**Automated/smart:**
|
||||
- Use when: Sufficient conversion data (50+ per month), scaling
|
||||
- Target CPA, target ROAS, maximize conversions
|
||||
|
||||
**Progression:**
|
||||
### Bid Strategy Progression
|
||||
1. Start with manual or cost caps
|
||||
2. Gather conversion data (50+ conversions)
|
||||
3. Switch to automated with targets based on historical data
|
||||
@@ -394,22 +196,13 @@ Example:
|
||||
|
||||
## Retargeting Strategies
|
||||
|
||||
### Funnel-Based Retargeting
|
||||
### Funnel-Based Approach
|
||||
|
||||
**Top of funnel (awareness):**
|
||||
- Audience: Blog readers, video viewers, social engagers
|
||||
- Message: Educational content, social proof
|
||||
- Goal: Move to consideration
|
||||
|
||||
**Middle of funnel (consideration):**
|
||||
- Audience: Pricing page visitors, feature page visitors
|
||||
- Message: Case studies, demos, comparisons
|
||||
- Goal: Move to decision
|
||||
|
||||
**Bottom of funnel (decision):**
|
||||
- Audience: Cart abandoners, trial users, demo no-shows
|
||||
- Message: Urgency, objection handling, offers
|
||||
- Goal: Convert
|
||||
| Funnel Stage | Audience | Message | Goal |
|
||||
|--------------|----------|---------|------|
|
||||
| Top | Blog readers, video viewers | Educational, social proof | Move to consideration |
|
||||
| Middle | Pricing/feature page visitors | Case studies, demos | Move to decision |
|
||||
| Bottom | Cart abandoners, trial users | Urgency, objection handling | Convert |
|
||||
|
||||
### Retargeting Windows
|
||||
|
||||
@@ -420,120 +213,74 @@ Example:
|
||||
| Cold (any visit) | 30-90 days | 1-2x/week |
|
||||
|
||||
### Exclusions to Set Up
|
||||
|
||||
Always exclude:
|
||||
- Existing customers (unless upsell campaign)
|
||||
- Existing customers (unless upsell)
|
||||
- Recent converters (7-14 day window)
|
||||
- Bounced visitors (<10 sec on site)
|
||||
- Bounced visitors (<10 sec)
|
||||
- Irrelevant pages (careers, support)
|
||||
|
||||
---
|
||||
|
||||
## Reporting & Analysis
|
||||
|
||||
### Weekly Review Checklist
|
||||
|
||||
- [ ] Spend vs. budget pacing
|
||||
- [ ] CPA/ROAS vs. targets
|
||||
- [ ] Top and bottom performing ads
|
||||
- [ ] Audience performance breakdown
|
||||
- [ ] Frequency check (fatigue risk)
|
||||
- [ ] Landing page conversion rate
|
||||
- [ ] Any disapproved ads or policy issues
|
||||
|
||||
### Monthly Analysis
|
||||
|
||||
- [ ] Overall channel performance vs. goals
|
||||
- [ ] Creative performance trends
|
||||
- [ ] Audience insights and learnings
|
||||
- [ ] Budget reallocation recommendations
|
||||
- [ ] Test results and next tests
|
||||
- [ ] Competitive landscape changes
|
||||
### Weekly Review
|
||||
- Spend vs. budget pacing
|
||||
- CPA/ROAS vs. targets
|
||||
- Top and bottom performing ads
|
||||
- Audience performance breakdown
|
||||
- Frequency check (fatigue risk)
|
||||
- Landing page conversion rate
|
||||
|
||||
### Attribution Considerations
|
||||
|
||||
- Platform attribution is inflated (they want credit)
|
||||
- Platform attribution is inflated
|
||||
- Use UTM parameters consistently
|
||||
- Compare platform data to GA4/analytics
|
||||
- Consider incrementality testing for mature accounts
|
||||
- Compare platform data to GA4
|
||||
- Look at blended CAC, not just platform CPA
|
||||
|
||||
---
|
||||
|
||||
## Platform-Specific Setup Guides
|
||||
## Platform Setup
|
||||
|
||||
### Google Ads Setup Checklist
|
||||
Before launching campaigns, ensure proper tracking and account setup.
|
||||
|
||||
- [ ] Conversion tracking installed and tested
|
||||
- [ ] Google Analytics 4 linked
|
||||
- [ ] Audience lists created (remarketing, customer match)
|
||||
- [ ] Negative keyword lists built
|
||||
- [ ] Ad extensions set up (sitelinks, callouts, structured snippets)
|
||||
- [ ] Brand campaign running (protect branded terms)
|
||||
- [ ] Competitor campaign considered
|
||||
- [ ] Location and language targeting set
|
||||
- [ ] Ad schedule aligned with business hours (if B2B)
|
||||
**For complete setup checklists by platform**: See [references/platform-setup-checklists.md](references/platform-setup-checklists.md)
|
||||
|
||||
### Meta Ads Setup Checklist
|
||||
|
||||
- [ ] Pixel installed and events firing
|
||||
- [ ] Conversions API set up (server-side tracking)
|
||||
- [ ] Custom audiences created
|
||||
- [ ] Product catalog connected (if e-commerce)
|
||||
- [ ] Domain verified
|
||||
- [ ] Business Manager properly configured
|
||||
- [ ] Aggregated event measurement prioritized
|
||||
- [ ] Creative assets in correct sizes
|
||||
- [ ] UTM parameters in all URLs
|
||||
|
||||
### LinkedIn Ads Setup Checklist
|
||||
|
||||
- [ ] Insight Tag installed
|
||||
- [ ] Conversion tracking configured
|
||||
- [ ] Matched audiences created
|
||||
- [ ] Company page connected
|
||||
- [ ] Lead gen form templates created
|
||||
- [ ] Document assets uploaded (for Document Ads)
|
||||
- [ ] Audience size validated (not too narrow)
|
||||
- [ ] Budget realistic for LinkedIn CPCs ($8-15+)
|
||||
### Universal Pre-Launch Checklist
|
||||
- [ ] Conversion tracking tested with real conversion
|
||||
- [ ] Landing page loads fast (<3 sec)
|
||||
- [ ] Landing page mobile-friendly
|
||||
- [ ] UTM parameters working
|
||||
- [ ] Budget set correctly
|
||||
- [ ] Targeting matches intended audience
|
||||
|
||||
---
|
||||
|
||||
## Common Mistakes to Avoid
|
||||
|
||||
### Strategy Mistakes
|
||||
### Strategy
|
||||
- Launching without conversion tracking
|
||||
- Too many campaigns/ad sets (fragmenting budget)
|
||||
- Too many campaigns (fragmenting budget)
|
||||
- Not giving algorithms enough learning time
|
||||
- Optimizing for wrong metric (clicks vs. conversions)
|
||||
- Ignoring landing page experience
|
||||
- Optimizing for wrong metric
|
||||
|
||||
### Targeting Mistakes
|
||||
- Audiences too narrow (can't exit learning phase)
|
||||
- Audiences too broad (wasting spend)
|
||||
### Targeting
|
||||
- Audiences too narrow or too broad
|
||||
- Not excluding existing customers
|
||||
- Overlapping audiences competing with each other
|
||||
- Ignoring negative keywords (Search)
|
||||
- Overlapping audiences competing
|
||||
|
||||
### Creative Mistakes
|
||||
- Only running one ad per ad set
|
||||
- Not refreshing creative (ad fatigue)
|
||||
### Creative
|
||||
- Only one ad per ad set
|
||||
- Not refreshing creative (fatigue)
|
||||
- Mismatch between ad and landing page
|
||||
- Ignoring mobile experience
|
||||
- Too much text in images (Meta)
|
||||
|
||||
### Budget Mistakes
|
||||
- Spreading budget too thin across campaigns
|
||||
### Budget
|
||||
- Spreading too thin across campaigns
|
||||
- Making big budget changes (disrupts learning)
|
||||
- Not accounting for platform minimums
|
||||
- Stopping campaigns during learning phase
|
||||
- Weekend/off-hours spend without adjustment
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What platform(s) are you currently running or want to start with?
|
||||
2. What's your monthly ad budget?
|
||||
3. What does a successful conversion look like (and what's it worth)?
|
||||
@@ -543,6 +290,21 @@ If you need more context:
|
||||
|
||||
---
|
||||
|
||||
## Tool Integrations
|
||||
|
||||
For implementation, see the [tools registry](../../tools/REGISTRY.md). Key advertising platforms:
|
||||
|
||||
| Platform | Best For | MCP | Guide |
|
||||
|----------|----------|:---:|-------|
|
||||
| **Google Ads** | Search intent, high-intent traffic | ✓ | [google-ads.md](../../tools/integrations/google-ads.md) |
|
||||
| **Meta Ads** | Demand gen, visual products, B2C | - | [meta-ads.md](../../tools/integrations/meta-ads.md) |
|
||||
| **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)
|
||||
|
||||
---
|
||||
|
||||
## Related Skills
|
||||
|
||||
- **copywriting**: For landing page copy that converts ad traffic
|
||||
|
||||
200
skills/paid-ads/references/ad-copy-templates.md
Normal file
200
skills/paid-ads/references/ad-copy-templates.md
Normal file
@@ -0,0 +1,200 @@
|
||||
# Ad Copy Templates Reference
|
||||
|
||||
Detailed formulas and templates for writing high-converting ad copy.
|
||||
|
||||
## Primary Text Formulas
|
||||
|
||||
### Problem-Agitate-Solve (PAS)
|
||||
|
||||
```
|
||||
[Problem statement]
|
||||
[Agitate the pain]
|
||||
[Introduce solution]
|
||||
[CTA]
|
||||
```
|
||||
|
||||
**Example:**
|
||||
> Spending hours on manual reporting every week?
|
||||
> While you're buried in spreadsheets, your competitors are making decisions.
|
||||
> [Product] automates your reports in minutes.
|
||||
> Start your free trial →
|
||||
|
||||
---
|
||||
|
||||
### Before-After-Bridge (BAB)
|
||||
|
||||
```
|
||||
[Current painful state]
|
||||
[Desired future state]
|
||||
[Your product as the bridge]
|
||||
```
|
||||
|
||||
**Example:**
|
||||
> Before: Chasing down approvals across email, Slack, and spreadsheets.
|
||||
> After: Every approval tracked, automated, and on time.
|
||||
> [Product] connects your tools and keeps projects moving.
|
||||
|
||||
---
|
||||
|
||||
### Social Proof Lead
|
||||
|
||||
```
|
||||
[Impressive stat or testimonial]
|
||||
[What you do]
|
||||
[CTA]
|
||||
```
|
||||
|
||||
**Example:**
|
||||
> "We cut our reporting time by 75%." — Sarah K., Marketing Director
|
||||
> [Product] automates the reports you hate building.
|
||||
> See how it works →
|
||||
|
||||
---
|
||||
|
||||
### Feature-Benefit Bridge
|
||||
|
||||
```
|
||||
[Feature]
|
||||
[So that...]
|
||||
[Which means...]
|
||||
```
|
||||
|
||||
**Example:**
|
||||
> Real-time collaboration on documents
|
||||
> So your team always works from the latest version
|
||||
> Which means no more version confusion or lost work
|
||||
|
||||
---
|
||||
|
||||
### Direct Response
|
||||
|
||||
```
|
||||
[Bold claim/outcome]
|
||||
[Proof point]
|
||||
[CTA with urgency if genuine]
|
||||
```
|
||||
|
||||
**Example:**
|
||||
> Cut your reporting time by 80%
|
||||
> Join 5,000+ marketing teams already using [Product]
|
||||
> Start free → First month 50% off
|
||||
|
||||
---
|
||||
|
||||
## Headline Formulas
|
||||
|
||||
### For Search Ads
|
||||
|
||||
| Formula | Example |
|
||||
|---------|---------|
|
||||
| [Keyword] + [Benefit] | "Project Management That Teams Actually Use" |
|
||||
| [Action] + [Outcome] | "Automate Reports \| Save 10 Hours Weekly" |
|
||||
| [Question] | "Tired of Manual Data Entry?" |
|
||||
| [Number] + [Benefit] | "500+ Teams Trust [Product] for [Outcome]" |
|
||||
| [Keyword] + [Differentiator] | "CRM Built for Small Teams" |
|
||||
| [Price/Offer] + [Keyword] | "Free Project Management \| No Credit Card" |
|
||||
|
||||
### For Social Ads
|
||||
|
||||
| Type | Example |
|
||||
|------|---------|
|
||||
| Outcome hook | "How we 3x'd our conversion rate" |
|
||||
| Curiosity hook | "The reporting hack no one talks about" |
|
||||
| Contrarian hook | "Why we stopped using [common tool]" |
|
||||
| Specificity hook | "The exact template we use for..." |
|
||||
| Question hook | "What if you could cut your admin time in half?" |
|
||||
| Number hook | "7 ways to improve your workflow today" |
|
||||
| Story hook | "We almost gave up. Then we found..." |
|
||||
|
||||
---
|
||||
|
||||
## CTA Variations
|
||||
|
||||
### Soft CTAs (awareness/consideration)
|
||||
|
||||
Best for: Top of funnel, cold audiences, complex products
|
||||
|
||||
- Learn More
|
||||
- See How It Works
|
||||
- Watch Demo
|
||||
- Get the Guide
|
||||
- Explore Features
|
||||
- See Examples
|
||||
- Read the Case Study
|
||||
|
||||
### Hard CTAs (conversion)
|
||||
|
||||
Best for: Bottom of funnel, warm audiences, clear offers
|
||||
|
||||
- Start Free Trial
|
||||
- Get Started Free
|
||||
- Book a Demo
|
||||
- Claim Your Discount
|
||||
- Buy Now
|
||||
- Sign Up Free
|
||||
- Get Instant Access
|
||||
|
||||
### Urgency CTAs (use when genuine)
|
||||
|
||||
Best for: Limited-time offers, scarcity situations
|
||||
|
||||
- Limited Time: 30% Off
|
||||
- Offer Ends [Date]
|
||||
- Only X Spots Left
|
||||
- Last Chance
|
||||
- Early Bird Pricing Ends Soon
|
||||
|
||||
### Action-Oriented CTAs
|
||||
|
||||
Best for: Active voice, clear next step
|
||||
|
||||
- Start Saving Time Today
|
||||
- Get Your Free Report
|
||||
- See Your Score
|
||||
- Calculate Your ROI
|
||||
- Build Your First Project
|
||||
|
||||
---
|
||||
|
||||
## Platform-Specific Copy Guidelines
|
||||
|
||||
### Google Search Ads
|
||||
|
||||
- **Headline limits:** 30 characters each (up to 15 headlines)
|
||||
- **Description limits:** 90 characters each (up to 4 descriptions)
|
||||
- Include keywords naturally
|
||||
- Use all available headline slots
|
||||
- Include numbers and stats when possible
|
||||
- Test dynamic keyword insertion
|
||||
|
||||
### Meta Ads (Facebook/Instagram)
|
||||
|
||||
- **Primary text:** 125 characters visible (can be longer, gets truncated)
|
||||
- **Headline:** 40 characters recommended
|
||||
- Front-load the hook (first line matters most)
|
||||
- Emojis can work but test
|
||||
- Questions perform well
|
||||
- Keep image text under 20%
|
||||
|
||||
### LinkedIn Ads
|
||||
|
||||
- **Intro text:** 600 characters max (150 recommended)
|
||||
- **Headline:** 200 characters max (70 recommended)
|
||||
- Professional tone (but not boring)
|
||||
- Specific job outcomes resonate
|
||||
- Stats and social proof important
|
||||
- Avoid consumer-style hype
|
||||
|
||||
---
|
||||
|
||||
## Copy Testing Priority
|
||||
|
||||
When testing ad copy, focus on these elements in order of impact:
|
||||
|
||||
1. **Hook/angle** (biggest impact on performance)
|
||||
2. **Headline**
|
||||
3. **Primary benefit**
|
||||
4. **CTA**
|
||||
5. **Supporting proof points**
|
||||
|
||||
Test one element at a time for clean data.
|
||||
234
skills/paid-ads/references/audience-targeting.md
Normal file
234
skills/paid-ads/references/audience-targeting.md
Normal file
@@ -0,0 +1,234 @@
|
||||
# Audience Targeting Reference
|
||||
|
||||
Detailed targeting strategies for each major ad platform.
|
||||
|
||||
## Google Ads Audiences
|
||||
|
||||
### Search Campaign Targeting
|
||||
|
||||
**Keywords:**
|
||||
- Exact match: [keyword] — most precise, lower volume
|
||||
- Phrase match: "keyword" — moderate precision and volume
|
||||
- Broad match: keyword — highest volume, use with smart bidding
|
||||
|
||||
**Audience layering:**
|
||||
- Add audiences in "observation" mode first
|
||||
- Analyze performance by audience
|
||||
- Switch to "targeting" mode for high performers
|
||||
|
||||
**RLSA (Remarketing Lists for Search Ads):**
|
||||
- Bid higher on past visitors searching your terms
|
||||
- Show different ads to returning searchers
|
||||
- Exclude converters from prospecting campaigns
|
||||
|
||||
### Display/YouTube Targeting
|
||||
|
||||
**Custom intent audiences:**
|
||||
- Based on recent search behavior
|
||||
- Create from your converting keywords
|
||||
- High intent, good for prospecting
|
||||
|
||||
**In-market audiences:**
|
||||
- People actively researching solutions
|
||||
- Pre-built by Google
|
||||
- Layer with demographics for precision
|
||||
|
||||
**Affinity audiences:**
|
||||
- Based on interests and habits
|
||||
- Better for awareness
|
||||
- Broad but can exclude irrelevant
|
||||
|
||||
**Customer match:**
|
||||
- Upload email lists
|
||||
- Retarget existing customers
|
||||
- Create lookalikes from best customers
|
||||
|
||||
**Similar/lookalike audiences:**
|
||||
- Based on your customer match lists
|
||||
- Expand reach while maintaining relevance
|
||||
- Best when source list is high-quality customers
|
||||
|
||||
---
|
||||
|
||||
## Meta Audiences
|
||||
|
||||
### Core Audiences (Interest/Demographic)
|
||||
|
||||
**Interest targeting tips:**
|
||||
- Layer interests with AND logic for precision
|
||||
- Use Audience Insights to research interests
|
||||
- Start broad, let algorithm optimize
|
||||
- Exclude existing customers always
|
||||
|
||||
**Demographic targeting:**
|
||||
- Age and gender (if product-specific)
|
||||
- Location (down to zip/postal code)
|
||||
- Language
|
||||
- Education and work (limited data now)
|
||||
|
||||
**Behavior targeting:**
|
||||
- Purchase behavior
|
||||
- Device usage
|
||||
- Travel patterns
|
||||
- Life events
|
||||
|
||||
### Custom Audiences
|
||||
|
||||
**Website visitors:**
|
||||
- All visitors (last 180 days max)
|
||||
- Specific page visitors
|
||||
- Time on site thresholds
|
||||
- Frequency (visited X times)
|
||||
|
||||
**Customer list:**
|
||||
- Upload emails/phone numbers
|
||||
- Match rate typically 30-70%
|
||||
- Refresh regularly for accuracy
|
||||
|
||||
**Engagement audiences:**
|
||||
- Video viewers (25%, 50%, 75%, 95%)
|
||||
- Page/profile engagers
|
||||
- Form openers
|
||||
- Instagram engagers
|
||||
|
||||
**App activity:**
|
||||
- App installers
|
||||
- In-app events
|
||||
- Purchase events
|
||||
|
||||
### Lookalike Audiences
|
||||
|
||||
**Source audience quality matters:**
|
||||
- Use high-LTV customers, not all customers
|
||||
- Purchasers > leads > all visitors
|
||||
- Minimum 100 source users, ideally 1,000+
|
||||
|
||||
**Size recommendations:**
|
||||
- 1% — most similar, smallest reach
|
||||
- 1-3% — good balance for most
|
||||
- 3-5% — broader, good for scale
|
||||
- 5-10% — very broad, awareness only
|
||||
|
||||
**Layering strategies:**
|
||||
- Lookalike + interest = more precision early
|
||||
- Test lookalike-only as you scale
|
||||
- Exclude the source audience
|
||||
|
||||
---
|
||||
|
||||
## LinkedIn Audiences
|
||||
|
||||
### Job-Based Targeting
|
||||
|
||||
**Job titles:**
|
||||
- Be specific (CMO vs. "Marketing")
|
||||
- LinkedIn normalizes titles, but verify
|
||||
- Stack related titles
|
||||
- Exclude irrelevant titles
|
||||
|
||||
**Job functions:**
|
||||
- Broader than titles
|
||||
- Combine with seniority level
|
||||
- Good for awareness campaigns
|
||||
|
||||
**Seniority levels:**
|
||||
- Entry, Senior, Manager, Director, VP, CXO, Partner
|
||||
- Layer with function for precision
|
||||
|
||||
**Skills:**
|
||||
- Self-reported, less reliable
|
||||
- Good for technical roles
|
||||
- Use as expansion layer
|
||||
|
||||
### Company-Based Targeting
|
||||
|
||||
**Company size:**
|
||||
- 1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5000+
|
||||
- Key filter for B2B
|
||||
|
||||
**Industry:**
|
||||
- Based on company classification
|
||||
- Can be broad, layer with other criteria
|
||||
|
||||
**Company names (ABM):**
|
||||
- Upload target account list
|
||||
- Minimum 300 companies recommended
|
||||
- Match rate varies
|
||||
|
||||
**Company growth rate:**
|
||||
- Hiring rapidly = budget available
|
||||
- Good signal for timing
|
||||
|
||||
### High-Performing Combinations
|
||||
|
||||
| Use Case | Targeting Combination |
|
||||
|----------|----------------------|
|
||||
| Enterprise sales | Company size 1000+ + VP/CXO + Industry |
|
||||
| SMB sales | Company size 11-200 + Manager/Director + Function |
|
||||
| Developer tools | Skills + Job function + Company type |
|
||||
| ABM campaigns | Company list + Decision-maker titles |
|
||||
| Broad awareness | Industry + Seniority + Geography |
|
||||
|
||||
---
|
||||
|
||||
## Twitter/X Audiences
|
||||
|
||||
### Targeting options:
|
||||
- Follower lookalikes (accounts similar to followers of X)
|
||||
- Interest categories
|
||||
- Keywords (in tweets)
|
||||
- Conversation topics
|
||||
- Events
|
||||
- Tailored audiences (your lists)
|
||||
|
||||
### Best practices:
|
||||
- Follower lookalikes of relevant accounts work well
|
||||
- Keyword targeting catches active conversations
|
||||
- Lower CPMs than LinkedIn/Meta
|
||||
- Less precise, better for awareness
|
||||
|
||||
---
|
||||
|
||||
## TikTok Audiences
|
||||
|
||||
### Targeting options:
|
||||
- Demographics (age, gender, location)
|
||||
- Interests (TikTok's categories)
|
||||
- Behaviors (video interactions)
|
||||
- Device (iOS/Android, connection type)
|
||||
- Custom audiences (pixel, customer file)
|
||||
- Lookalike audiences
|
||||
|
||||
### Best practices:
|
||||
- Younger skew (18-34 primarily)
|
||||
- Interest targeting is broad
|
||||
- Creative matters more than targeting
|
||||
- Let algorithm optimize with broad targeting
|
||||
|
||||
---
|
||||
|
||||
## Audience Size Guidelines
|
||||
|
||||
| Platform | Minimum Recommended | Ideal Range |
|
||||
|----------|-------------------|-------------|
|
||||
| Google Search | 1,000+ searches/mo | 5,000-50,000 |
|
||||
| Google Display | 100,000+ | 500K-5M |
|
||||
| Meta | 100,000+ | 500K-10M |
|
||||
| LinkedIn | 50,000+ | 100K-500K |
|
||||
| Twitter/X | 50,000+ | 100K-1M |
|
||||
| TikTok | 100,000+ | 1M+ |
|
||||
|
||||
Too narrow = expensive, slow learning
|
||||
Too broad = wasted spend, poor relevance
|
||||
|
||||
---
|
||||
|
||||
## Exclusion Strategy
|
||||
|
||||
Always exclude:
|
||||
- Existing customers (unless upsell)
|
||||
- Recent converters (7-14 days)
|
||||
- Bounced visitors (<10 sec)
|
||||
- Employees (by company or email list)
|
||||
- Irrelevant page visitors (careers, support)
|
||||
- Competitors (if identifiable)
|
||||
269
skills/paid-ads/references/platform-setup-checklists.md
Normal file
269
skills/paid-ads/references/platform-setup-checklists.md
Normal file
@@ -0,0 +1,269 @@
|
||||
# Platform Setup Checklists
|
||||
|
||||
Complete setup checklists for major ad platforms.
|
||||
|
||||
## Google Ads Setup
|
||||
|
||||
### Account Foundation
|
||||
|
||||
- [ ] Google Ads account created and verified
|
||||
- [ ] Billing information added
|
||||
- [ ] Time zone and currency set correctly
|
||||
- [ ] Account access granted to team members
|
||||
|
||||
### Conversion Tracking
|
||||
|
||||
- [ ] Google tag installed on all pages
|
||||
- [ ] Conversion actions created (purchase, lead, signup)
|
||||
- [ ] Conversion values assigned (if applicable)
|
||||
- [ ] Enhanced conversions enabled
|
||||
- [ ] Test conversions firing correctly
|
||||
- [ ] Import conversions from GA4 (optional)
|
||||
|
||||
### Analytics Integration
|
||||
|
||||
- [ ] Google Analytics 4 linked
|
||||
- [ ] Auto-tagging enabled
|
||||
- [ ] GA4 audiences available in Google Ads
|
||||
- [ ] Cross-domain tracking set up (if multiple domains)
|
||||
|
||||
### Audience Setup
|
||||
|
||||
- [ ] Remarketing tag verified
|
||||
- [ ] Website visitor audiences created:
|
||||
- All visitors (180 days)
|
||||
- Key page visitors (pricing, demo, features)
|
||||
- Converters (for exclusion)
|
||||
- [ ] Customer match lists uploaded
|
||||
- [ ] Similar audiences enabled
|
||||
|
||||
### Campaign Readiness
|
||||
|
||||
- [ ] Negative keyword lists created:
|
||||
- Universal negatives (free, jobs, careers, reviews, complaints)
|
||||
- Competitor negatives (if needed)
|
||||
- Irrelevant industry terms
|
||||
- [ ] Location targeting set (include/exclude)
|
||||
- [ ] Language targeting set
|
||||
- [ ] Ad schedule configured (if B2B, business hours)
|
||||
- [ ] Device bid adjustments considered
|
||||
|
||||
### Ad Extensions
|
||||
|
||||
- [ ] Sitelinks (4-6 relevant pages)
|
||||
- [ ] Callouts (key benefits, offers)
|
||||
- [ ] Structured snippets (features, types, services)
|
||||
- [ ] Call extension (if phone leads valuable)
|
||||
- [ ] Lead form extension (if using)
|
||||
- [ ] Price extensions (if applicable)
|
||||
- [ ] Image extensions (where available)
|
||||
|
||||
### Brand Protection
|
||||
|
||||
- [ ] Brand campaign running (protect branded terms)
|
||||
- [ ] Competitor campaigns considered
|
||||
- [ ] Brand terms in negative lists for non-brand campaigns
|
||||
|
||||
---
|
||||
|
||||
## Meta Ads Setup
|
||||
|
||||
### Business Manager Foundation
|
||||
|
||||
- [ ] Business Manager created
|
||||
- [ ] Business verified (if running certain ad types)
|
||||
- [ ] Ad account created within Business Manager
|
||||
- [ ] Payment method added
|
||||
- [ ] Team access configured with proper roles
|
||||
|
||||
### Pixel & Tracking
|
||||
|
||||
- [ ] Meta Pixel installed on all pages
|
||||
- [ ] Standard events configured:
|
||||
- PageView (automatic)
|
||||
- ViewContent (product/feature pages)
|
||||
- Lead (form submissions)
|
||||
- Purchase (conversions)
|
||||
- AddToCart (if e-commerce)
|
||||
- InitiateCheckout (if e-commerce)
|
||||
- [ ] Conversions API (CAPI) set up for server-side tracking
|
||||
- [ ] Event Match Quality score > 6
|
||||
- [ ] Test events in Events Manager
|
||||
|
||||
### Domain & Aggregated Events
|
||||
|
||||
- [ ] Domain verified in Business Manager
|
||||
- [ ] Aggregated Event Measurement configured
|
||||
- [ ] Top 8 events prioritized in order of importance
|
||||
- [ ] Web events prioritized for iOS 14+ tracking
|
||||
|
||||
### Audience Setup
|
||||
|
||||
- [ ] Custom audiences created:
|
||||
- Website visitors (all, 30/60/90/180 days)
|
||||
- Key page visitors
|
||||
- Video viewers (25%, 50%, 75%, 95%)
|
||||
- Page/Instagram engagers
|
||||
- Customer list uploaded
|
||||
- [ ] Lookalike audiences created (1%, 1-3%)
|
||||
- [ ] Saved audiences for common targeting
|
||||
|
||||
### Catalog (E-commerce)
|
||||
|
||||
- [ ] Product catalog connected
|
||||
- [ ] Product feed updating correctly
|
||||
- [ ] Catalog sales campaigns enabled
|
||||
- [ ] Dynamic product ads configured
|
||||
|
||||
### Creative Assets
|
||||
|
||||
- [ ] Images in correct sizes:
|
||||
- Feed: 1080x1080 (1:1)
|
||||
- Stories/Reels: 1080x1920 (9:16)
|
||||
- Landscape: 1200x628 (1.91:1)
|
||||
- [ ] Videos in correct formats
|
||||
- [ ] Ad copy variations ready
|
||||
- [ ] UTM parameters in all destination URLs
|
||||
|
||||
### Compliance
|
||||
|
||||
- [ ] Special Ad Categories declared (if housing, credit, employment, politics)
|
||||
- [ ] Landing page complies with Meta policies
|
||||
- [ ] No prohibited content in ads
|
||||
|
||||
---
|
||||
|
||||
## LinkedIn Ads Setup
|
||||
|
||||
### Campaign Manager Foundation
|
||||
|
||||
- [ ] Campaign Manager account created
|
||||
- [ ] Company Page connected
|
||||
- [ ] Billing information added
|
||||
- [ ] Team access configured
|
||||
|
||||
### Insight Tag & Tracking
|
||||
|
||||
- [ ] LinkedIn Insight Tag installed on all pages
|
||||
- [ ] Tag verified and firing
|
||||
- [ ] Conversion tracking configured:
|
||||
- URL-based conversions
|
||||
- Event-specific conversions
|
||||
- [ ] Conversion values set (if applicable)
|
||||
|
||||
### Audience Setup
|
||||
|
||||
- [ ] Matched Audiences created:
|
||||
- Website retargeting audiences
|
||||
- Company list uploaded (for ABM)
|
||||
- Contact list uploaded
|
||||
- [ ] Lookalike audiences created
|
||||
- [ ] Saved audiences for common targeting
|
||||
|
||||
### Lead Gen Forms (if using)
|
||||
|
||||
- [ ] Lead gen form templates created
|
||||
- [ ] Form fields selected (minimize for conversion)
|
||||
- [ ] Privacy policy URL added
|
||||
- [ ] Thank you message configured
|
||||
- [ ] CRM integration set up (or CSV export process)
|
||||
|
||||
### Document Ads (if using)
|
||||
|
||||
- [ ] Documents uploaded (PDF, PowerPoint)
|
||||
- [ ] Gating configured (full gate or preview)
|
||||
- [ ] Lead gen form connected
|
||||
|
||||
### Creative Assets
|
||||
|
||||
- [ ] Single image ads: 1200x627 (1.91:1) or 1080x1080 (1:1)
|
||||
- [ ] Carousel images ready
|
||||
- [ ] Video specs met (if using)
|
||||
- [ ] Ad copy within character limits:
|
||||
- Intro text: 600 max, 150 recommended
|
||||
- Headline: 200 max, 70 recommended
|
||||
|
||||
### Budget Considerations
|
||||
|
||||
- [ ] Budget realistic for LinkedIn CPCs ($8-15+ typical)
|
||||
- [ ] Audience size validated (50K+ recommended)
|
||||
- [ ] Daily vs. lifetime budget decided
|
||||
- [ ] Bid strategy selected
|
||||
|
||||
---
|
||||
|
||||
## Twitter/X Ads Setup
|
||||
|
||||
### Account Foundation
|
||||
|
||||
- [ ] Ads account created
|
||||
- [ ] Payment method added
|
||||
- [ ] Account verified (if required)
|
||||
|
||||
### Tracking
|
||||
|
||||
- [ ] Twitter Pixel installed
|
||||
- [ ] Conversion events created
|
||||
- [ ] Website tag verified
|
||||
|
||||
### Audience Setup
|
||||
|
||||
- [ ] Tailored audiences created:
|
||||
- Website visitors
|
||||
- Customer lists
|
||||
- [ ] Follower lookalikes identified
|
||||
- [ ] Interest and keyword targets researched
|
||||
|
||||
### Creative
|
||||
|
||||
- [ ] Tweet copy within 280 characters
|
||||
- [ ] Images: 1200x675 (1.91:1) or 1200x1200 (1:1)
|
||||
- [ ] Video specs met (if using)
|
||||
- [ ] Cards configured (website, app, etc.)
|
||||
|
||||
---
|
||||
|
||||
## TikTok Ads Setup
|
||||
|
||||
### Account Foundation
|
||||
|
||||
- [ ] TikTok Ads Manager account created
|
||||
- [ ] Business verification completed
|
||||
- [ ] Payment method added
|
||||
|
||||
### Pixel & Tracking
|
||||
|
||||
- [ ] TikTok Pixel installed
|
||||
- [ ] Events configured (ViewContent, Purchase, etc.)
|
||||
- [ ] Events API set up (recommended)
|
||||
|
||||
### Audience Setup
|
||||
|
||||
- [ ] Custom audiences created
|
||||
- [ ] Lookalike audiences created
|
||||
- [ ] Interest categories identified
|
||||
|
||||
### Creative
|
||||
|
||||
- [ ] Vertical video (9:16) ready
|
||||
- [ ] Native-feeling content (not too polished)
|
||||
- [ ] First 3 seconds are compelling hooks
|
||||
- [ ] Captions added (most watch without sound)
|
||||
- [ ] Music/sounds selected (licensed if needed)
|
||||
|
||||
---
|
||||
|
||||
## Universal Pre-Launch Checklist
|
||||
|
||||
Before launching any campaign:
|
||||
|
||||
- [ ] Conversion tracking tested with real conversion
|
||||
- [ ] Landing page loads fast (<3 sec)
|
||||
- [ ] Landing page mobile-friendly
|
||||
- [ ] UTM parameters working
|
||||
- [ ] Budget set correctly (daily vs. lifetime)
|
||||
- [ ] Start/end dates correct
|
||||
- [ ] Targeting matches intended audience
|
||||
- [ ] Ad creative approved
|
||||
- [ ] Team notified of launch
|
||||
- [ ] Reporting dashboard ready
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: paywall-upgrade-cro
|
||||
version: 1.0.0
|
||||
description: When the user wants to create or optimize in-app paywalls, upgrade screens, upsell modals, or feature gates. Also use when the user mentions "paywall," "upgrade screen," "upgrade modal," "upsell," "feature gate," "convert free to paid," "freemium conversion," "trial expiration screen," "limit reached screen," "plan upgrade prompt," or "in-app pricing." Distinct from public pricing pages (see page-cro) — this skill focuses on in-product upgrade moments where the user has already experienced value.
|
||||
---
|
||||
|
||||
@@ -9,25 +10,16 @@ You are an expert in in-app paywalls and upgrade flows. Your goal is to convert
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before providing recommendations, understand:
|
||||
|
||||
1. **Upgrade Context**
|
||||
- Freemium → Paid conversion
|
||||
- Trial → Paid conversion
|
||||
- Tier upgrade (Basic → Pro)
|
||||
- Feature-specific upsell
|
||||
- Usage limit upsell
|
||||
1. **Upgrade Context** - Freemium → Paid? Trial → Paid? Tier upgrade? Feature upsell? Usage limit?
|
||||
|
||||
2. **Product Model**
|
||||
- What's free forever?
|
||||
- What's behind the paywall?
|
||||
- What triggers upgrade prompts?
|
||||
- What's the current conversion rate?
|
||||
2. **Product Model** - What's free? What's behind paywall? What triggers prompts? Current conversion rate?
|
||||
|
||||
3. **User Journey**
|
||||
- At what point does this appear?
|
||||
- What have they experienced already?
|
||||
- What are they trying to do when blocked?
|
||||
3. **User Journey** - When does this appear? What have they experienced? What are they trying to do?
|
||||
|
||||
---
|
||||
|
||||
@@ -35,7 +27,7 @@ Before providing recommendations, understand:
|
||||
|
||||
### 1. Value Before Ask
|
||||
- User should have experienced real value first
|
||||
- The upgrade should feel like a natural next step
|
||||
- Upgrade should feel like natural next step
|
||||
- Timing: After "aha moment," not before
|
||||
|
||||
### 2. Show, Don't Just Tell
|
||||
@@ -46,7 +38,6 @@ Before providing recommendations, understand:
|
||||
### 3. Friction-Free Path
|
||||
- Easy to upgrade when ready
|
||||
- Don't make them hunt for pricing
|
||||
- Remove barriers to conversion
|
||||
|
||||
### 4. Respect the No
|
||||
- Don't trap or pressure
|
||||
@@ -66,84 +57,45 @@ When user clicks a paid-only feature:
|
||||
|
||||
### Usage Limits
|
||||
When user hits a limit:
|
||||
- Clear indication of what limit was reached
|
||||
- Clear indication of limit reached
|
||||
- Show what upgrading provides
|
||||
- Option to buy more without full upgrade
|
||||
- Don't block abruptly
|
||||
|
||||
### Trial Expiration
|
||||
When trial is ending:
|
||||
- Early warnings (7 days, 3 days, 1 day)
|
||||
- Early warnings (7, 3, 1 day)
|
||||
- Clear "what happens" on expiration
|
||||
- Easy re-activation if expired
|
||||
- Summarize value received
|
||||
|
||||
### Time-Based Prompts
|
||||
After X days/sessions of free use:
|
||||
After X days of free use:
|
||||
- Gentle upgrade reminder
|
||||
- Highlight unused paid features
|
||||
- Not intrusive—banner or subtle modal
|
||||
- Easy to dismiss
|
||||
|
||||
### Context-Triggered
|
||||
When behavior indicates upgrade fit:
|
||||
- Power users who'd benefit
|
||||
- Teams using solo features
|
||||
- Heavy usage approaching limits
|
||||
- Inviting teammates
|
||||
|
||||
---
|
||||
|
||||
## Paywall Screen Components
|
||||
|
||||
### 1. Headline
|
||||
Focus on what they get, not what they pay:
|
||||
- "Unlock [Feature] to [Benefit]"
|
||||
- "Get more [value] with [Plan]"
|
||||
- Not: "Upgrade to Pro for $X/month"
|
||||
1. **Headline** - Focus on what they get: "Unlock [Feature] to [Benefit]"
|
||||
|
||||
### 2. Value Demonstration
|
||||
Show what they're missing:
|
||||
- Preview of the feature in action
|
||||
- Before/after comparison
|
||||
- "With Pro, you could..." examples
|
||||
- Specific to their use case if possible
|
||||
2. **Value Demonstration** - Preview, before/after, "With Pro you could..."
|
||||
|
||||
### 3. Feature Comparison
|
||||
If showing tiers:
|
||||
- Highlight key differences
|
||||
- Current plan clearly marked
|
||||
- Recommended plan emphasized
|
||||
- Focus on outcomes, not feature lists
|
||||
3. **Feature Comparison** - Highlight key differences, current plan marked
|
||||
|
||||
### 4. Pricing
|
||||
- Clear, simple pricing
|
||||
- Annual vs. monthly options
|
||||
- Per-seat clarity if applicable
|
||||
- Any trials or guarantees
|
||||
4. **Pricing** - Clear, simple, annual vs. monthly options
|
||||
|
||||
### 5. Social Proof (Optional)
|
||||
- Customer quotes about the upgrade
|
||||
- "X teams use this feature"
|
||||
- Success metrics from upgraded users
|
||||
5. **Social Proof** - Customer quotes, "X teams use this"
|
||||
|
||||
### 6. CTA
|
||||
- Specific: "Upgrade to Pro" not "Upgrade"
|
||||
- Value-oriented: "Start Getting [Benefit]"
|
||||
- If trial: "Start Free Trial"
|
||||
6. **CTA** - Specific and value-oriented: "Start Getting [Benefit]"
|
||||
|
||||
### 7. Escape Hatch
|
||||
- Clear "Not now" or "Continue with Free"
|
||||
- Don't make them feel bad
|
||||
- "Maybe later" vs. "No, I'll stay limited"
|
||||
7. **Escape Hatch** - Clear "Not now" or "Continue with Free"
|
||||
|
||||
---
|
||||
|
||||
## Specific Paywall Types
|
||||
|
||||
### Feature Lock Paywall
|
||||
When clicking a paid feature:
|
||||
|
||||
```
|
||||
[Lock Icon]
|
||||
This feature is available on Pro
|
||||
@@ -151,120 +103,57 @@ This feature is available on Pro
|
||||
[Feature preview/screenshot]
|
||||
|
||||
[Feature name] helps you [benefit]:
|
||||
• [Specific capability]
|
||||
• [Specific capability]
|
||||
• [Specific capability]
|
||||
• [Capability]
|
||||
• [Capability]
|
||||
|
||||
[Upgrade to Pro - $X/mo]
|
||||
[Maybe Later]
|
||||
```
|
||||
|
||||
### Usage Limit Paywall
|
||||
When hitting a limit:
|
||||
|
||||
```
|
||||
You've reached your free limit
|
||||
|
||||
[Visual: Progress bar at 100%]
|
||||
[Progress bar at 100%]
|
||||
|
||||
Free plan: 3 projects
|
||||
Pro plan: Unlimited projects
|
||||
|
||||
You're active! Upgrade to keep building.
|
||||
Free: 3 projects | Pro: Unlimited
|
||||
|
||||
[Upgrade to Pro] [Delete a project]
|
||||
```
|
||||
|
||||
### Trial Expiration Paywall
|
||||
When trial is ending:
|
||||
|
||||
```
|
||||
Your trial ends in 3 days
|
||||
|
||||
What you'll lose:
|
||||
• [Feature they've used]
|
||||
• [Feature they've used]
|
||||
• [Data/work they've created]
|
||||
• [Feature used]
|
||||
• [Data created]
|
||||
|
||||
What you've accomplished:
|
||||
• Created X projects
|
||||
• [Specific value metric]
|
||||
|
||||
[Continue with Pro - $X/mo]
|
||||
[Remind me later] [Downgrade to Free]
|
||||
[Continue with Pro]
|
||||
[Remind me later] [Downgrade]
|
||||
```
|
||||
|
||||
### Soft Upgrade Prompt
|
||||
Non-blocking suggestion:
|
||||
|
||||
```
|
||||
[Banner or subtle modal]
|
||||
|
||||
You've been using [Product] for 2 weeks!
|
||||
Teams like yours get X% more [value] with Pro.
|
||||
|
||||
[See Pro Features] [Dismiss]
|
||||
```
|
||||
|
||||
### Team/Seat Upgrade
|
||||
When adding users:
|
||||
|
||||
```
|
||||
Invite your team
|
||||
|
||||
Your plan: Solo (1 user)
|
||||
Team plans start at $X/user
|
||||
|
||||
• Shared projects
|
||||
• Collaboration features
|
||||
• Admin controls
|
||||
|
||||
[Upgrade to Team] [Continue Solo]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Mobile Paywall Patterns
|
||||
|
||||
### iOS/Android Conventions
|
||||
- System-like styling builds trust
|
||||
- Standard paywall patterns users recognize
|
||||
- Free trial emphasis common
|
||||
- Subscription terminology they expect
|
||||
|
||||
### Mobile-Specific UX
|
||||
- Full-screen often acceptable
|
||||
- Swipe to dismiss
|
||||
- Large tap targets
|
||||
- Plan selection with clear visual state
|
||||
|
||||
### App Store Considerations
|
||||
- Clear pricing display
|
||||
- Subscription terms visible
|
||||
- Restore purchases option
|
||||
- Meet review guidelines
|
||||
|
||||
---
|
||||
|
||||
## Timing and Frequency
|
||||
|
||||
### When to Show
|
||||
- **Best**: After value moment, before frustration
|
||||
- After value moment, before frustration
|
||||
- After activation/aha moment
|
||||
- When hitting genuine limits
|
||||
- When using adjacent-to-paid features
|
||||
|
||||
### When NOT to Show
|
||||
- During onboarding (too early)
|
||||
- When they're in a flow
|
||||
- Repeatedly after dismissal
|
||||
- Before they understand the product
|
||||
|
||||
### Frequency Rules
|
||||
- Limit to X per session
|
||||
- Limit per session
|
||||
- Cool-down after dismiss (days, not hours)
|
||||
- Escalate urgency appropriately (trial end)
|
||||
- Track annoyance signals (rage clicks, churn)
|
||||
- Track annoyance signals
|
||||
|
||||
---
|
||||
|
||||
@@ -272,101 +161,34 @@ Team plans start at $X/user
|
||||
|
||||
### From Paywall to Payment
|
||||
- Minimize steps
|
||||
- Keep them in-context if possible
|
||||
- Keep in-context if possible
|
||||
- Pre-fill known information
|
||||
- Show security signals
|
||||
|
||||
### Plan Selection
|
||||
- Default to recommended plan
|
||||
- Annual vs. monthly clear trade-off
|
||||
- Feature comparison if helpful
|
||||
- FAQ or objection handling nearby
|
||||
|
||||
### Checkout
|
||||
- Minimal fields
|
||||
- Multiple payment methods
|
||||
- Trial terms clear
|
||||
- Easy cancellation visible (builds trust)
|
||||
|
||||
### Post-Upgrade
|
||||
- Immediate access to features
|
||||
- Confirmation and receipt
|
||||
- Guide to new features
|
||||
- Celebrate the upgrade
|
||||
|
||||
---
|
||||
|
||||
## A/B Testing Paywalls
|
||||
## A/B Testing
|
||||
|
||||
### What to Test
|
||||
- Trigger timing (earlier vs. later)
|
||||
- Trigger type (feature gate vs. soft prompt)
|
||||
- Trigger timing
|
||||
- Headline/copy variations
|
||||
- Price presentation
|
||||
- Trial length
|
||||
- Feature emphasis
|
||||
- Social proof presence
|
||||
- Design/layout
|
||||
|
||||
### Metrics to Track
|
||||
- Paywall impression rate
|
||||
- Click-through to upgrade
|
||||
- Upgrade completion rate
|
||||
- Completion rate
|
||||
- Revenue per user
|
||||
- Churn rate post-upgrade
|
||||
- Time to upgrade
|
||||
|
||||
---
|
||||
|
||||
## Output Format
|
||||
|
||||
### Paywall Design
|
||||
For each paywall:
|
||||
- **Trigger**: When it appears
|
||||
- **Context**: What user was doing
|
||||
- **Type**: Feature gate, limit, trial, etc.
|
||||
- **Copy**: Full copy with headline, body, CTA
|
||||
- **Design notes**: Layout, visual elements
|
||||
- **Mobile**: Mobile-specific considerations
|
||||
- **Frequency**: How often shown
|
||||
- **Exit path**: How to dismiss
|
||||
|
||||
### Upgrade Flow
|
||||
- Step-by-step screens
|
||||
- Copy for each step
|
||||
- Decision points
|
||||
- Success state
|
||||
|
||||
### Metrics Plan
|
||||
What to measure and expected benchmarks
|
||||
|
||||
---
|
||||
|
||||
## Common Patterns by Business Model
|
||||
|
||||
### Freemium SaaS
|
||||
- Generous free tier to build habit
|
||||
- Feature gates for power features
|
||||
- Usage limits for volume
|
||||
- Soft prompts for heavy free users
|
||||
|
||||
### Free Trial
|
||||
- Trial countdown prominent
|
||||
- Value summary at expiration
|
||||
- Grace period or easy restart
|
||||
- Win-back for expired trials
|
||||
|
||||
### Usage-Based
|
||||
- Clear usage tracking
|
||||
- Alerts at thresholds (75%, 100%)
|
||||
- Easy to add more without plan change
|
||||
- Volume discounts visible
|
||||
|
||||
### Per-Seat
|
||||
- Friction at invitation
|
||||
- Team feature highlights
|
||||
- Volume pricing clear
|
||||
- Admin value proposition
|
||||
**For comprehensive experiment ideas**: See [references/experiments.md](references/experiments.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -375,184 +197,18 @@ What to measure and expected benchmarks
|
||||
### Dark Patterns
|
||||
- Hiding the close button
|
||||
- Confusing plan selection
|
||||
- Buried downgrade option
|
||||
- Misleading urgency
|
||||
- Guilt-trip copy
|
||||
|
||||
### Conversion Killers
|
||||
- Asking before value delivered
|
||||
- Too frequent prompts
|
||||
- Blocking critical flows
|
||||
- Unclear pricing
|
||||
- Complicated upgrade process
|
||||
|
||||
### Trust Destroyers
|
||||
- Surprise charges
|
||||
- Hard-to-cancel subscriptions
|
||||
- Bait and switch
|
||||
- Data hostage tactics
|
||||
|
||||
---
|
||||
|
||||
## Experiment Ideas
|
||||
## Task-Specific Questions
|
||||
|
||||
### Trigger & Timing Experiments
|
||||
|
||||
**When to Show**
|
||||
- Test trigger timing: after aha moment vs. at feature attempt
|
||||
- Early trial reminder (7 days) vs. late reminder (1 day before)
|
||||
- Show after X actions completed vs. after X days
|
||||
- Test soft prompts at different engagement thresholds
|
||||
- Trigger based on usage patterns vs. time-based only
|
||||
|
||||
**Trigger Type**
|
||||
- Hard gate (can't proceed) vs. soft gate (preview + prompt)
|
||||
- Feature lock vs. usage limit as primary trigger
|
||||
- In-context modal vs. dedicated upgrade page
|
||||
- Banner reminder vs. modal prompt
|
||||
- Exit-intent on free plan pages
|
||||
|
||||
---
|
||||
|
||||
### Paywall Design Experiments
|
||||
|
||||
**Layout & Format**
|
||||
- Full-screen paywall vs. modal overlay
|
||||
- Minimal paywall (CTA-focused) vs. feature-rich paywall
|
||||
- Single plan display vs. plan comparison
|
||||
- Image/preview included vs. text-only
|
||||
- Vertical layout vs. horizontal layout on desktop
|
||||
|
||||
**Value Presentation**
|
||||
- Feature list vs. benefit statements
|
||||
- Show what they'll lose (loss aversion) vs. what they'll gain
|
||||
- Personalized value summary based on usage
|
||||
- Before/after demonstration
|
||||
- ROI calculator or value quantification
|
||||
|
||||
**Visual Elements**
|
||||
- Add product screenshots or previews
|
||||
- Include short demo video or GIF
|
||||
- Test illustration vs. product imagery
|
||||
- Animated vs. static paywall
|
||||
- Progress visualization (what they've accomplished)
|
||||
|
||||
---
|
||||
|
||||
### Pricing Presentation Experiments
|
||||
|
||||
**Price Display**
|
||||
- Show monthly vs. annual vs. both with toggle
|
||||
- Highlight savings for annual ($ amount vs. % off)
|
||||
- Price per day framing ("Less than a coffee")
|
||||
- Show price after trial vs. emphasize "Start Free"
|
||||
- Display price prominently vs. de-emphasize until click
|
||||
|
||||
**Plan Options**
|
||||
- Single recommended plan vs. multiple tiers
|
||||
- Add "Most Popular" badge to target plan
|
||||
- Test number of visible plans (2 vs. 3)
|
||||
- Show enterprise/custom tier vs. hide it
|
||||
- Include one-time purchase option alongside subscription
|
||||
|
||||
**Discounts & Offers**
|
||||
- First month/year discount for conversion
|
||||
- Limited-time upgrade offer with countdown
|
||||
- Loyalty discount based on free usage duration
|
||||
- Bundle discount for annual commitment
|
||||
- Referral discount for social proof
|
||||
|
||||
---
|
||||
|
||||
### Copy & Messaging Experiments
|
||||
|
||||
**Headlines**
|
||||
- Benefit-focused ("Unlock unlimited projects") vs. feature-focused ("Get Pro features")
|
||||
- Question format ("Ready to do more?") vs. statement format
|
||||
- Urgency-based ("Don't lose your work") vs. value-based
|
||||
- Personalized headline with user's name or usage data
|
||||
- Social proof headline ("Join 10,000+ Pro users")
|
||||
|
||||
**CTAs**
|
||||
- "Start Free Trial" vs. "Upgrade Now" vs. "Continue with Pro"
|
||||
- First person ("Start My Trial") vs. second person ("Start Your Trial")
|
||||
- Value-specific ("Unlock Unlimited") vs. generic ("Upgrade")
|
||||
- Add urgency ("Upgrade Today") vs. no pressure
|
||||
- Include price in CTA vs. separate price display
|
||||
|
||||
**Objection Handling**
|
||||
- Add money-back guarantee messaging
|
||||
- Show "Cancel anytime" prominently
|
||||
- Include FAQ on paywall
|
||||
- Address specific objections based on feature gated
|
||||
- Add chat/support option on paywall
|
||||
|
||||
---
|
||||
|
||||
### Trial & Conversion Experiments
|
||||
|
||||
**Trial Structure**
|
||||
- 7-day vs. 14-day vs. 30-day trial length
|
||||
- Credit card required vs. not required for trial
|
||||
- Full-access trial vs. limited feature trial
|
||||
- Trial extension offer for engaged users
|
||||
- Second trial offer for expired/churned users
|
||||
|
||||
**Trial Expiration**
|
||||
- Countdown timer visibility (always vs. near end)
|
||||
- Email reminders: frequency and timing
|
||||
- Grace period after expiration vs. immediate downgrade
|
||||
- "Last chance" offer with discount
|
||||
- Pause option vs. immediate cancellation
|
||||
|
||||
**Upgrade Path**
|
||||
- One-click upgrade from paywall vs. separate checkout
|
||||
- Pre-filled payment info for returning users
|
||||
- Multiple payment methods offered
|
||||
- Quarterly plan option alongside monthly/annual
|
||||
- Team invite flow for solo-to-team conversion
|
||||
|
||||
---
|
||||
|
||||
### Personalization Experiments
|
||||
|
||||
**Usage-Based**
|
||||
- Personalize paywall copy based on features used
|
||||
- Highlight most-used premium features
|
||||
- Show usage stats ("You've created 50 projects")
|
||||
- Recommend plan based on behavior patterns
|
||||
- Dynamic feature emphasis based on user segment
|
||||
|
||||
**Segment-Specific**
|
||||
- Different paywall for power users vs. casual users
|
||||
- B2B vs. B2C messaging variations
|
||||
- Industry-specific value propositions
|
||||
- Role-based feature highlighting
|
||||
- Traffic source-based messaging
|
||||
|
||||
---
|
||||
|
||||
### Frequency & UX Experiments
|
||||
|
||||
**Frequency Capping**
|
||||
- Test number of prompts per session
|
||||
- Cool-down period after dismiss (hours vs. days)
|
||||
- Escalating urgency over time vs. consistent messaging
|
||||
- Once per feature vs. consolidated prompts
|
||||
- Re-show rules after major engagement
|
||||
|
||||
**Dismiss Behavior**
|
||||
- "Maybe later" vs. "No thanks" vs. "Remind me tomorrow"
|
||||
- Ask reason for declining
|
||||
- Offer alternative (lower tier, annual discount)
|
||||
- Exit survey on dismiss
|
||||
- Friendly vs. neutral decline copy
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
|
||||
If you need more context:
|
||||
1. What's your current free → paid conversion rate?
|
||||
2. What triggers upgrade prompts today?
|
||||
3. What features are behind the paywall?
|
||||
@@ -567,4 +223,3 @@ If you need more context:
|
||||
- **page-cro**: For public pricing page optimization
|
||||
- **onboarding-cro**: For driving to aha moment before upgrade
|
||||
- **ab-test-setup**: For testing paywall variations
|
||||
- **analytics-tracking**: For measuring upgrade funnel
|
||||
|
||||
155
skills/paywall-upgrade-cro/references/experiments.md
Normal file
155
skills/paywall-upgrade-cro/references/experiments.md
Normal file
@@ -0,0 +1,155 @@
|
||||
# Paywall Experiment Ideas
|
||||
|
||||
Comprehensive list of A/B tests and experiments for paywall optimization.
|
||||
|
||||
## Trigger & Timing Experiments
|
||||
|
||||
### When to Show
|
||||
- Test trigger timing: after aha moment vs. at feature attempt
|
||||
- Early trial reminder (7 days) vs. late reminder (1 day before)
|
||||
- Show after X actions completed vs. after X days
|
||||
- Test soft prompts at different engagement thresholds
|
||||
- Trigger based on usage patterns vs. time-based only
|
||||
|
||||
### Trigger Type
|
||||
- Hard gate (can't proceed) vs. soft gate (preview + prompt)
|
||||
- Feature lock vs. usage limit as primary trigger
|
||||
- In-context modal vs. dedicated upgrade page
|
||||
- Banner reminder vs. modal prompt
|
||||
- Exit-intent on free plan pages
|
||||
|
||||
---
|
||||
|
||||
## Paywall Design Experiments
|
||||
|
||||
### Layout & Format
|
||||
- Full-screen paywall vs. modal overlay
|
||||
- Minimal paywall (CTA-focused) vs. feature-rich paywall
|
||||
- Single plan display vs. plan comparison
|
||||
- Image/preview included vs. text-only
|
||||
- Vertical layout vs. horizontal layout on desktop
|
||||
|
||||
### Value Presentation
|
||||
- Feature list vs. benefit statements
|
||||
- Show what they'll lose (loss aversion) vs. what they'll gain
|
||||
- Personalized value summary based on usage
|
||||
- Before/after demonstration
|
||||
- ROI calculator or value quantification
|
||||
|
||||
### Visual Elements
|
||||
- Add product screenshots or previews
|
||||
- Include short demo video or GIF
|
||||
- Test illustration vs. product imagery
|
||||
- Animated vs. static paywall
|
||||
- Progress visualization (what they've accomplished)
|
||||
|
||||
---
|
||||
|
||||
## Pricing Presentation Experiments
|
||||
|
||||
### Price Display
|
||||
- Show monthly vs. annual vs. both with toggle
|
||||
- Highlight savings for annual ($ amount vs. % off)
|
||||
- Price per day framing ("Less than a coffee")
|
||||
- Show price after trial vs. emphasize "Start Free"
|
||||
- Display price prominently vs. de-emphasize until click
|
||||
|
||||
### Plan Options
|
||||
- Single recommended plan vs. multiple tiers
|
||||
- Add "Most Popular" badge to target plan
|
||||
- Test number of visible plans (2 vs. 3)
|
||||
- Show enterprise/custom tier vs. hide it
|
||||
- Include one-time purchase option alongside subscription
|
||||
|
||||
### Discounts & Offers
|
||||
- First month/year discount for conversion
|
||||
- Limited-time upgrade offer with countdown
|
||||
- Loyalty discount based on free usage duration
|
||||
- Bundle discount for annual commitment
|
||||
- Referral discount for social proof
|
||||
|
||||
---
|
||||
|
||||
## Copy & Messaging Experiments
|
||||
|
||||
### Headlines
|
||||
- Benefit-focused ("Unlock unlimited projects") vs. feature-focused ("Get Pro features")
|
||||
- Question format ("Ready to do more?") vs. statement format
|
||||
- Urgency-based ("Don't lose your work") vs. value-based
|
||||
- Personalized headline with user's name or usage data
|
||||
- Social proof headline ("Join 10,000+ Pro users")
|
||||
|
||||
### CTAs
|
||||
- "Start Free Trial" vs. "Upgrade Now" vs. "Continue with Pro"
|
||||
- First person ("Start My Trial") vs. second person ("Start Your Trial")
|
||||
- Value-specific ("Unlock Unlimited") vs. generic ("Upgrade")
|
||||
- Add urgency ("Upgrade Today") vs. no pressure
|
||||
- Include price in CTA vs. separate price display
|
||||
|
||||
### Objection Handling
|
||||
- Add money-back guarantee messaging
|
||||
- Show "Cancel anytime" prominently
|
||||
- Include FAQ on paywall
|
||||
- Address specific objections based on feature gated
|
||||
- Add chat/support option on paywall
|
||||
|
||||
---
|
||||
|
||||
## Trial & Conversion Experiments
|
||||
|
||||
### Trial Structure
|
||||
- 7-day vs. 14-day vs. 30-day trial length
|
||||
- Credit card required vs. not required for trial
|
||||
- Full-access trial vs. limited feature trial
|
||||
- Trial extension offer for engaged users
|
||||
- Second trial offer for expired/churned users
|
||||
|
||||
### Trial Expiration
|
||||
- Countdown timer visibility (always vs. near end)
|
||||
- Email reminders: frequency and timing
|
||||
- Grace period after expiration vs. immediate downgrade
|
||||
- "Last chance" offer with discount
|
||||
- Pause option vs. immediate cancellation
|
||||
|
||||
### Upgrade Path
|
||||
- One-click upgrade from paywall vs. separate checkout
|
||||
- Pre-filled payment info for returning users
|
||||
- Multiple payment methods offered
|
||||
- Quarterly plan option alongside monthly/annual
|
||||
- Team invite flow for solo-to-team conversion
|
||||
|
||||
---
|
||||
|
||||
## Personalization Experiments
|
||||
|
||||
### Usage-Based
|
||||
- Personalize paywall copy based on features used
|
||||
- Highlight most-used premium features
|
||||
- Show usage stats ("You've created 50 projects")
|
||||
- Recommend plan based on behavior patterns
|
||||
- Dynamic feature emphasis based on user segment
|
||||
|
||||
### Segment-Specific
|
||||
- Different paywall for power users vs. casual users
|
||||
- B2B vs. B2C messaging variations
|
||||
- Industry-specific value propositions
|
||||
- Role-based feature highlighting
|
||||
- Traffic source-based messaging
|
||||
|
||||
---
|
||||
|
||||
## Frequency & UX Experiments
|
||||
|
||||
### Frequency Capping
|
||||
- Test number of prompts per session
|
||||
- Cool-down period after dismiss (hours vs. days)
|
||||
- Escalating urgency over time vs. consistent messaging
|
||||
- Once per feature vs. consolidated prompts
|
||||
- Re-show rules after major engagement
|
||||
|
||||
### Dismiss Behavior
|
||||
- "Maybe later" vs. "No thanks" vs. "Remind me tomorrow"
|
||||
- Ask reason for declining
|
||||
- Offer alternative (lower tier, annual discount)
|
||||
- Exit survey on dismiss
|
||||
- Friendly vs. neutral decline copy
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: popup-cro
|
||||
version: 1.0.0
|
||||
description: When the user wants to create or optimize popups, modals, overlays, slide-ins, or banners for conversion purposes. Also use when the user mentions "exit intent," "popup conversions," "modal optimization," "lead capture popup," "email popup," "announcement banner," or "overlay." For forms outside of popups, see form-cro. For general page conversion optimization, see page-cro.
|
||||
---
|
||||
|
||||
@@ -9,6 +10,9 @@ You are an expert in popup and modal optimization. Your goal is to create popups
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before providing recommendations, understand:
|
||||
|
||||
1. **Popup Purpose**
|
||||
@@ -429,9 +433,8 @@ Ideas to A/B test with expected outcomes
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What's the primary goal for this popup?
|
||||
2. What's your current popup performance (if any)?
|
||||
3. What traffic sources are you optimizing for?
|
||||
|
||||
@@ -1,14 +1,18 @@
|
||||
---
|
||||
name: pricing-strategy
|
||||
version: 1.0.0
|
||||
description: "When the user wants help with pricing decisions, packaging, or monetization strategy. Also use when the user mentions 'pricing,' 'pricing tiers,' 'freemium,' 'free trial,' 'packaging,' 'price increase,' 'value metric,' 'Van Westendorp,' 'willingness to pay,' or 'monetization.' This skill covers pricing research, tier structure, and packaging strategy."
|
||||
---
|
||||
|
||||
# Pricing Strategy
|
||||
|
||||
You are an expert in SaaS pricing and monetization strategy with access to pricing research data and analysis tools. Your goal is to help design pricing that captures value, drives growth, and aligns with customer willingness to pay.
|
||||
You are an expert in SaaS pricing and monetization strategy. Your goal is to help design pricing that captures value, drives growth, and aligns with customer willingness to pay.
|
||||
|
||||
## Before Starting
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Gather this context (ask if not provided):
|
||||
|
||||
### 1. Business Context
|
||||
@@ -21,18 +25,15 @@ Gather this context (ask if not provided):
|
||||
- What's the primary value you deliver?
|
||||
- What alternatives do customers consider?
|
||||
- How do competitors price?
|
||||
- What makes you different/better?
|
||||
|
||||
### 3. Current Performance
|
||||
- What's your current conversion rate?
|
||||
- What's your average revenue per user (ARPU)?
|
||||
- What's your churn rate?
|
||||
- What's your ARPU and churn rate?
|
||||
- Any feedback on pricing from customers/prospects?
|
||||
|
||||
### 4. Goals
|
||||
- Are you optimizing for growth, revenue, or profitability?
|
||||
- Are you trying to move upmarket or expand downmarket?
|
||||
- Any pricing changes you're considering?
|
||||
- Optimizing for growth, revenue, or profitability?
|
||||
- Moving upmarket or expanding downmarket?
|
||||
|
||||
---
|
||||
|
||||
@@ -40,8 +41,6 @@ Gather this context (ask if not provided):
|
||||
|
||||
### The Three Pricing Axes
|
||||
|
||||
Every pricing decision involves three dimensions:
|
||||
|
||||
**1. Packaging** — What's included at each tier?
|
||||
- Features, limits, support level
|
||||
- How tiers differ from each other
|
||||
@@ -52,141 +51,18 @@ Every pricing decision involves three dimensions:
|
||||
|
||||
**3. Price Point** — How much do you charge?
|
||||
- The actual dollar amounts
|
||||
- The perceived value vs. cost
|
||||
- Perceived value vs. cost
|
||||
|
||||
### Value-Based Pricing Framework
|
||||
### Value-Based Pricing
|
||||
|
||||
Price should be based on value delivered, not cost to serve:
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────┐
|
||||
│ │
|
||||
│ Customer's perceived value of your solution │
|
||||
│ ────────────────────────────────────────────── $1000 │
|
||||
│ │
|
||||
│ ↑ Value captured (your opportunity) │
|
||||
│ │
|
||||
│ Your price │
|
||||
│ ────────────────────────────────────────────── $500 │
|
||||
│ │
|
||||
│ ↑ Consumer surplus (value customer keeps) │
|
||||
│ │
|
||||
│ Next best alternative │
|
||||
│ ────────────────────────────────────────────── $300 │
|
||||
│ │
|
||||
│ ↑ Differentiation value │
|
||||
│ │
|
||||
│ Your cost to serve │
|
||||
│ ────────────────────────────────────────────── $50 │
|
||||
│ │
|
||||
└─────────────────────────────────────────────────────────┘
|
||||
```
|
||||
- **Customer's perceived value** — The ceiling
|
||||
- **Your price** — Between alternatives and perceived value
|
||||
- **Next best alternative** — The floor for differentiation
|
||||
- **Your cost to serve** — Only a baseline, not the basis
|
||||
|
||||
**Key insight:** Price between the next best alternative and perceived value. Cost is a floor, not a basis.
|
||||
|
||||
---
|
||||
|
||||
## Pricing Research Methods
|
||||
|
||||
### Van Westendorp Price Sensitivity Meter
|
||||
|
||||
The Van Westendorp survey identifies the acceptable price range for your product.
|
||||
|
||||
**The Four Questions:**
|
||||
|
||||
Ask each respondent:
|
||||
1. "At what price would you consider [product] to be so expensive that you would not consider buying it?" (Too expensive)
|
||||
2. "At what price would you consider [product] to be priced so low that you would question its quality?" (Too cheap)
|
||||
3. "At what price would you consider [product] to be starting to get expensive, but you still might consider it?" (Expensive/high side)
|
||||
4. "At what price would you consider [product] to be a bargain—a great buy for the money?" (Cheap/good value)
|
||||
|
||||
**How to Analyze:**
|
||||
|
||||
1. Plot cumulative distributions for each question
|
||||
2. Find the intersections:
|
||||
- **Point of Marginal Cheapness (PMC):** "Too cheap" crosses "Expensive"
|
||||
- **Point of Marginal Expensiveness (PME):** "Too expensive" crosses "Cheap"
|
||||
- **Optimal Price Point (OPP):** "Too cheap" crosses "Too expensive"
|
||||
- **Indifference Price Point (IDP):** "Expensive" crosses "Cheap"
|
||||
|
||||
**The acceptable price range:** PMC to PME
|
||||
**Optimal pricing zone:** Between OPP and IDP
|
||||
|
||||
**Survey Tips:**
|
||||
- Need 100-300 respondents for reliable data
|
||||
- Segment by persona (different willingness to pay)
|
||||
- Use realistic product descriptions
|
||||
- Consider adding purchase intent questions
|
||||
|
||||
**Sample Van Westendorp Analysis Output:**
|
||||
|
||||
```
|
||||
Price Sensitivity Analysis Results:
|
||||
─────────────────────────────────
|
||||
Point of Marginal Cheapness: $29/mo
|
||||
Optimal Price Point: $49/mo
|
||||
Indifference Price Point: $59/mo
|
||||
Point of Marginal Expensiveness: $79/mo
|
||||
|
||||
Recommended range: $49-59/mo
|
||||
Current price: $39/mo (below optimal)
|
||||
Opportunity: 25-50% price increase without significant demand impact
|
||||
```
|
||||
|
||||
### MaxDiff Analysis (Best-Worst Scaling)
|
||||
|
||||
MaxDiff identifies which features customers value most, informing packaging decisions.
|
||||
|
||||
**How It Works:**
|
||||
|
||||
1. List 8-15 features you could include
|
||||
2. Show respondents sets of 4-5 features at a time
|
||||
3. Ask: "Which is MOST important? Which is LEAST important?"
|
||||
4. Repeat across multiple sets until all features compared
|
||||
5. Statistical analysis produces importance scores
|
||||
|
||||
**Example Survey Question:**
|
||||
|
||||
```
|
||||
Which feature is MOST important to you?
|
||||
Which feature is LEAST important to you?
|
||||
|
||||
□ Unlimited projects
|
||||
□ Custom branding
|
||||
□ Priority support
|
||||
□ API access
|
||||
□ Advanced analytics
|
||||
```
|
||||
|
||||
**Analyzing Results:**
|
||||
|
||||
Features are ranked by utility score:
|
||||
- High utility = Must-have (include in base tier)
|
||||
- Medium utility = Differentiator (use for tier separation)
|
||||
- Low utility = Nice-to-have (premium tier or cut)
|
||||
|
||||
**Using MaxDiff for Packaging:**
|
||||
|
||||
| Utility Score | Packaging Decision |
|
||||
|---------------|-------------------|
|
||||
| Top 20% | Include in all tiers (table stakes) |
|
||||
| 20-50% | Use to differentiate tiers |
|
||||
| 50-80% | Higher tiers only |
|
||||
| Bottom 20% | Consider cutting or premium add-on |
|
||||
|
||||
### Willingness to Pay Surveys
|
||||
|
||||
**Direct method (simple but biased):**
|
||||
"How much would you pay for [product]?"
|
||||
|
||||
**Better: Gabor-Granger method:**
|
||||
"Would you buy [product] at [$X]?" (Yes/No)
|
||||
Vary price across respondents to build demand curve.
|
||||
|
||||
**Even better: Conjoint analysis:**
|
||||
Show product bundles at different prices
|
||||
Respondents choose preferred option
|
||||
Statistical analysis reveals price sensitivity per feature
|
||||
**Key insight:** Price between the next best alternative and perceived value.
|
||||
|
||||
---
|
||||
|
||||
@@ -209,253 +85,57 @@ The value metric is what you charge for—it should scale with the value custome
|
||||
| Per user/seat | Collaboration tools | Slack, Notion |
|
||||
| Per usage | Variable consumption | AWS, Twilio |
|
||||
| Per feature | Modular products | HubSpot add-ons |
|
||||
| Per contact/record | CRM, email tools | Mailchimp, HubSpot |
|
||||
| Per transaction | Payments, marketplaces | Stripe, Shopify |
|
||||
| Per contact/record | CRM, email tools | Mailchimp |
|
||||
| Per transaction | Payments, marketplaces | Stripe |
|
||||
| Flat fee | Simple products | Basecamp |
|
||||
| Revenue share | High-value outcomes | Affiliate platforms |
|
||||
|
||||
### Choosing Your Value Metric
|
||||
|
||||
**Step 1: Identify how customers get value**
|
||||
- What outcome do they care about?
|
||||
- What do they measure success by?
|
||||
- What would they pay more for?
|
||||
|
||||
**Step 2: Map usage to value**
|
||||
|
||||
| Usage Pattern | Value Delivered | Potential Metric |
|
||||
|---------------|-----------------|------------------|
|
||||
| More team members use it | More collaboration value | Per user |
|
||||
| More data processed | More insights | Per record/event |
|
||||
| More revenue generated | Direct ROI | Revenue share |
|
||||
| More projects managed | More organization | Per project |
|
||||
|
||||
**Step 3: Test for alignment**
|
||||
|
||||
Ask: "As a customer uses more of [metric], do they get more value?"
|
||||
- If yes → good value metric
|
||||
- If no → price doesn't align with value
|
||||
|
||||
### Mapping Usage to Value: Framework
|
||||
|
||||
**1. Instrument usage data**
|
||||
Track how customers use your product:
|
||||
- Feature usage frequency
|
||||
- Volume metrics (users, records, API calls)
|
||||
- Outcome metrics (revenue generated, time saved)
|
||||
|
||||
**2. Correlate with customer success**
|
||||
- Which usage patterns predict retention?
|
||||
- Which usage patterns predict expansion?
|
||||
- Which customers pay the most, and why?
|
||||
|
||||
**3. Identify value thresholds**
|
||||
- At what usage level do customers "get it"?
|
||||
- At what usage level do they expand?
|
||||
- At what usage level should price increase?
|
||||
|
||||
**Example Analysis:**
|
||||
|
||||
```
|
||||
Usage-Value Correlation Analysis:
|
||||
─────────────────────────────────
|
||||
Segment: High-LTV customers (>$10k ARR)
|
||||
Average monthly active users: 15
|
||||
Average projects: 8
|
||||
Average integrations: 4
|
||||
|
||||
Segment: Churned customers
|
||||
Average monthly active users: 3
|
||||
Average projects: 2
|
||||
Average integrations: 0
|
||||
|
||||
Insight: Value correlates with team adoption (users)
|
||||
and depth of use (integrations)
|
||||
|
||||
Recommendation: Price per user, gate integrations to higher tiers
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Tier Structure
|
||||
|
||||
### How Many Tiers?
|
||||
|
||||
**2 tiers:** Simple, clear choice
|
||||
- Works for: Clear SMB vs. Enterprise split
|
||||
- Risk: May leave money on table
|
||||
|
||||
**3 tiers:** Industry standard
|
||||
- Good tier = Entry point
|
||||
- Better tier = Recommended (anchor to best)
|
||||
- Best tier = High-value customers
|
||||
|
||||
**4+ tiers:** More granularity
|
||||
- Works for: Wide range of customer sizes
|
||||
- Risk: Decision paralysis, complexity
|
||||
## Tier Structure Overview
|
||||
|
||||
### Good-Better-Best Framework
|
||||
|
||||
**Good tier (Entry):**
|
||||
- Purpose: Remove barriers to entry
|
||||
- Includes: Core features, limited usage
|
||||
- Price: Low, accessible
|
||||
- Target: Small teams, try before you buy
|
||||
**Good tier (Entry):** Core features, limited usage, low price
|
||||
**Better tier (Recommended):** Full features, reasonable limits, anchor price
|
||||
**Best tier (Premium):** Everything, advanced features, 2-3x Better price
|
||||
|
||||
**Better tier (Recommended):**
|
||||
- Purpose: Where most customers land
|
||||
- Includes: Full features, reasonable limits
|
||||
- Price: Your "anchor" price
|
||||
- Target: Growing teams, serious users
|
||||
### Tier Differentiation
|
||||
|
||||
**Best tier (Premium):**
|
||||
- Purpose: Capture high-value customers
|
||||
- Includes: Everything, advanced features, higher limits
|
||||
- Price: Premium (often 2-3x "Better")
|
||||
- Target: Larger teams, power users, enterprises
|
||||
- **Feature gating** — Basic vs. advanced features
|
||||
- **Usage limits** — Same features, different limits
|
||||
- **Support level** — Email → Priority → Dedicated
|
||||
- **Access** — API, SSO, custom branding
|
||||
|
||||
### Tier Differentiation Strategies
|
||||
|
||||
**Feature gating:**
|
||||
- Basic features in all tiers
|
||||
- Advanced features in higher tiers
|
||||
- Works when features have clear value differences
|
||||
|
||||
**Usage limits:**
|
||||
- Same features, different limits
|
||||
- More users, storage, API calls at higher tiers
|
||||
- Works when value scales with usage
|
||||
|
||||
**Support level:**
|
||||
- Email support → Priority support → Dedicated success
|
||||
- Works for products with implementation complexity
|
||||
|
||||
**Access and customization:**
|
||||
- API access, SSO, custom branding
|
||||
- Works for enterprise differentiation
|
||||
|
||||
### Example Tier Structure
|
||||
|
||||
```
|
||||
┌────────────────┬─────────────────┬─────────────────┬─────────────────┐
|
||||
│ │ Starter │ Pro │ Business │
|
||||
│ │ $29/mo │ $79/mo │ $199/mo │
|
||||
├────────────────┼─────────────────┼─────────────────┼─────────────────┤
|
||||
│ Users │ Up to 5 │ Up to 20 │ Unlimited │
|
||||
│ Projects │ 10 │ Unlimited │ Unlimited │
|
||||
│ Storage │ 5 GB │ 50 GB │ 500 GB │
|
||||
│ Integrations │ 3 │ 10 │ Unlimited │
|
||||
│ Analytics │ Basic │ Advanced │ Custom │
|
||||
│ Support │ Email │ Priority │ Dedicated │
|
||||
│ API Access │ ✗ │ ✓ │ ✓ │
|
||||
│ SSO │ ✗ │ ✗ │ ✓ │
|
||||
│ Audit logs │ ✗ │ ✗ │ ✓ │
|
||||
└────────────────┴─────────────────┴─────────────────┴─────────────────┘
|
||||
```
|
||||
**For detailed tier structures and persona-based packaging**: See [references/tier-structure.md](references/tier-structure.md)
|
||||
|
||||
---
|
||||
|
||||
## Packaging for Personas
|
||||
## Pricing Research
|
||||
|
||||
### Identifying Pricing Personas
|
||||
### Van Westendorp Method
|
||||
|
||||
Different customers have different:
|
||||
- Willingness to pay
|
||||
- Feature needs
|
||||
- Buying processes
|
||||
- Value perception
|
||||
Four questions that identify acceptable price range:
|
||||
1. Too expensive (wouldn't consider)
|
||||
2. Too cheap (question quality)
|
||||
3. Expensive but might consider
|
||||
4. A bargain
|
||||
|
||||
**Segment by:**
|
||||
- Company size (solopreneur → SMB → enterprise)
|
||||
- Use case (marketing vs. sales vs. support)
|
||||
- Sophistication (beginner → power user)
|
||||
- Industry (different budget norms)
|
||||
Analyze intersections to find optimal pricing zone.
|
||||
|
||||
### Persona-Based Packaging
|
||||
### MaxDiff Analysis
|
||||
|
||||
**Step 1: Define personas**
|
||||
Identifies which features customers value most:
|
||||
- Show sets of features
|
||||
- Ask: Most important? Least important?
|
||||
- Results inform tier packaging
|
||||
|
||||
| Persona | Size | Needs | WTP | Example |
|
||||
|---------|------|-------|-----|---------|
|
||||
| Freelancer | 1 person | Basic features | Low | $19/mo |
|
||||
| Small Team | 2-10 | Collaboration | Medium | $49/mo |
|
||||
| Growing Co | 10-50 | Scale, integrations | Higher | $149/mo |
|
||||
| Enterprise | 50+ | Security, support | High | Custom |
|
||||
|
||||
**Step 2: Map features to personas**
|
||||
|
||||
| Feature | Freelancer | Small Team | Growing | Enterprise |
|
||||
|---------|------------|------------|---------|------------|
|
||||
| Core features | ✓ | ✓ | ✓ | ✓ |
|
||||
| Collaboration | — | ✓ | ✓ | ✓ |
|
||||
| Integrations | — | Limited | Full | Full |
|
||||
| API access | — | — | ✓ | ✓ |
|
||||
| SSO/SAML | — | — | — | ✓ |
|
||||
| Audit logs | — | — | — | ✓ |
|
||||
| Custom contract | — | — | — | ✓ |
|
||||
|
||||
**Step 3: Price to value for each persona**
|
||||
- Research willingness to pay per segment
|
||||
- Set prices that capture value without blocking adoption
|
||||
- Consider segment-specific landing pages
|
||||
|
||||
---
|
||||
|
||||
## Freemium vs. Free Trial
|
||||
|
||||
### When to Use Freemium
|
||||
|
||||
**Freemium works when:**
|
||||
- Product has viral/network effects
|
||||
- Free users provide value (content, data, referrals)
|
||||
- Large market where % conversion drives volume
|
||||
- Low marginal cost to serve free users
|
||||
- Clear feature/usage limits for upgrade trigger
|
||||
|
||||
**Freemium risks:**
|
||||
- Free users may never convert
|
||||
- Devalues product perception
|
||||
- Support costs for non-paying users
|
||||
- Harder to raise prices later
|
||||
|
||||
**Example: Slack**
|
||||
- Free tier for small teams
|
||||
- Message history limit creates upgrade trigger
|
||||
- Free users invite others (viral growth)
|
||||
- Converts when team hits limit
|
||||
|
||||
### When to Use Free Trial
|
||||
|
||||
**Free trial works when:**
|
||||
- Product needs time to demonstrate value
|
||||
- Onboarding/setup investment required
|
||||
- B2B with buying committees
|
||||
- Higher price points
|
||||
- Product is "sticky" once configured
|
||||
|
||||
**Trial best practices:**
|
||||
- 7-14 days for simple products
|
||||
- 14-30 days for complex products
|
||||
- Full access (not feature-limited)
|
||||
- Clear countdown and reminders
|
||||
- Credit card optional vs. required trade-off
|
||||
|
||||
**Credit card upfront:**
|
||||
- Higher trial-to-paid conversion (40-50% vs. 15-25%)
|
||||
- Lower trial volume
|
||||
- Better qualified leads
|
||||
|
||||
### Hybrid Approaches
|
||||
|
||||
**Freemium + Trial:**
|
||||
- Free tier with limited features
|
||||
- Trial of premium features
|
||||
- Example: Zoom (free 40-min, trial of Pro)
|
||||
|
||||
**Reverse trial:**
|
||||
- Start with full access
|
||||
- After trial, downgrade to free tier
|
||||
- Example: See premium value, live with limitations until ready
|
||||
**For detailed research methods**: See [references/research-methods.md](references/research-methods.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -465,206 +145,54 @@ Different customers have different:
|
||||
|
||||
**Market signals:**
|
||||
- Competitors have raised prices
|
||||
- You're significantly cheaper than alternatives
|
||||
- Prospects don't flinch at price
|
||||
- "It's so cheap!" feedback
|
||||
|
||||
**Business signals:**
|
||||
- Very high conversion rates (>40%)
|
||||
- Very low churn (<3% monthly)
|
||||
- Customers using more than they pay for
|
||||
- Unit economics are strong
|
||||
- Strong unit economics
|
||||
|
||||
**Product signals:**
|
||||
- You've added significant value since last pricing
|
||||
- Product is more mature/stable
|
||||
- New features justify higher price
|
||||
- Significant value added since last pricing
|
||||
- Product more mature/stable
|
||||
|
||||
### Price Increase Strategies
|
||||
|
||||
**1. Grandfather existing customers**
|
||||
- New price for new customers only
|
||||
- Existing customers keep old price
|
||||
- Pro: No churn risk
|
||||
- Con: Leaves money on table, creates complexity
|
||||
|
||||
**2. Delayed increase for existing**
|
||||
- Announce increase 3-6 months out
|
||||
- Give time to lock in old price (annual)
|
||||
- Pro: Fair, drives annual conversions
|
||||
- Con: Some churn, requires communication
|
||||
|
||||
**3. Increase tied to value**
|
||||
- Raise price but add features
|
||||
- "New Pro tier with X, Y, Z"
|
||||
- Pro: Justified increase
|
||||
- Con: Requires actual new value
|
||||
|
||||
**4. Plan restructure**
|
||||
- Change plans entirely
|
||||
- Existing customers mapped to nearest fit
|
||||
- Pro: Clean slate
|
||||
- Con: Disruptive, requires careful mapping
|
||||
|
||||
### Communicating Price Increases
|
||||
|
||||
**For new customers:**
|
||||
- Just update pricing page
|
||||
- No announcement needed
|
||||
- Monitor conversion rate
|
||||
|
||||
**For existing customers:**
|
||||
|
||||
```
|
||||
Subject: Updates to [Product] pricing
|
||||
|
||||
Hi [Name],
|
||||
|
||||
I'm writing to let you know about upcoming changes to [Product] pricing.
|
||||
|
||||
[Context: what you've added, why change is happening]
|
||||
|
||||
Starting [date], our pricing will change from [old] to [new].
|
||||
|
||||
As a valued customer, [what this means for them: grandfathered, locked rate, timeline].
|
||||
|
||||
[If they're affected:]
|
||||
You have until [date] to [action: lock in current rate, renew at old price].
|
||||
|
||||
[If they're grandfathered:]
|
||||
You'll continue at your current rate. No action needed.
|
||||
|
||||
We appreciate your continued support of [Product].
|
||||
|
||||
[Your name]
|
||||
```
|
||||
1. **Grandfather existing** — New price for new customers only
|
||||
2. **Delayed increase** — Announce 3-6 months out
|
||||
3. **Tied to value** — Raise price but add features
|
||||
4. **Plan restructure** — Change plans entirely
|
||||
|
||||
---
|
||||
|
||||
## Pricing Page Best Practices
|
||||
|
||||
### Above the Fold
|
||||
|
||||
- Clear tier comparison table
|
||||
- Recommended tier highlighted
|
||||
- Monthly/annual toggle
|
||||
- Primary CTA for each tier
|
||||
|
||||
### Tier Presentation
|
||||
|
||||
- Lead with the recommended tier (visual emphasis)
|
||||
- Show value progression clearly
|
||||
- Use checkmarks and limits, not paragraphs
|
||||
- Anchor to higher tier (show enterprise first or savings)
|
||||
|
||||
### Common Elements
|
||||
- Feature comparison table
|
||||
- Who each tier is for
|
||||
- FAQ section
|
||||
- Annual discount callout (17-20%)
|
||||
- Money-back guarantee
|
||||
- Customer logos/trust signals
|
||||
|
||||
- [ ] Feature comparison table
|
||||
- [ ] Who each tier is for
|
||||
- [ ] FAQ section
|
||||
- [ ] Contact sales option
|
||||
- [ ] Annual discount callout
|
||||
- [ ] Money-back guarantee
|
||||
- [ ] Customer logos/trust signals
|
||||
|
||||
### Pricing Psychology to Apply
|
||||
|
||||
### Pricing Psychology
|
||||
- **Anchoring:** Show higher-priced option first
|
||||
- **Decoy effect:** Middle tier should be obviously best value
|
||||
- **Decoy effect:** Middle tier should be best value
|
||||
- **Charm pricing:** $49 vs. $50 (for value-focused)
|
||||
- **Round pricing:** $50 vs. $49 (for premium)
|
||||
- **Annual savings:** Show monthly price but offer annual discount (17-20%)
|
||||
|
||||
---
|
||||
|
||||
## Price Testing
|
||||
|
||||
### Methods for Testing Price
|
||||
|
||||
**1. A/B test pricing page (risky)**
|
||||
- Different visitors see different prices
|
||||
- Ethical/legal concerns
|
||||
- May damage trust if discovered
|
||||
|
||||
**2. Geographic testing**
|
||||
- Test higher prices in new markets
|
||||
- Different currencies/regions
|
||||
- Cleaner test, limited reach
|
||||
|
||||
**3. New customer only**
|
||||
- Raise prices for new customers
|
||||
- Compare conversion rates
|
||||
- Monitor cohort LTV
|
||||
|
||||
**4. Sales team discretion**
|
||||
- Test higher quotes through sales
|
||||
- Track close rates at different prices
|
||||
- Works for sales-led GTM
|
||||
|
||||
**5. Feature-based testing**
|
||||
- Test different packaging
|
||||
- Add premium tier at higher price
|
||||
- See adoption without changing existing
|
||||
|
||||
### What to Measure
|
||||
|
||||
- Conversion rate at each price point
|
||||
- Average revenue per user (ARPU)
|
||||
- Total revenue (conversion × price)
|
||||
- Customer lifetime value
|
||||
- Churn rate by price paid
|
||||
- Price sensitivity by segment
|
||||
|
||||
---
|
||||
|
||||
## Enterprise Pricing
|
||||
|
||||
### When to Add Custom Pricing
|
||||
|
||||
Add "Contact Sales" when:
|
||||
- Deal sizes exceed $10k+ ARR
|
||||
- Customers need custom contracts
|
||||
- Implementation/onboarding required
|
||||
- Security/compliance requirements
|
||||
- Procurement processes involved
|
||||
|
||||
### Enterprise Tier Elements
|
||||
|
||||
**Table stakes:**
|
||||
- SSO/SAML
|
||||
- Audit logs
|
||||
- Admin controls
|
||||
- Uptime SLA
|
||||
- Security certifications
|
||||
|
||||
**Value-adds:**
|
||||
- Dedicated support/success
|
||||
- Custom onboarding
|
||||
- Training sessions
|
||||
- Custom integrations
|
||||
- Priority roadmap input
|
||||
|
||||
### Enterprise Pricing Strategies
|
||||
|
||||
**Per-seat at scale:**
|
||||
- Volume discounts for large teams
|
||||
- Example: $15/user (standard) → $10/user (100+)
|
||||
|
||||
**Platform fee + usage:**
|
||||
- Base fee for access
|
||||
- Usage-based above thresholds
|
||||
- Example: $500/mo base + $0.01 per API call
|
||||
|
||||
**Value-based contracts:**
|
||||
- Price tied to customer's revenue/outcomes
|
||||
- Example: % of transactions, revenue share
|
||||
|
||||
---
|
||||
|
||||
## Pricing Checklist
|
||||
|
||||
### Before Setting Prices
|
||||
|
||||
- [ ] Defined target customer personas
|
||||
- [ ] Researched competitor pricing
|
||||
- [ ] Identified your value metric
|
||||
@@ -672,30 +200,20 @@ Add "Contact Sales" when:
|
||||
- [ ] Mapped features to tiers
|
||||
|
||||
### Pricing Structure
|
||||
|
||||
- [ ] Chosen number of tiers
|
||||
- [ ] Differentiated tiers clearly
|
||||
- [ ] Set price points based on research
|
||||
- [ ] Created annual discount strategy
|
||||
- [ ] Planned enterprise/custom tier
|
||||
|
||||
### Validation
|
||||
|
||||
- [ ] Tested pricing with target customers
|
||||
- [ ] Reviewed pricing with sales team
|
||||
- [ ] Validated unit economics work
|
||||
- [ ] Planned for price increases
|
||||
- [ ] Set up tracking for pricing metrics
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What pricing research have you done (surveys, competitor analysis)?
|
||||
1. What pricing research have you done?
|
||||
2. What's your current ARPU and conversion rate?
|
||||
3. What's your primary value metric (what do customers pay for value)?
|
||||
4. Who are your main pricing personas (by size, use case)?
|
||||
3. What's your primary value metric?
|
||||
4. Who are your main pricing personas?
|
||||
5. Are you self-serve, sales-led, or hybrid?
|
||||
6. What pricing changes are you considering?
|
||||
|
||||
@@ -707,4 +225,3 @@ If you need more context:
|
||||
- **copywriting**: For pricing page copy
|
||||
- **marketing-psychology**: For pricing psychology principles
|
||||
- **ab-test-setup**: For testing pricing changes
|
||||
- **analytics-tracking**: For tracking pricing metrics
|
||||
|
||||
146
skills/pricing-strategy/references/research-methods.md
Normal file
146
skills/pricing-strategy/references/research-methods.md
Normal file
@@ -0,0 +1,146 @@
|
||||
# Pricing Research Methods
|
||||
|
||||
## Van Westendorp Price Sensitivity Meter
|
||||
|
||||
The Van Westendorp survey identifies the acceptable price range for your product.
|
||||
|
||||
### The Four Questions
|
||||
|
||||
Ask each respondent:
|
||||
1. "At what price would you consider [product] to be so expensive that you would not consider buying it?" (Too expensive)
|
||||
2. "At what price would you consider [product] to be priced so low that you would question its quality?" (Too cheap)
|
||||
3. "At what price would you consider [product] to be starting to get expensive, but you still might consider it?" (Expensive/high side)
|
||||
4. "At what price would you consider [product] to be a bargain—a great buy for the money?" (Cheap/good value)
|
||||
|
||||
### How to Analyze
|
||||
|
||||
1. Plot cumulative distributions for each question
|
||||
2. Find the intersections:
|
||||
- **Point of Marginal Cheapness (PMC):** "Too cheap" crosses "Expensive"
|
||||
- **Point of Marginal Expensiveness (PME):** "Too expensive" crosses "Cheap"
|
||||
- **Optimal Price Point (OPP):** "Too cheap" crosses "Too expensive"
|
||||
- **Indifference Price Point (IDP):** "Expensive" crosses "Cheap"
|
||||
|
||||
**The acceptable price range:** PMC to PME
|
||||
**Optimal pricing zone:** Between OPP and IDP
|
||||
|
||||
### Survey Tips
|
||||
- Need 100-300 respondents for reliable data
|
||||
- Segment by persona (different willingness to pay)
|
||||
- Use realistic product descriptions
|
||||
- Consider adding purchase intent questions
|
||||
|
||||
### Sample Output
|
||||
|
||||
```
|
||||
Price Sensitivity Analysis Results:
|
||||
─────────────────────────────────
|
||||
Point of Marginal Cheapness: $29/mo
|
||||
Optimal Price Point: $49/mo
|
||||
Indifference Price Point: $59/mo
|
||||
Point of Marginal Expensiveness: $79/mo
|
||||
|
||||
Recommended range: $49-59/mo
|
||||
Current price: $39/mo (below optimal)
|
||||
Opportunity: 25-50% price increase without significant demand impact
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## MaxDiff Analysis (Best-Worst Scaling)
|
||||
|
||||
MaxDiff identifies which features customers value most, informing packaging decisions.
|
||||
|
||||
### How It Works
|
||||
|
||||
1. List 8-15 features you could include
|
||||
2. Show respondents sets of 4-5 features at a time
|
||||
3. Ask: "Which is MOST important? Which is LEAST important?"
|
||||
4. Repeat across multiple sets until all features compared
|
||||
5. Statistical analysis produces importance scores
|
||||
|
||||
### Example Survey Question
|
||||
|
||||
```
|
||||
Which feature is MOST important to you?
|
||||
Which feature is LEAST important to you?
|
||||
|
||||
□ Unlimited projects
|
||||
□ Custom branding
|
||||
□ Priority support
|
||||
□ API access
|
||||
□ Advanced analytics
|
||||
```
|
||||
|
||||
### Analyzing Results
|
||||
|
||||
Features are ranked by utility score:
|
||||
- High utility = Must-have (include in base tier)
|
||||
- Medium utility = Differentiator (use for tier separation)
|
||||
- Low utility = Nice-to-have (premium tier or cut)
|
||||
|
||||
### Using MaxDiff for Packaging
|
||||
|
||||
| Utility Score | Packaging Decision |
|
||||
|---------------|-------------------|
|
||||
| Top 20% | Include in all tiers (table stakes) |
|
||||
| 20-50% | Use to differentiate tiers |
|
||||
| 50-80% | Higher tiers only |
|
||||
| Bottom 20% | Consider cutting or premium add-on |
|
||||
|
||||
---
|
||||
|
||||
## Willingness to Pay Surveys
|
||||
|
||||
**Direct method (simple but biased):**
|
||||
"How much would you pay for [product]?"
|
||||
|
||||
**Better: Gabor-Granger method:**
|
||||
"Would you buy [product] at [$X]?" (Yes/No)
|
||||
Vary price across respondents to build demand curve.
|
||||
|
||||
**Even better: Conjoint analysis:**
|
||||
Show product bundles at different prices
|
||||
Respondents choose preferred option
|
||||
Statistical analysis reveals price sensitivity per feature
|
||||
|
||||
---
|
||||
|
||||
## Usage-Value Correlation Analysis
|
||||
|
||||
### 1. Instrument usage data
|
||||
Track how customers use your product:
|
||||
- Feature usage frequency
|
||||
- Volume metrics (users, records, API calls)
|
||||
- Outcome metrics (revenue generated, time saved)
|
||||
|
||||
### 2. Correlate with customer success
|
||||
- Which usage patterns predict retention?
|
||||
- Which usage patterns predict expansion?
|
||||
- Which customers pay the most, and why?
|
||||
|
||||
### 3. Identify value thresholds
|
||||
- At what usage level do customers "get it"?
|
||||
- At what usage level do they expand?
|
||||
- At what usage level should price increase?
|
||||
|
||||
### Example Analysis
|
||||
|
||||
```
|
||||
Usage-Value Correlation Analysis:
|
||||
─────────────────────────────────
|
||||
Segment: High-LTV customers (>$10k ARR)
|
||||
Average monthly active users: 15
|
||||
Average projects: 8
|
||||
Average integrations: 4
|
||||
|
||||
Segment: Churned customers
|
||||
Average monthly active users: 3
|
||||
Average projects: 2
|
||||
Average integrations: 0
|
||||
|
||||
Insight: Value correlates with team adoption (users)
|
||||
and depth of use (integrations)
|
||||
|
||||
Recommendation: Price per user, gate integrations to higher tiers
|
||||
```
|
||||
223
skills/pricing-strategy/references/tier-structure.md
Normal file
223
skills/pricing-strategy/references/tier-structure.md
Normal file
@@ -0,0 +1,223 @@
|
||||
# Tier Structure and Packaging
|
||||
|
||||
## How Many Tiers?
|
||||
|
||||
**2 tiers:** Simple, clear choice
|
||||
- Works for: Clear SMB vs. Enterprise split
|
||||
- Risk: May leave money on table
|
||||
|
||||
**3 tiers:** Industry standard
|
||||
- Good tier = Entry point
|
||||
- Better tier = Recommended (anchor to best)
|
||||
- Best tier = High-value customers
|
||||
|
||||
**4+ tiers:** More granularity
|
||||
- Works for: Wide range of customer sizes
|
||||
- Risk: Decision paralysis, complexity
|
||||
|
||||
---
|
||||
|
||||
## Good-Better-Best Framework
|
||||
|
||||
**Good tier (Entry):**
|
||||
- Purpose: Remove barriers to entry
|
||||
- Includes: Core features, limited usage
|
||||
- Price: Low, accessible
|
||||
- Target: Small teams, try before you buy
|
||||
|
||||
**Better tier (Recommended):**
|
||||
- Purpose: Where most customers land
|
||||
- Includes: Full features, reasonable limits
|
||||
- Price: Your "anchor" price
|
||||
- Target: Growing teams, serious users
|
||||
|
||||
**Best tier (Premium):**
|
||||
- Purpose: Capture high-value customers
|
||||
- Includes: Everything, advanced features, higher limits
|
||||
- Price: Premium (often 2-3x "Better")
|
||||
- Target: Larger teams, power users, enterprises
|
||||
|
||||
---
|
||||
|
||||
## Tier Differentiation Strategies
|
||||
|
||||
**Feature gating:**
|
||||
- Basic features in all tiers
|
||||
- Advanced features in higher tiers
|
||||
- Works when features have clear value differences
|
||||
|
||||
**Usage limits:**
|
||||
- Same features, different limits
|
||||
- More users, storage, API calls at higher tiers
|
||||
- Works when value scales with usage
|
||||
|
||||
**Support level:**
|
||||
- Email support → Priority support → Dedicated success
|
||||
- Works for products with implementation complexity
|
||||
|
||||
**Access and customization:**
|
||||
- API access, SSO, custom branding
|
||||
- Works for enterprise differentiation
|
||||
|
||||
---
|
||||
|
||||
## Example Tier Structure
|
||||
|
||||
```
|
||||
┌────────────────┬─────────────────┬─────────────────┬─────────────────┐
|
||||
│ │ Starter │ Pro │ Business │
|
||||
│ │ $29/mo │ $79/mo │ $199/mo │
|
||||
├────────────────┼─────────────────┼─────────────────┼─────────────────┤
|
||||
│ Users │ Up to 5 │ Up to 20 │ Unlimited │
|
||||
│ Projects │ 10 │ Unlimited │ Unlimited │
|
||||
│ Storage │ 5 GB │ 50 GB │ 500 GB │
|
||||
│ Integrations │ 3 │ 10 │ Unlimited │
|
||||
│ Analytics │ Basic │ Advanced │ Custom │
|
||||
│ Support │ Email │ Priority │ Dedicated │
|
||||
│ API Access │ ✗ │ ✓ │ ✓ │
|
||||
│ SSO │ ✗ │ ✗ │ ✓ │
|
||||
│ Audit logs │ ✗ │ ✗ │ ✓ │
|
||||
└────────────────┴─────────────────┴─────────────────┴─────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Packaging for Personas
|
||||
|
||||
### Identifying Pricing Personas
|
||||
|
||||
Different customers have different:
|
||||
- Willingness to pay
|
||||
- Feature needs
|
||||
- Buying processes
|
||||
- Value perception
|
||||
|
||||
**Segment by:**
|
||||
- Company size (solopreneur → SMB → enterprise)
|
||||
- Use case (marketing vs. sales vs. support)
|
||||
- Sophistication (beginner → power user)
|
||||
- Industry (different budget norms)
|
||||
|
||||
### Persona-Based Packaging
|
||||
|
||||
**Step 1: Define personas**
|
||||
|
||||
| Persona | Size | Needs | WTP | Example |
|
||||
|---------|------|-------|-----|---------|
|
||||
| Freelancer | 1 person | Basic features | Low | $19/mo |
|
||||
| Small Team | 2-10 | Collaboration | Medium | $49/mo |
|
||||
| Growing Co | 10-50 | Scale, integrations | Higher | $149/mo |
|
||||
| Enterprise | 50+ | Security, support | High | Custom |
|
||||
|
||||
**Step 2: Map features to personas**
|
||||
|
||||
| Feature | Freelancer | Small Team | Growing | Enterprise |
|
||||
|---------|------------|------------|---------|------------|
|
||||
| Core features | ✓ | ✓ | ✓ | ✓ |
|
||||
| Collaboration | — | ✓ | ✓ | ✓ |
|
||||
| Integrations | — | Limited | Full | Full |
|
||||
| API access | — | — | ✓ | ✓ |
|
||||
| SSO/SAML | — | — | — | ✓ |
|
||||
| Audit logs | — | — | — | ✓ |
|
||||
| Custom contract | — | — | — | ✓ |
|
||||
|
||||
**Step 3: Price to value for each persona**
|
||||
- Research willingness to pay per segment
|
||||
- Set prices that capture value without blocking adoption
|
||||
- Consider segment-specific landing pages
|
||||
|
||||
---
|
||||
|
||||
## Freemium vs. Free Trial
|
||||
|
||||
### When to Use Freemium
|
||||
|
||||
**Freemium works when:**
|
||||
- Product has viral/network effects
|
||||
- Free users provide value (content, data, referrals)
|
||||
- Large market where % conversion drives volume
|
||||
- Low marginal cost to serve free users
|
||||
- Clear feature/usage limits for upgrade trigger
|
||||
|
||||
**Freemium risks:**
|
||||
- Free users may never convert
|
||||
- Devalues product perception
|
||||
- Support costs for non-paying users
|
||||
- Harder to raise prices later
|
||||
|
||||
### When to Use Free Trial
|
||||
|
||||
**Free trial works when:**
|
||||
- Product needs time to demonstrate value
|
||||
- Onboarding/setup investment required
|
||||
- B2B with buying committees
|
||||
- Higher price points
|
||||
- Product is "sticky" once configured
|
||||
|
||||
**Trial best practices:**
|
||||
- 7-14 days for simple products
|
||||
- 14-30 days for complex products
|
||||
- Full access (not feature-limited)
|
||||
- Clear countdown and reminders
|
||||
- Credit card optional vs. required trade-off
|
||||
|
||||
**Credit card upfront:**
|
||||
- Higher trial-to-paid conversion (40-50% vs. 15-25%)
|
||||
- Lower trial volume
|
||||
- Better qualified leads
|
||||
|
||||
### Hybrid Approaches
|
||||
|
||||
**Freemium + Trial:**
|
||||
- Free tier with limited features
|
||||
- Trial of premium features
|
||||
- Example: Zoom (free 40-min, trial of Pro)
|
||||
|
||||
**Reverse trial:**
|
||||
- Start with full access
|
||||
- After trial, downgrade to free tier
|
||||
- Example: See premium value, live with limitations until ready
|
||||
|
||||
---
|
||||
|
||||
## Enterprise Pricing
|
||||
|
||||
### When to Add Custom Pricing
|
||||
|
||||
Add "Contact Sales" when:
|
||||
- Deal sizes exceed $10k+ ARR
|
||||
- Customers need custom contracts
|
||||
- Implementation/onboarding required
|
||||
- Security/compliance requirements
|
||||
- Procurement processes involved
|
||||
|
||||
### Enterprise Tier Elements
|
||||
|
||||
**Table stakes:**
|
||||
- SSO/SAML
|
||||
- Audit logs
|
||||
- Admin controls
|
||||
- Uptime SLA
|
||||
- Security certifications
|
||||
|
||||
**Value-adds:**
|
||||
- Dedicated support/success
|
||||
- Custom onboarding
|
||||
- Training sessions
|
||||
- Custom integrations
|
||||
- Priority roadmap input
|
||||
|
||||
### Enterprise Pricing Strategies
|
||||
|
||||
**Per-seat at scale:**
|
||||
- Volume discounts for large teams
|
||||
- Example: $15/user (standard) → $10/user (100+)
|
||||
|
||||
**Platform fee + usage:**
|
||||
- Base fee for access
|
||||
- Usage-based above thresholds
|
||||
- Example: $500/mo base + $0.01 per API call
|
||||
|
||||
**Value-based contracts:**
|
||||
- Price tied to customer's revenue/outcomes
|
||||
- Example: % of transactions, revenue share
|
||||
240
skills/product-marketing-context/SKILL.md
Normal file
240
skills/product-marketing-context/SKILL.md
Normal file
@@ -0,0 +1,240 @@
|
||||
---
|
||||
name: product-marketing-context
|
||||
version: 1.0.0
|
||||
description: "When the user wants to create or update their product marketing context document. Also use when the user mentions 'product context,' 'marketing context,' 'set up context,' 'positioning,' or wants to avoid repeating foundational information across marketing tasks. Creates `.claude/product-marketing-context.md` that other marketing skills reference."
|
||||
---
|
||||
|
||||
# Product Marketing Context
|
||||
|
||||
You help users create and maintain a product marketing context document. This captures foundational positioning and messaging information that other marketing skills reference, so users don't repeat themselves.
|
||||
|
||||
The document is stored at `.claude/product-marketing-context.md`.
|
||||
|
||||
## Workflow
|
||||
|
||||
### Step 1: Check for Existing Context
|
||||
|
||||
First, check if `.claude/product-marketing-context.md` already exists.
|
||||
|
||||
**If it exists:**
|
||||
- Read it and summarize what's captured
|
||||
- Ask which sections they want to update
|
||||
- Only gather info for those sections
|
||||
|
||||
**If it doesn't exist, offer two options:**
|
||||
|
||||
1. **Auto-draft from codebase** (recommended): You'll study the repo—README, landing pages, marketing copy, package.json, etc.—and draft a V1 of the context document. The user then reviews, corrects, and fills gaps. This is faster than starting from scratch.
|
||||
|
||||
2. **Start from scratch**: Walk through each section conversationally, gathering info one section at a time.
|
||||
|
||||
Most users prefer option 1. After presenting the draft, ask: "What needs correcting? What's missing?"
|
||||
|
||||
### Step 2: Gather Information
|
||||
|
||||
**If auto-drafting:**
|
||||
1. Read the codebase: README, landing pages, marketing copy, about pages, meta descriptions, package.json, any existing docs
|
||||
2. Draft all sections based on what you find
|
||||
3. Present the draft and ask what needs correcting or is missing
|
||||
4. Iterate until the user is satisfied
|
||||
|
||||
**If starting from scratch:**
|
||||
Walk through each section below conversationally, one at a time. Don't dump all questions at once.
|
||||
|
||||
For each section:
|
||||
1. Briefly explain what you're capturing
|
||||
2. Ask relevant questions
|
||||
3. Confirm accuracy
|
||||
4. Move to the next
|
||||
|
||||
**Important:** Push for verbatim customer language. Exact phrases are more valuable than polished descriptions.
|
||||
|
||||
---
|
||||
|
||||
## Sections to Capture
|
||||
|
||||
### 1. Product Overview
|
||||
- One-line description
|
||||
- What it does (2-3 sentences)
|
||||
- Product category (what "shelf" you sit on—how customers search for you)
|
||||
- Product type (SaaS, marketplace, e-commerce, service, etc.)
|
||||
- Business model and pricing
|
||||
|
||||
### 2. Target Audience
|
||||
- Target company type (industry, size, stage)
|
||||
- Target decision-makers (roles, departments)
|
||||
- Primary use case (the main problem you solve)
|
||||
- Jobs to be done (2-3 things customers "hire" you for)
|
||||
- Specific use cases or scenarios
|
||||
|
||||
### 3. Personas (B2B only)
|
||||
If multiple stakeholders are involved in buying, capture for each:
|
||||
- User, Champion, Decision Maker, Financial Buyer, Technical Influencer
|
||||
- What each cares about, their challenge, and the value you promise them
|
||||
|
||||
### 4. Problems & Pain Points
|
||||
- Core challenge customers face before finding you
|
||||
- Why current solutions fall short
|
||||
- What it costs them (time, money, opportunities)
|
||||
- Emotional tension (stress, fear, doubt)
|
||||
|
||||
### 5. Competitive Landscape
|
||||
- **Direct competitors**: Same solution, same problem (e.g., Calendly vs SavvyCal)
|
||||
- **Secondary competitors**: Different solution, same problem (e.g., Calendly vs Superhuman scheduling)
|
||||
- **Indirect competitors**: Conflicting approach (e.g., Calendly vs personal assistant)
|
||||
- How each falls short for customers
|
||||
|
||||
### 6. Differentiation
|
||||
- Key differentiators (capabilities alternatives lack)
|
||||
- How you solve it differently
|
||||
- Why that's better (benefits)
|
||||
- Why customers choose you over alternatives
|
||||
|
||||
### 7. Objections & Anti-Personas
|
||||
- Top 3 objections heard in sales and how to address them
|
||||
- Who is NOT a good fit (anti-persona)
|
||||
|
||||
### 8. Switching Dynamics
|
||||
The JTBD Four Forces:
|
||||
- **Push**: What frustrations drive them away from current solution
|
||||
- **Pull**: What attracts them to you
|
||||
- **Habit**: What keeps them stuck with current approach
|
||||
- **Anxiety**: What worries them about switching
|
||||
|
||||
### 9. Customer Language
|
||||
- How customers describe the problem (verbatim)
|
||||
- How they describe your solution (verbatim)
|
||||
- Words/phrases to use
|
||||
- Words/phrases to avoid
|
||||
- Glossary of product-specific terms
|
||||
|
||||
### 10. Brand Voice
|
||||
- Tone (professional, casual, playful, etc.)
|
||||
- Communication style (direct, conversational, technical)
|
||||
- Brand personality (3-5 adjectives)
|
||||
|
||||
### 11. Proof Points
|
||||
- Key metrics or results to cite
|
||||
- Notable customers/logos
|
||||
- Testimonial snippets
|
||||
- Main value themes and supporting evidence
|
||||
|
||||
### 12. Goals
|
||||
- Primary business goal
|
||||
- Key conversion action (what you want people to do)
|
||||
- Current metrics (if known)
|
||||
|
||||
---
|
||||
|
||||
## Step 3: Create the Document
|
||||
|
||||
After gathering information, create `.claude/product-marketing-context.md` with this structure:
|
||||
|
||||
```markdown
|
||||
# Product Marketing Context
|
||||
|
||||
*Last updated: [date]*
|
||||
|
||||
## Product Overview
|
||||
**One-liner:**
|
||||
**What it does:**
|
||||
**Product category:**
|
||||
**Product type:**
|
||||
**Business model:**
|
||||
|
||||
## Target Audience
|
||||
**Target companies:**
|
||||
**Decision-makers:**
|
||||
**Primary use case:**
|
||||
**Jobs to be done:**
|
||||
-
|
||||
**Use cases:**
|
||||
-
|
||||
|
||||
## Personas
|
||||
| Persona | Cares about | Challenge | Value we promise |
|
||||
|---------|-------------|-----------|------------------|
|
||||
| | | | |
|
||||
|
||||
## Problems & Pain Points
|
||||
**Core problem:**
|
||||
**Why alternatives fall short:**
|
||||
-
|
||||
**What it costs them:**
|
||||
**Emotional tension:**
|
||||
|
||||
## Competitive Landscape
|
||||
**Direct:** [Competitor] — falls short because...
|
||||
**Secondary:** [Approach] — falls short because...
|
||||
**Indirect:** [Alternative] — falls short because...
|
||||
|
||||
## Differentiation
|
||||
**Key differentiators:**
|
||||
-
|
||||
**How we do it differently:**
|
||||
**Why that's better:**
|
||||
**Why customers choose us:**
|
||||
|
||||
## Objections
|
||||
| Objection | Response |
|
||||
|-----------|----------|
|
||||
| | |
|
||||
|
||||
**Anti-persona:**
|
||||
|
||||
## Switching Dynamics
|
||||
**Push:**
|
||||
**Pull:**
|
||||
**Habit:**
|
||||
**Anxiety:**
|
||||
|
||||
## Customer Language
|
||||
**How they describe the problem:**
|
||||
- "[verbatim]"
|
||||
**How they describe us:**
|
||||
- "[verbatim]"
|
||||
**Words to use:**
|
||||
**Words to avoid:**
|
||||
**Glossary:**
|
||||
| Term | Meaning |
|
||||
|------|---------|
|
||||
| | |
|
||||
|
||||
## Brand Voice
|
||||
**Tone:**
|
||||
**Style:**
|
||||
**Personality:**
|
||||
|
||||
## Proof Points
|
||||
**Metrics:**
|
||||
**Customers:**
|
||||
**Testimonials:**
|
||||
> "[quote]" — [who]
|
||||
**Value themes:**
|
||||
| Theme | Proof |
|
||||
|-------|-------|
|
||||
| | |
|
||||
|
||||
## Goals
|
||||
**Business goal:**
|
||||
**Conversion action:**
|
||||
**Current metrics:**
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 4: Confirm and Save
|
||||
|
||||
- Show the completed document
|
||||
- Ask if anything needs adjustment
|
||||
- Save to `.claude/product-marketing-context.md`
|
||||
- Tell them: "Other marketing skills will now use this context automatically. Run `/product-marketing-context` anytime to update it."
|
||||
|
||||
---
|
||||
|
||||
## Tips
|
||||
|
||||
- **Be specific**: Ask "What's the #1 frustration that brings them to you?" not "What problem do they solve?"
|
||||
- **Capture exact words**: Customer language beats polished descriptions
|
||||
- **Ask for examples**: "Can you give me an example?" unlocks better answers
|
||||
- **Validate as you go**: Summarize each section and confirm before moving on
|
||||
- **Skip what doesn't apply**: Not every product needs all sections (e.g., Personas for B2C)
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: programmatic-seo
|
||||
version: 1.0.0
|
||||
description: When the user wants to create SEO-driven pages at scale using templates and data. Also use when the user mentions "programmatic SEO," "template pages," "pages at scale," "directory pages," "location pages," "[keyword] + [city] pages," "comparison pages," "integration pages," or "building many pages for SEO." For auditing existing SEO issues, see seo-audit.
|
||||
---
|
||||
|
||||
@@ -9,6 +10,9 @@ You are an expert in programmatic SEO—building SEO-optimized pages at scale us
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before designing a programmatic SEO strategy, understand:
|
||||
|
||||
1. **Business Context**
|
||||
@@ -24,26 +28,18 @@ Before designing a programmatic SEO strategy, understand:
|
||||
3. **Competitive Landscape**
|
||||
- Who ranks for these terms now?
|
||||
- What do their pages look like?
|
||||
- What would it take to beat them?
|
||||
- Can you realistically compete?
|
||||
|
||||
---
|
||||
|
||||
## Core Principles
|
||||
|
||||
### 1. Unique Value Per Page
|
||||
Every page must provide value specific to that page:
|
||||
- Unique data, insights, or combinations
|
||||
- Every page must provide value specific to that page
|
||||
- Not just swapped variables in a template
|
||||
- Maximize unique content—the more differentiated, the better
|
||||
- Avoid "thin content" penalties by adding real depth
|
||||
|
||||
### 2. Proprietary Data Wins
|
||||
The best pSEO uses data competitors can't easily replicate:
|
||||
- **Proprietary data**: Data you own or generate
|
||||
- **Product-derived data**: Insights from your product usage
|
||||
- **User-generated content**: Reviews, comments, submissions
|
||||
- **Aggregated insights**: Unique analysis of public data
|
||||
|
||||
Hierarchy of data defensibility:
|
||||
1. Proprietary (you created it)
|
||||
2. Product-derived (from your users)
|
||||
@@ -56,314 +52,55 @@ Hierarchy of data defensibility:
|
||||
- Good: `yoursite.com/templates/resume/`
|
||||
- Bad: `templates.yoursite.com/resume/`
|
||||
|
||||
Subfolders pass authority to your main domain. Subdomains are treated as separate sites by Google.
|
||||
|
||||
**URL best practices**:
|
||||
- Short, descriptive, keyword-rich
|
||||
- Consistent pattern across page type
|
||||
- No unnecessary parameters
|
||||
- Human-readable slugs
|
||||
|
||||
### 4. Genuine Search Intent Match
|
||||
Pages must actually answer what people are searching for:
|
||||
- Understand the intent behind each pattern
|
||||
- Provide the complete answer
|
||||
- Don't over-optimize for keywords at expense of usefulness
|
||||
Pages must actually answer what people are searching for.
|
||||
|
||||
### 5. Scalable Quality, Not Just Quantity
|
||||
- Quality standards must be maintained at scale
|
||||
- Better to have 100 great pages than 10,000 thin ones
|
||||
- Build quality checks into the process
|
||||
### 5. Quality Over Quantity
|
||||
Better to have 100 great pages than 10,000 thin ones.
|
||||
|
||||
### 6. Avoid Google Penalties
|
||||
- No doorway pages (thin pages that just funnel to main site)
|
||||
- No doorway pages
|
||||
- No keyword stuffing
|
||||
- No duplicate content across pages
|
||||
- No duplicate content
|
||||
- Genuine utility for users
|
||||
|
||||
---
|
||||
|
||||
## The 12 Programmatic SEO Playbooks
|
||||
|
||||
Beyond mixing and matching data point permutations, these are the proven playbooks for programmatic SEO:
|
||||
|
||||
### 1. Templates
|
||||
**Pattern**: "[Type] template" or "free [type] template"
|
||||
**Example searches**: "resume template", "invoice template", "pitch deck template"
|
||||
|
||||
**What it is**: Downloadable or interactive templates users can use directly.
|
||||
|
||||
**Why it works**:
|
||||
- High intent—people need it now
|
||||
- Shareable/linkable assets
|
||||
- Natural for product-led companies
|
||||
|
||||
**Value requirements**:
|
||||
- Actually usable templates (not just previews)
|
||||
- Multiple variations per type
|
||||
- Quality comparable to paid options
|
||||
- Easy download/use flow
|
||||
|
||||
**URL structure**: `/templates/[type]/` or `/templates/[category]/[type]/`
|
||||
|
||||
---
|
||||
|
||||
### 2. Curation
|
||||
**Pattern**: "best [category]" or "top [number] [things]"
|
||||
**Example searches**: "best website builders", "top 10 crm software", "best free design tools"
|
||||
|
||||
**What it is**: Curated lists ranking or recommending options in a category.
|
||||
|
||||
**Why it works**:
|
||||
- Comparison shoppers searching for guidance
|
||||
- High commercial intent
|
||||
- Evergreen with updates
|
||||
|
||||
**Value requirements**:
|
||||
- Genuine evaluation criteria
|
||||
- Real testing or expertise
|
||||
- Regular updates (date visible)
|
||||
- Not just affiliate-driven rankings
|
||||
|
||||
**URL structure**: `/best/[category]/` or `/[category]/best/`
|
||||
|
||||
---
|
||||
|
||||
### 3. Conversions
|
||||
**Pattern**: "[X] to [Y]" or "[amount] [unit] in [unit]"
|
||||
**Example searches**: "$10 USD to GBP", "100 kg to lbs", "pdf to word"
|
||||
|
||||
**What it is**: Tools or pages that convert between formats, units, or currencies.
|
||||
|
||||
**Why it works**:
|
||||
- Instant utility
|
||||
- Extremely high search volume
|
||||
- Repeat usage potential
|
||||
|
||||
**Value requirements**:
|
||||
- Accurate, real-time data
|
||||
- Fast, functional tool
|
||||
- Related conversions suggested
|
||||
- Mobile-friendly interface
|
||||
|
||||
**URL structure**: `/convert/[from]-to-[to]/` or `/[from]-to-[to]-converter/`
|
||||
|
||||
---
|
||||
|
||||
### 4. Comparisons
|
||||
**Pattern**: "[X] vs [Y]" or "[X] alternative"
|
||||
**Example searches**: "webflow vs wordpress", "notion vs coda", "figma alternatives"
|
||||
|
||||
**What it is**: Head-to-head comparisons between products, tools, or options.
|
||||
|
||||
**Why it works**:
|
||||
- High purchase intent
|
||||
- Clear search pattern
|
||||
- Scales with number of competitors
|
||||
|
||||
**Value requirements**:
|
||||
- Honest, balanced analysis
|
||||
- Actual feature comparison data
|
||||
- Clear recommendation by use case
|
||||
- Updated when products change
|
||||
|
||||
**URL structure**: `/compare/[x]-vs-[y]/` or `/[x]-vs-[y]/`
|
||||
|
||||
*See also: competitor-alternatives skill for detailed frameworks*
|
||||
|
||||
---
|
||||
|
||||
### 5. Examples
|
||||
**Pattern**: "[type] examples" or "[category] inspiration"
|
||||
**Example searches**: "saas landing page examples", "email subject line examples", "portfolio website examples"
|
||||
|
||||
**What it is**: Galleries or collections of real-world examples for inspiration.
|
||||
|
||||
**Why it works**:
|
||||
- Research phase traffic
|
||||
- Highly shareable
|
||||
- Natural for design/creative tools
|
||||
|
||||
**Value requirements**:
|
||||
- Real, high-quality examples
|
||||
- Screenshots or embeds
|
||||
- Categorization/filtering
|
||||
- Analysis of why they work
|
||||
|
||||
**URL structure**: `/examples/[type]/` or `/[type]-examples/`
|
||||
|
||||
---
|
||||
|
||||
### 6. Locations
|
||||
**Pattern**: "[service/thing] in [location]"
|
||||
**Example searches**: "coworking spaces in san diego", "dentists in austin", "best restaurants in brooklyn"
|
||||
|
||||
**What it is**: Location-specific pages for services, businesses, or information.
|
||||
|
||||
**Why it works**:
|
||||
- Local intent is massive
|
||||
- Scales with geography
|
||||
- Natural for marketplaces/directories
|
||||
|
||||
**Value requirements**:
|
||||
- Actual local data (not just city name swapped)
|
||||
- Local providers/options listed
|
||||
- Location-specific insights (pricing, regulations)
|
||||
- Map integration helpful
|
||||
|
||||
**URL structure**: `/[service]/[city]/` or `/locations/[city]/[service]/`
|
||||
|
||||
---
|
||||
|
||||
### 7. Personas
|
||||
**Pattern**: "[product] for [audience]" or "[solution] for [role/industry]"
|
||||
**Example searches**: "payroll software for agencies", "crm for real estate", "project management for freelancers"
|
||||
|
||||
**What it is**: Tailored landing pages addressing specific audience segments.
|
||||
|
||||
**Why it works**:
|
||||
- Speaks directly to searcher's context
|
||||
- Higher conversion than generic pages
|
||||
- Scales with personas
|
||||
|
||||
**Value requirements**:
|
||||
- Genuine persona-specific content
|
||||
- Relevant features highlighted
|
||||
- Testimonials from that segment
|
||||
- Use cases specific to audience
|
||||
|
||||
**URL structure**: `/for/[persona]/` or `/solutions/[industry]/`
|
||||
|
||||
---
|
||||
|
||||
### 8. Integrations
|
||||
**Pattern**: "[your product] [other product] integration" or "[product] + [product]"
|
||||
**Example searches**: "slack asana integration", "zapier airtable", "hubspot salesforce sync"
|
||||
|
||||
**What it is**: Pages explaining how your product works with other tools.
|
||||
|
||||
**Why it works**:
|
||||
- Captures users of other products
|
||||
- High intent (they want the solution)
|
||||
- Scales with integration ecosystem
|
||||
|
||||
**Value requirements**:
|
||||
- Real integration details
|
||||
- Setup instructions
|
||||
- Use cases for the combination
|
||||
- Working integration (not vaporware)
|
||||
|
||||
**URL structure**: `/integrations/[product]/` or `/connect/[product]/`
|
||||
|
||||
---
|
||||
|
||||
### 9. Glossary
|
||||
**Pattern**: "what is [term]" or "[term] definition" or "[term] meaning"
|
||||
**Example searches**: "what is pSEO", "api definition", "what does crm stand for"
|
||||
|
||||
**What it is**: Educational definitions of industry terms and concepts.
|
||||
|
||||
**Why it works**:
|
||||
- Top-of-funnel awareness
|
||||
- Establishes expertise
|
||||
- Natural internal linking opportunities
|
||||
|
||||
**Value requirements**:
|
||||
- Clear, accurate definitions
|
||||
- Examples and context
|
||||
- Related terms linked
|
||||
- More depth than a dictionary
|
||||
|
||||
**URL structure**: `/glossary/[term]/` or `/learn/[term]/`
|
||||
|
||||
---
|
||||
|
||||
### 10. Translations
|
||||
**Pattern**: Same content in multiple languages
|
||||
**Example searches**: "qué es pSEO", "was ist SEO", "マーケティングとは"
|
||||
|
||||
**What it is**: Your content translated and localized for other language markets.
|
||||
|
||||
**Why it works**:
|
||||
- Opens entirely new markets
|
||||
- Lower competition in many languages
|
||||
- Multiplies your content reach
|
||||
|
||||
**Value requirements**:
|
||||
- Quality translation (not just Google Translate)
|
||||
- Cultural localization
|
||||
- hreflang tags properly implemented
|
||||
- Native speaker review
|
||||
|
||||
**URL structure**: `/[lang]/[page]/` or `yoursite.com/es/`, `/de/`, etc.
|
||||
|
||||
---
|
||||
|
||||
### 11. Directory
|
||||
**Pattern**: "[category] tools" or "[type] software" or "[category] companies"
|
||||
**Example searches**: "ai copywriting tools", "email marketing software", "crm companies"
|
||||
|
||||
**What it is**: Comprehensive directories listing options in a category.
|
||||
|
||||
**Why it works**:
|
||||
- Research phase capture
|
||||
- Link building magnet
|
||||
- Natural for aggregators/reviewers
|
||||
|
||||
**Value requirements**:
|
||||
- Comprehensive coverage
|
||||
- Useful filtering/sorting
|
||||
- Details per listing (not just names)
|
||||
- Regular updates
|
||||
|
||||
**URL structure**: `/directory/[category]/` or `/[category]-directory/`
|
||||
|
||||
---
|
||||
|
||||
### 12. Profiles
|
||||
**Pattern**: "[person/company name]" or "[entity] + [attribute]"
|
||||
**Example searches**: "stripe ceo", "airbnb founding story", "elon musk companies"
|
||||
|
||||
**What it is**: Profile pages about notable people, companies, or entities.
|
||||
|
||||
**Why it works**:
|
||||
- Informational intent traffic
|
||||
- Builds topical authority
|
||||
- Natural for B2B, news, research
|
||||
|
||||
**Value requirements**:
|
||||
- Accurate, sourced information
|
||||
- Regularly updated
|
||||
- Unique insights or aggregation
|
||||
- Not just Wikipedia rehash
|
||||
|
||||
**URL structure**: `/people/[name]/` or `/companies/[name]/`
|
||||
## The 12 Playbooks (Overview)
|
||||
|
||||
| Playbook | Pattern | Example |
|
||||
|----------|---------|---------|
|
||||
| Templates | "[Type] template" | "resume template" |
|
||||
| Curation | "best [category]" | "best website builders" |
|
||||
| Conversions | "[X] to [Y]" | "$10 USD to GBP" |
|
||||
| Comparisons | "[X] vs [Y]" | "webflow vs wordpress" |
|
||||
| Examples | "[type] examples" | "landing page examples" |
|
||||
| Locations | "[service] in [location]" | "dentists in austin" |
|
||||
| Personas | "[product] for [audience]" | "crm for real estate" |
|
||||
| Integrations | "[product A] [product B] integration" | "slack asana integration" |
|
||||
| Glossary | "what is [term]" | "what is pSEO" |
|
||||
| Translations | Content in multiple languages | Localized content |
|
||||
| Directory | "[category] tools" | "ai copywriting tools" |
|
||||
| Profiles | "[entity name]" | "stripe ceo" |
|
||||
|
||||
**For detailed playbook implementation**: See [references/playbooks.md](references/playbooks.md)
|
||||
|
||||
---
|
||||
|
||||
## Choosing Your Playbook
|
||||
|
||||
### Match to Your Assets
|
||||
|
||||
| If you have... | Consider... |
|
||||
|----------------|-------------|
|
||||
| Proprietary data | Stats, Directories, Profiles |
|
||||
| Proprietary data | Directories, Profiles |
|
||||
| Product with integrations | Integrations |
|
||||
| Design/creative product | Templates, Examples |
|
||||
| Multi-segment audience | Personas |
|
||||
| Local presence | Locations |
|
||||
| Tool or utility product | Conversions |
|
||||
| Content/expertise | Glossary, Curation |
|
||||
| International potential | Translations |
|
||||
| Competitor landscape | Comparisons |
|
||||
|
||||
### Combine Playbooks
|
||||
|
||||
You can layer multiple playbooks:
|
||||
- **Locations + Personas**: "Marketing agencies for startups in Austin"
|
||||
- **Curation + Locations**: "Best coworking spaces in San Diego"
|
||||
- **Integrations + Personas**: "Slack for sales teams"
|
||||
- **Glossary + Translations**: Multi-language educational content
|
||||
You can layer multiple playbooks (e.g., "Best coworking spaces in San Diego").
|
||||
|
||||
---
|
||||
|
||||
@@ -371,126 +108,55 @@ You can layer multiple playbooks:
|
||||
|
||||
### 1. Keyword Pattern Research
|
||||
|
||||
**Identify the pattern**:
|
||||
**Identify the pattern:**
|
||||
- What's the repeating structure?
|
||||
- What are the variables?
|
||||
- How many unique combinations exist?
|
||||
|
||||
**Validate demand**:
|
||||
- Aggregate search volume for pattern
|
||||
**Validate demand:**
|
||||
- Aggregate search volume
|
||||
- Volume distribution (head vs. long tail)
|
||||
- Seasonal patterns
|
||||
- Trend direction
|
||||
|
||||
**Assess competition**:
|
||||
- Who ranks currently?
|
||||
- What's their content quality?
|
||||
- What's their domain authority?
|
||||
- Can you realistically compete?
|
||||
|
||||
### 2. Data Requirements
|
||||
|
||||
**Identify data sources**:
|
||||
**Identify data sources:**
|
||||
- What data populates each page?
|
||||
- Where does that data come from?
|
||||
- Is it first-party, scraped, licensed, public?
|
||||
- How is it updated?
|
||||
|
||||
**Data schema design**:
|
||||
```
|
||||
For "[Service] in [City]" pages:
|
||||
|
||||
city:
|
||||
- name
|
||||
- population
|
||||
- relevant_stats
|
||||
|
||||
service:
|
||||
- name
|
||||
- description
|
||||
- typical_pricing
|
||||
|
||||
local_providers:
|
||||
- name
|
||||
- rating
|
||||
- reviews_count
|
||||
- specialty
|
||||
|
||||
local_data:
|
||||
- regulations
|
||||
- average_prices
|
||||
- market_size
|
||||
```
|
||||
|
||||
### 3. Template Design
|
||||
|
||||
**Page structure**:
|
||||
**Page structure:**
|
||||
- Header with target keyword
|
||||
- Unique intro (not just variables swapped)
|
||||
- Data-driven sections
|
||||
- Related pages / internal links
|
||||
- CTAs appropriate to intent
|
||||
|
||||
**Ensuring uniqueness**:
|
||||
**Ensuring uniqueness:**
|
||||
- Each page needs unique value
|
||||
- Conditional content based on data
|
||||
- User-generated content where possible
|
||||
- Original insights/analysis per page
|
||||
|
||||
**Template example**:
|
||||
```
|
||||
H1: [Service] in [City]: [Year] Guide
|
||||
|
||||
Intro: [Dynamic paragraph using city stats + service context]
|
||||
|
||||
Section 1: Why [City] for [Service]
|
||||
[City-specific data and insights]
|
||||
|
||||
Section 2: Top [Service] Providers in [City]
|
||||
[Data-driven list with unique details]
|
||||
|
||||
Section 3: Pricing for [Service] in [City]
|
||||
[Local pricing data if available]
|
||||
|
||||
Section 4: FAQs about [Service] in [City]
|
||||
[Common questions with city-specific answers]
|
||||
|
||||
Related: [Service] in [Nearby Cities]
|
||||
```
|
||||
|
||||
### 4. Internal Linking Architecture
|
||||
|
||||
**Hub and spoke model**:
|
||||
**Hub and spoke model:**
|
||||
- Hub: Main category page
|
||||
- Spokes: Individual programmatic pages
|
||||
- Cross-links between related spokes
|
||||
|
||||
**Avoid orphan pages**:
|
||||
**Avoid orphan pages:**
|
||||
- Every page reachable from main site
|
||||
- Logical category structure
|
||||
- XML sitemap for all pages
|
||||
|
||||
**Breadcrumbs**:
|
||||
- Show hierarchy
|
||||
- Structured data markup
|
||||
- User navigation aid
|
||||
- Breadcrumbs with structured data
|
||||
|
||||
### 5. Indexation Strategy
|
||||
|
||||
**Prioritize important pages**:
|
||||
- Not all pages need to be indexed
|
||||
- Index high-volume patterns
|
||||
- Prioritize high-volume patterns
|
||||
- Noindex very thin variations
|
||||
|
||||
**Crawl budget management**:
|
||||
- Paginate thoughtfully
|
||||
- Avoid infinite crawl traps
|
||||
- Use robots.txt wisely
|
||||
|
||||
**Sitemap strategy**:
|
||||
- Manage crawl budget thoughtfully
|
||||
- Separate sitemaps by page type
|
||||
- Monitor indexation rate
|
||||
- Prioritize by importance
|
||||
|
||||
---
|
||||
|
||||
@@ -498,129 +164,73 @@ Related: [Service] in [Nearby Cities]
|
||||
|
||||
### Pre-Launch Checklist
|
||||
|
||||
**Content quality**:
|
||||
**Content quality:**
|
||||
- [ ] Each page provides unique value
|
||||
- [ ] Not just variable substitution
|
||||
- [ ] Answers search intent
|
||||
- [ ] Readable and useful
|
||||
|
||||
**Technical SEO**:
|
||||
**Technical SEO:**
|
||||
- [ ] Unique titles and meta descriptions
|
||||
- [ ] Proper heading structure
|
||||
- [ ] Schema markup implemented
|
||||
- [ ] Canonical tags correct
|
||||
- [ ] Page speed acceptable
|
||||
|
||||
**Internal linking**:
|
||||
**Internal linking:**
|
||||
- [ ] Connected to site architecture
|
||||
- [ ] Related pages linked
|
||||
- [ ] No orphan pages
|
||||
- [ ] Breadcrumbs implemented
|
||||
|
||||
**Indexation**:
|
||||
**Indexation:**
|
||||
- [ ] In XML sitemap
|
||||
- [ ] Crawlable
|
||||
- [ ] Not blocked by robots.txt
|
||||
- [ ] No conflicting noindex
|
||||
|
||||
### Monitoring Post-Launch
|
||||
### Post-Launch Monitoring
|
||||
|
||||
**Track**:
|
||||
- Indexation rate
|
||||
- Rankings by page pattern
|
||||
- Traffic by page pattern
|
||||
- Engagement metrics
|
||||
- Conversion rate
|
||||
Track: Indexation rate, Rankings, Traffic, Engagement, Conversion
|
||||
|
||||
**Watch for**:
|
||||
- Thin content warnings in Search Console
|
||||
- Ranking drops
|
||||
- Manual actions
|
||||
- Crawl errors
|
||||
Watch for: Thin content warnings, Ranking drops, Manual actions, Crawl errors
|
||||
|
||||
---
|
||||
|
||||
## Common Mistakes to Avoid
|
||||
## Common Mistakes
|
||||
|
||||
### Thin Content
|
||||
- Just swapping city names in identical content
|
||||
- No unique information per page
|
||||
- "Doorway pages" that just redirect
|
||||
|
||||
### Keyword Cannibalization
|
||||
- Multiple pages targeting same keyword
|
||||
- No clear hierarchy
|
||||
- Competing with yourself
|
||||
|
||||
### Over-Generation
|
||||
- Creating pages with no search demand
|
||||
- Too many low-quality pages dilute authority
|
||||
- Quantity over quality
|
||||
|
||||
### Poor Data Quality
|
||||
- Outdated information
|
||||
- Incorrect data
|
||||
- Missing data showing as blank
|
||||
|
||||
### Ignoring User Experience
|
||||
- Pages exist for Google, not users
|
||||
- No conversion path
|
||||
- Bouncy, unhelpful content
|
||||
- **Thin content**: Just swapping city names in identical content
|
||||
- **Keyword cannibalization**: Multiple pages targeting same keyword
|
||||
- **Over-generation**: Creating pages with no search demand
|
||||
- **Poor data quality**: Outdated or incorrect information
|
||||
- **Ignoring UX**: Pages exist for Google, not users
|
||||
|
||||
---
|
||||
|
||||
## Output Format
|
||||
|
||||
### Strategy Document
|
||||
|
||||
**Opportunity Analysis**:
|
||||
- Keyword pattern identified
|
||||
- Search volume estimates
|
||||
- Competition assessment
|
||||
- Feasibility rating
|
||||
|
||||
**Implementation Plan**:
|
||||
- Data requirements and sources
|
||||
- Template structure
|
||||
- Number of pages (phases)
|
||||
- Internal linking plan
|
||||
- Technical requirements
|
||||
|
||||
**Content Guidelines**:
|
||||
- What makes each page unique
|
||||
- Quality standards
|
||||
- Update frequency
|
||||
- Opportunity analysis
|
||||
- Implementation plan
|
||||
- Content guidelines
|
||||
|
||||
### Page Template
|
||||
|
||||
**URL structure**: `/category/variable/`
|
||||
**Title template**: [Variable] + [Static] + [Brand]
|
||||
**Meta description template**: [Pattern with variables]
|
||||
**H1 template**: [Pattern]
|
||||
**Content outline**: Section by section
|
||||
**Schema markup**: Type and required fields
|
||||
|
||||
### Launch Checklist
|
||||
|
||||
Specific pre-launch checks for this implementation
|
||||
- URL structure
|
||||
- Title/meta templates
|
||||
- Content outline
|
||||
- Schema markup
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What keyword patterns are you targeting?
|
||||
2. What data do you have (or can acquire)?
|
||||
3. How many pages are you planning to create?
|
||||
3. How many pages are you planning?
|
||||
4. What does your site authority look like?
|
||||
5. Who currently ranks for these terms?
|
||||
6. What's your technical stack for generating pages?
|
||||
6. What's your technical stack?
|
||||
|
||||
---
|
||||
|
||||
## Related Skills
|
||||
|
||||
- **seo-audit**: For auditing programmatic pages after launch
|
||||
- **schema-markup**: For adding structured data to templates
|
||||
- **copywriting**: For the non-templated copy portions
|
||||
- **analytics-tracking**: For measuring programmatic page performance
|
||||
- **schema-markup**: For adding structured data
|
||||
- **competitor-alternatives**: For comparison page frameworks
|
||||
|
||||
293
skills/programmatic-seo/references/playbooks.md
Normal file
293
skills/programmatic-seo/references/playbooks.md
Normal file
@@ -0,0 +1,293 @@
|
||||
# The 12 Programmatic SEO Playbooks
|
||||
|
||||
Beyond mixing and matching data point permutations, these are the proven playbooks for programmatic SEO.
|
||||
|
||||
## 1. Templates
|
||||
|
||||
**Pattern**: "[Type] template" or "free [type] template"
|
||||
**Example searches**: "resume template", "invoice template", "pitch deck template"
|
||||
|
||||
**What it is**: Downloadable or interactive templates users can use directly.
|
||||
|
||||
**Why it works**:
|
||||
- High intent—people need it now
|
||||
- Shareable/linkable assets
|
||||
- Natural for product-led companies
|
||||
|
||||
**Value requirements**:
|
||||
- Actually usable templates (not just previews)
|
||||
- Multiple variations per type
|
||||
- Quality comparable to paid options
|
||||
- Easy download/use flow
|
||||
|
||||
**URL structure**: `/templates/[type]/` or `/templates/[category]/[type]/`
|
||||
|
||||
---
|
||||
|
||||
## 2. Curation
|
||||
|
||||
**Pattern**: "best [category]" or "top [number] [things]"
|
||||
**Example searches**: "best website builders", "top 10 crm software", "best free design tools"
|
||||
|
||||
**What it is**: Curated lists ranking or recommending options in a category.
|
||||
|
||||
**Why it works**:
|
||||
- Comparison shoppers searching for guidance
|
||||
- High commercial intent
|
||||
- Evergreen with updates
|
||||
|
||||
**Value requirements**:
|
||||
- Genuine evaluation criteria
|
||||
- Real testing or expertise
|
||||
- Regular updates (date visible)
|
||||
- Not just affiliate-driven rankings
|
||||
|
||||
**URL structure**: `/best/[category]/` or `/[category]/best/`
|
||||
|
||||
---
|
||||
|
||||
## 3. Conversions
|
||||
|
||||
**Pattern**: "[X] to [Y]" or "[amount] [unit] in [unit]"
|
||||
**Example searches**: "$10 USD to GBP", "100 kg to lbs", "pdf to word"
|
||||
|
||||
**What it is**: Tools or pages that convert between formats, units, or currencies.
|
||||
|
||||
**Why it works**:
|
||||
- Instant utility
|
||||
- Extremely high search volume
|
||||
- Repeat usage potential
|
||||
|
||||
**Value requirements**:
|
||||
- Accurate, real-time data
|
||||
- Fast, functional tool
|
||||
- Related conversions suggested
|
||||
- Mobile-friendly interface
|
||||
|
||||
**URL structure**: `/convert/[from]-to-[to]/` or `/[from]-to-[to]-converter/`
|
||||
|
||||
---
|
||||
|
||||
## 4. Comparisons
|
||||
|
||||
**Pattern**: "[X] vs [Y]" or "[X] alternative"
|
||||
**Example searches**: "webflow vs wordpress", "notion vs coda", "figma alternatives"
|
||||
|
||||
**What it is**: Head-to-head comparisons between products, tools, or options.
|
||||
|
||||
**Why it works**:
|
||||
- High purchase intent
|
||||
- Clear search pattern
|
||||
- Scales with number of competitors
|
||||
|
||||
**Value requirements**:
|
||||
- Honest, balanced analysis
|
||||
- Actual feature comparison data
|
||||
- Clear recommendation by use case
|
||||
- Updated when products change
|
||||
|
||||
**URL structure**: `/compare/[x]-vs-[y]/` or `/[x]-vs-[y]/`
|
||||
|
||||
*See also: competitor-alternatives skill for detailed frameworks*
|
||||
|
||||
---
|
||||
|
||||
## 5. Examples
|
||||
|
||||
**Pattern**: "[type] examples" or "[category] inspiration"
|
||||
**Example searches**: "saas landing page examples", "email subject line examples", "portfolio website examples"
|
||||
|
||||
**What it is**: Galleries or collections of real-world examples for inspiration.
|
||||
|
||||
**Why it works**:
|
||||
- Research phase traffic
|
||||
- Highly shareable
|
||||
- Natural for design/creative tools
|
||||
|
||||
**Value requirements**:
|
||||
- Real, high-quality examples
|
||||
- Screenshots or embeds
|
||||
- Categorization/filtering
|
||||
- Analysis of why they work
|
||||
|
||||
**URL structure**: `/examples/[type]/` or `/[type]-examples/`
|
||||
|
||||
---
|
||||
|
||||
## 6. Locations
|
||||
|
||||
**Pattern**: "[service/thing] in [location]"
|
||||
**Example searches**: "coworking spaces in san diego", "dentists in austin", "best restaurants in brooklyn"
|
||||
|
||||
**What it is**: Location-specific pages for services, businesses, or information.
|
||||
|
||||
**Why it works**:
|
||||
- Local intent is massive
|
||||
- Scales with geography
|
||||
- Natural for marketplaces/directories
|
||||
|
||||
**Value requirements**:
|
||||
- Actual local data (not just city name swapped)
|
||||
- Local providers/options listed
|
||||
- Location-specific insights (pricing, regulations)
|
||||
- Map integration helpful
|
||||
|
||||
**URL structure**: `/[service]/[city]/` or `/locations/[city]/[service]/`
|
||||
|
||||
---
|
||||
|
||||
## 7. Personas
|
||||
|
||||
**Pattern**: "[product] for [audience]" or "[solution] for [role/industry]"
|
||||
**Example searches**: "payroll software for agencies", "crm for real estate", "project management for freelancers"
|
||||
|
||||
**What it is**: Tailored landing pages addressing specific audience segments.
|
||||
|
||||
**Why it works**:
|
||||
- Speaks directly to searcher's context
|
||||
- Higher conversion than generic pages
|
||||
- Scales with personas
|
||||
|
||||
**Value requirements**:
|
||||
- Genuine persona-specific content
|
||||
- Relevant features highlighted
|
||||
- Testimonials from that segment
|
||||
- Use cases specific to audience
|
||||
|
||||
**URL structure**: `/for/[persona]/` or `/solutions/[industry]/`
|
||||
|
||||
---
|
||||
|
||||
## 8. Integrations
|
||||
|
||||
**Pattern**: "[your product] [other product] integration" or "[product] + [product]"
|
||||
**Example searches**: "slack asana integration", "zapier airtable", "hubspot salesforce sync"
|
||||
|
||||
**What it is**: Pages explaining how your product works with other tools.
|
||||
|
||||
**Why it works**:
|
||||
- Captures users of other products
|
||||
- High intent (they want the solution)
|
||||
- Scales with integration ecosystem
|
||||
|
||||
**Value requirements**:
|
||||
- Real integration details
|
||||
- Setup instructions
|
||||
- Use cases for the combination
|
||||
- Working integration (not vaporware)
|
||||
|
||||
**URL structure**: `/integrations/[product]/` or `/connect/[product]/`
|
||||
|
||||
---
|
||||
|
||||
## 9. Glossary
|
||||
|
||||
**Pattern**: "what is [term]" or "[term] definition" or "[term] meaning"
|
||||
**Example searches**: "what is pSEO", "api definition", "what does crm stand for"
|
||||
|
||||
**What it is**: Educational definitions of industry terms and concepts.
|
||||
|
||||
**Why it works**:
|
||||
- Top-of-funnel awareness
|
||||
- Establishes expertise
|
||||
- Natural internal linking opportunities
|
||||
|
||||
**Value requirements**:
|
||||
- Clear, accurate definitions
|
||||
- Examples and context
|
||||
- Related terms linked
|
||||
- More depth than a dictionary
|
||||
|
||||
**URL structure**: `/glossary/[term]/` or `/learn/[term]/`
|
||||
|
||||
---
|
||||
|
||||
## 10. Translations
|
||||
|
||||
**Pattern**: Same content in multiple languages
|
||||
**Example searches**: "qué es pSEO", "was ist SEO", "マーケティングとは"
|
||||
|
||||
**What it is**: Your content translated and localized for other language markets.
|
||||
|
||||
**Why it works**:
|
||||
- Opens entirely new markets
|
||||
- Lower competition in many languages
|
||||
- Multiplies your content reach
|
||||
|
||||
**Value requirements**:
|
||||
- Quality translation (not just Google Translate)
|
||||
- Cultural localization
|
||||
- hreflang tags properly implemented
|
||||
- Native speaker review
|
||||
|
||||
**URL structure**: `/[lang]/[page]/` or `yoursite.com/es/`, `/de/`, etc.
|
||||
|
||||
---
|
||||
|
||||
## 11. Directory
|
||||
|
||||
**Pattern**: "[category] tools" or "[type] software" or "[category] companies"
|
||||
**Example searches**: "ai copywriting tools", "email marketing software", "crm companies"
|
||||
|
||||
**What it is**: Comprehensive directories listing options in a category.
|
||||
|
||||
**Why it works**:
|
||||
- Research phase capture
|
||||
- Link building magnet
|
||||
- Natural for aggregators/reviewers
|
||||
|
||||
**Value requirements**:
|
||||
- Comprehensive coverage
|
||||
- Useful filtering/sorting
|
||||
- Details per listing (not just names)
|
||||
- Regular updates
|
||||
|
||||
**URL structure**: `/directory/[category]/` or `/[category]-directory/`
|
||||
|
||||
---
|
||||
|
||||
## 12. Profiles
|
||||
|
||||
**Pattern**: "[person/company name]" or "[entity] + [attribute]"
|
||||
**Example searches**: "stripe ceo", "airbnb founding story", "elon musk companies"
|
||||
|
||||
**What it is**: Profile pages about notable people, companies, or entities.
|
||||
|
||||
**Why it works**:
|
||||
- Informational intent traffic
|
||||
- Builds topical authority
|
||||
- Natural for B2B, news, research
|
||||
|
||||
**Value requirements**:
|
||||
- Accurate, sourced information
|
||||
- Regularly updated
|
||||
- Unique insights or aggregation
|
||||
- Not just Wikipedia rehash
|
||||
|
||||
**URL structure**: `/people/[name]/` or `/companies/[name]/`
|
||||
|
||||
---
|
||||
|
||||
## Choosing Your Playbook
|
||||
|
||||
### Match to Your Assets
|
||||
|
||||
| If you have... | Consider... |
|
||||
|----------------|-------------|
|
||||
| Proprietary data | Stats, Directories, Profiles |
|
||||
| Product with integrations | Integrations |
|
||||
| Design/creative product | Templates, Examples |
|
||||
| Multi-segment audience | Personas |
|
||||
| Local presence | Locations |
|
||||
| Tool or utility product | Conversions |
|
||||
| Content/expertise | Glossary, Curation |
|
||||
| International potential | Translations |
|
||||
| Competitor landscape | Comparisons |
|
||||
|
||||
### Combine Playbooks
|
||||
|
||||
You can layer multiple playbooks:
|
||||
- **Locations + Personas**: "Marketing agencies for startups in Austin"
|
||||
- **Curation + Locations**: "Best coworking spaces in San Diego"
|
||||
- **Integrations + Personas**: "Slack for sales teams"
|
||||
- **Glossary + Translations**: Multi-language educational content
|
||||
@@ -1,56 +1,54 @@
|
||||
---
|
||||
name: referral-program
|
||||
version: 1.0.0
|
||||
description: "When the user wants to create, optimize, or analyze a referral program, affiliate program, or word-of-mouth strategy. Also use when the user mentions 'referral,' 'affiliate,' 'ambassador,' 'word of mouth,' 'viral loop,' 'refer a friend,' or 'partner program.' This skill covers program design, incentive structure, and growth optimization."
|
||||
---
|
||||
|
||||
# Referral & Affiliate Programs
|
||||
|
||||
You are an expert in viral growth and referral marketing with access to referral program data and third-party tools. Your goal is to help design and optimize programs that turn customers into growth engines.
|
||||
You are an expert in viral growth and referral marketing. Your goal is to help design and optimize programs that turn customers into growth engines.
|
||||
|
||||
## Before Starting
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Gather this context (ask if not provided):
|
||||
|
||||
### 1. Program Type
|
||||
- Are you building a customer referral program, affiliate program, or both?
|
||||
- Is this B2B or B2C?
|
||||
- What's the average customer value (LTV)?
|
||||
- Customer referral program, affiliate program, or both?
|
||||
- B2B or B2C?
|
||||
- What's the average customer LTV?
|
||||
- What's your current CAC from other channels?
|
||||
|
||||
### 2. Current State
|
||||
- Do you have an existing referral/affiliate program?
|
||||
- What's your current referral rate (% of customers who refer)?
|
||||
- Existing referral/affiliate program?
|
||||
- Current referral rate (% who refer)?
|
||||
- What incentives have you tried?
|
||||
- Do you have customer NPS or satisfaction data?
|
||||
|
||||
### 3. Product Fit
|
||||
- Is your product shareable? (Does using it involve others?)
|
||||
- Does your product have network effects?
|
||||
- Do customers naturally talk about your product?
|
||||
- What triggers word-of-mouth currently?
|
||||
- Is your product shareable?
|
||||
- Does it have network effects?
|
||||
- Do customers naturally talk about it?
|
||||
|
||||
### 4. Resources
|
||||
- What tools/platforms do you use or consider?
|
||||
- What's your budget for referral incentives?
|
||||
- Do you have engineering resources for custom implementation?
|
||||
- Tools/platforms you use or consider?
|
||||
- Budget for referral incentives?
|
||||
|
||||
---
|
||||
|
||||
## Referral vs. Affiliate: When to Use Each
|
||||
## Referral vs. Affiliate
|
||||
|
||||
### Customer Referral Programs
|
||||
|
||||
**Best for:**
|
||||
- Existing customers recommending to their network
|
||||
- Products with natural word-of-mouth
|
||||
- Building authentic social proof
|
||||
- Lower-ticket or self-serve products
|
||||
|
||||
**Characteristics:**
|
||||
- Referrer is an existing customer
|
||||
- Motivation: Rewards + helping friends
|
||||
- Typically one-time or limited rewards
|
||||
- Tracked via unique links or codes
|
||||
- One-time or limited rewards
|
||||
- Higher trust, lower volume
|
||||
|
||||
### Affiliate Programs
|
||||
@@ -58,22 +56,13 @@ Gather this context (ask if not provided):
|
||||
**Best for:**
|
||||
- Reaching audiences you don't have access to
|
||||
- Content creators, influencers, bloggers
|
||||
- Products with clear value proposition
|
||||
- Higher-ticket products that justify commissions
|
||||
|
||||
**Characteristics:**
|
||||
- Affiliates may not be customers
|
||||
- Motivation: Revenue/commission
|
||||
- Ongoing commission relationship
|
||||
- Requires more management
|
||||
- Higher volume, variable trust
|
||||
|
||||
### Hybrid Approach
|
||||
|
||||
Many successful programs combine both:
|
||||
- Referral program for customers (simple, small rewards)
|
||||
- Affiliate program for partners (larger commissions, more structure)
|
||||
|
||||
---
|
||||
|
||||
## Referral Program Design
|
||||
@@ -81,267 +70,35 @@ Many successful programs combine both:
|
||||
### The Referral Loop
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────┐
|
||||
│ │
|
||||
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
|
||||
│ │ Trigger │───▶│ Share │───▶│ Convert │ │
|
||||
│ │ Moment │ │ Action │ │ Referred │ │
|
||||
│ └──────────┘ └──────────┘ └──────────┘ │
|
||||
│ ▲ │ │
|
||||
│ │ │ │
|
||||
│ └───────────────────────────────┘ │
|
||||
│ Reward │
|
||||
└─────────────────────────────────────────────────────┘
|
||||
Trigger Moment → Share Action → Convert Referred → Reward → (Loop)
|
||||
```
|
||||
|
||||
### Step 1: Identify Trigger Moments
|
||||
|
||||
When are customers most likely to refer?
|
||||
|
||||
**High-intent moments:**
|
||||
- Right after first "aha" moment
|
||||
- After achieving a milestone
|
||||
- After receiving exceptional support
|
||||
- After exceptional support
|
||||
- After renewing or upgrading
|
||||
- When they tell you they love the product
|
||||
|
||||
**Natural sharing moments:**
|
||||
- When the product involves collaboration
|
||||
- When they're asked "what tool do you use?"
|
||||
- When they share results publicly
|
||||
- When they complete something shareable
|
||||
### Step 2: Design Share Mechanism
|
||||
|
||||
### Step 2: Design the Share Mechanism
|
||||
|
||||
**Methods ranked by effectiveness:**
|
||||
|
||||
1. **In-product sharing** — Highest conversion, feels native
|
||||
2. **Personalized link** — Easy to track, works everywhere
|
||||
3. **Email invitation** — Direct, personal, higher intent
|
||||
4. **Social sharing** — Broadest reach, lowest conversion
|
||||
5. **Referral code** — Memorable, works offline
|
||||
|
||||
**Best practice:** Offer multiple sharing options, lead with the highest-converting method.
|
||||
**Ranked by effectiveness:**
|
||||
1. In-product sharing (highest conversion)
|
||||
2. Personalized link
|
||||
3. Email invitation
|
||||
4. Social sharing
|
||||
5. Referral code (works offline)
|
||||
|
||||
### Step 3: Choose Incentive Structure
|
||||
|
||||
**Single-sided rewards** (referrer only):
|
||||
- Simpler to explain
|
||||
- Works for high-value products
|
||||
- Risk: Referred may feel no urgency
|
||||
**Single-sided rewards** (referrer only): Simpler, works for high-value products
|
||||
|
||||
**Double-sided rewards** (both parties):
|
||||
- Higher conversion rates
|
||||
- Creates win-win framing
|
||||
- Standard for most programs
|
||||
**Double-sided rewards** (both parties): Higher conversion, win-win framing
|
||||
|
||||
**Tiered rewards:**
|
||||
- Increases engagement over time
|
||||
- Gamifies the referral process
|
||||
- More complex to communicate
|
||||
**Tiered rewards**: Gamifies referral process, increases engagement
|
||||
|
||||
### Incentive Types
|
||||
|
||||
| Type | Pros | Cons | Best For |
|
||||
|------|------|------|----------|
|
||||
| Cash/credit | Universally valued | Feels transactional | Marketplaces, fintech |
|
||||
| Product credit | Drives usage | Only valuable if they'll use it | SaaS, subscriptions |
|
||||
| Free months | Clear value | May attract freebie-seekers | Subscription products |
|
||||
| Feature unlock | Low cost to you | Only works for gated features | Freemium products |
|
||||
| Swag/gifts | Memorable, shareable | Logistics complexity | Brand-focused companies |
|
||||
| Charity donation | Feel-good | Lower personal motivation | Mission-driven brands |
|
||||
|
||||
### Incentive Sizing Framework
|
||||
|
||||
**Calculate your maximum incentive:**
|
||||
```
|
||||
Max Referral Reward = (Customer LTV × Gross Margin) - Target CAC
|
||||
```
|
||||
|
||||
**Example:**
|
||||
- LTV: $1,200
|
||||
- Gross margin: 70%
|
||||
- Target CAC: $200
|
||||
- Max reward: ($1,200 × 0.70) - $200 = $640
|
||||
|
||||
**Typical referral rewards:**
|
||||
- B2C: $10-50 or 10-25% of first purchase
|
||||
- B2B SaaS: $50-500 or 1-3 months free
|
||||
- Enterprise: Higher, often custom
|
||||
|
||||
---
|
||||
|
||||
## Referral Program Examples
|
||||
|
||||
### Dropbox (Classic)
|
||||
|
||||
**Program:** Give 500MB storage, get 500MB storage
|
||||
**Why it worked:**
|
||||
- Reward directly tied to product value
|
||||
- Low friction (just an email)
|
||||
- Both parties benefit equally
|
||||
- Gamified with progress tracking
|
||||
|
||||
### Uber/Lyft
|
||||
|
||||
**Program:** Give $10 ride credit, get $10 when they ride
|
||||
**Why it worked:**
|
||||
- Immediate, clear value
|
||||
- Double-sided incentive
|
||||
- Easy to share (code/link)
|
||||
- Triggered at natural moments
|
||||
|
||||
### Morning Brew
|
||||
|
||||
**Program:** Tiered rewards for subscriber referrals
|
||||
- 3 referrals: Newsletter stickers
|
||||
- 5 referrals: T-shirt
|
||||
- 10 referrals: Mug
|
||||
- 25 referrals: Hoodie
|
||||
|
||||
**Why it worked:**
|
||||
- Gamification drives ongoing engagement
|
||||
- Physical rewards are shareable (more referrals)
|
||||
- Low cost relative to subscriber value
|
||||
- Built status/identity
|
||||
|
||||
### Notion
|
||||
|
||||
**Program:** $10 credit per referral (education)
|
||||
**Why it worked:**
|
||||
- Targeted high-sharing audience (students)
|
||||
- Product naturally spreads in teams
|
||||
- Credit keeps users engaged
|
||||
|
||||
---
|
||||
|
||||
## Affiliate Program Design
|
||||
|
||||
### Commission Structures
|
||||
|
||||
**Percentage of sale:**
|
||||
- Standard: 10-30% of first sale or first year
|
||||
- Works for: E-commerce, SaaS with clear pricing
|
||||
- Example: "Earn 25% of every sale you refer"
|
||||
|
||||
**Flat fee per action:**
|
||||
- Standard: $5-500 depending on value
|
||||
- Works for: Lead gen, trials, freemium
|
||||
- Example: "$50 for every qualified demo"
|
||||
|
||||
**Recurring commission:**
|
||||
- Standard: 10-25% of recurring revenue
|
||||
- Works for: Subscription products
|
||||
- Example: "20% of subscription for 12 months"
|
||||
|
||||
**Tiered commission:**
|
||||
- Works for: Motivating high performers
|
||||
- Example: "20% for 1-10 sales, 25% for 11-25, 30% for 26+"
|
||||
|
||||
### Cookie Duration
|
||||
|
||||
How long after click does affiliate get credit?
|
||||
|
||||
| Duration | Use Case |
|
||||
|----------|----------|
|
||||
| 24 hours | High-volume, low-consideration purchases |
|
||||
| 7-14 days | Standard e-commerce |
|
||||
| 30 days | Standard SaaS/B2B |
|
||||
| 60-90 days | Long sales cycles, enterprise |
|
||||
| Lifetime | Premium affiliate relationships |
|
||||
|
||||
### Affiliate Recruitment
|
||||
|
||||
**Where to find affiliates:**
|
||||
- Existing customers who create content
|
||||
- Industry bloggers and reviewers
|
||||
- YouTubers in your niche
|
||||
- Newsletter writers
|
||||
- Complementary tool companies
|
||||
- Consultants and agencies
|
||||
|
||||
**Outreach template:**
|
||||
```
|
||||
Subject: Partnership opportunity — [Your Product]
|
||||
|
||||
Hi [Name],
|
||||
|
||||
I've been following your content on [topic] — particularly [specific piece] — and think there could be a great fit for a partnership.
|
||||
|
||||
[Your Product] helps [audience] [achieve outcome], and I think your audience would find it valuable.
|
||||
|
||||
We offer [commission structure] for partners, plus [additional benefits: early access, co-marketing, etc.].
|
||||
|
||||
Would you be open to learning more?
|
||||
|
||||
[Your name]
|
||||
```
|
||||
|
||||
### Affiliate Enablement
|
||||
|
||||
Provide affiliates with:
|
||||
- [ ] Unique tracking links/codes
|
||||
- [ ] Product overview and key benefits
|
||||
- [ ] Target audience description
|
||||
- [ ] Comparison to competitors
|
||||
- [ ] Creative assets (logos, banners, images)
|
||||
- [ ] Sample copy and talking points
|
||||
- [ ] Case studies and testimonials
|
||||
- [ ] Demo access or free account
|
||||
- [ ] FAQ and objection handling
|
||||
- [ ] Payment terms and schedule
|
||||
|
||||
---
|
||||
|
||||
## Viral Coefficient & Modeling
|
||||
|
||||
### Key Metrics
|
||||
|
||||
**Viral coefficient (K-factor):**
|
||||
```
|
||||
K = Invitations × Conversion Rate
|
||||
|
||||
K > 1 = Viral growth (each user brings more than 1 new user)
|
||||
K < 1 = Amplified growth (referrals supplement other acquisition)
|
||||
```
|
||||
|
||||
**Example:**
|
||||
- Average customer sends 3 invitations
|
||||
- 15% of invitations convert
|
||||
- K = 3 × 0.15 = 0.45
|
||||
|
||||
**Referral rate:**
|
||||
```
|
||||
Referral Rate = (Customers who refer) / (Total customers)
|
||||
```
|
||||
|
||||
Benchmarks:
|
||||
- Good: 10-25% of customers refer
|
||||
- Great: 25-50%
|
||||
- Exceptional: 50%+
|
||||
|
||||
**Referrals per referrer:**
|
||||
```
|
||||
How many successful referrals does each referring customer generate?
|
||||
```
|
||||
|
||||
Benchmarks:
|
||||
- Average: 1-2 referrals per referrer
|
||||
- Good: 2-5
|
||||
- Exceptional: 5+
|
||||
|
||||
### Calculating Referral Program ROI
|
||||
|
||||
```
|
||||
Referral Program ROI = (Revenue from referred customers - Program costs) / Program costs
|
||||
|
||||
Program costs = Rewards paid + Tool costs + Management time
|
||||
```
|
||||
|
||||
**Track separately:**
|
||||
- Cost per referred customer (CAC via referral)
|
||||
- LTV of referred customers (often higher than average)
|
||||
- Payback period for referral rewards
|
||||
**For examples and incentive sizing**: See [references/program-examples.md](references/program-examples.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -350,178 +107,42 @@ Program costs = Rewards paid + Tool costs + Management time
|
||||
### Improving Referral Rate
|
||||
|
||||
**If few customers are referring:**
|
||||
- Ask at better moments (after wins, not randomly)
|
||||
- Simplify the sharing process
|
||||
- Ask at better moments
|
||||
- Simplify sharing process
|
||||
- Test different incentive types
|
||||
- Make the referral prominent in product
|
||||
- Remind via email campaigns
|
||||
- Reduce friction in the flow
|
||||
- Make referral prominent in product
|
||||
|
||||
**If referrals aren't converting:**
|
||||
- Improve the landing experience for referred users
|
||||
- Strengthen the incentive for new users
|
||||
- Test different messaging on referral pages
|
||||
- Ensure the referrer's endorsement is visible
|
||||
- Shorten the path to value
|
||||
- Improve landing experience for referred users
|
||||
- Strengthen incentive for new users
|
||||
- Ensure referrer's endorsement is visible
|
||||
|
||||
### A/B Tests to Run
|
||||
|
||||
**Incentive tests:**
|
||||
- Reward amount (10% higher, 20% higher)
|
||||
- Reward type (credit vs. cash vs. free months)
|
||||
- Single vs. double-sided
|
||||
- Immediate vs. delayed reward
|
||||
**Incentive tests:** Amount, type, single vs. double-sided, timing
|
||||
|
||||
**Messaging tests:**
|
||||
- How you describe the program
|
||||
- CTA copy on share buttons
|
||||
- Email subject lines for referral invites
|
||||
- Landing page copy for referred users
|
||||
**Messaging tests:** Program description, CTA copy, landing page copy
|
||||
|
||||
**Placement tests:**
|
||||
- Where the referral prompt appears
|
||||
- When it appears (trigger timing)
|
||||
- How prominent it is
|
||||
- In-app vs. email prompts
|
||||
**Placement tests:** Where and when the referral prompt appears
|
||||
|
||||
### Common Problems & Fixes
|
||||
|
||||
| Problem | Likely Cause | Fix |
|
||||
|---------|--------------|-----|
|
||||
| Low awareness | Program not visible | Add prominent in-app prompts |
|
||||
| Low share rate | Too much friction | Simplify to one click |
|
||||
| Low conversion | Weak landing page | Optimize referred user experience |
|
||||
| Fraud/abuse | Gaming the system | Add verification, limits |
|
||||
| One-time referrers | No ongoing motivation | Add tiered/gamified rewards |
|
||||
|
||||
---
|
||||
|
||||
## Fraud Prevention
|
||||
|
||||
### Common Referral Fraud
|
||||
|
||||
- Self-referrals (creating fake accounts)
|
||||
- Referral rings (groups referring each other)
|
||||
- Coupon sites posting referral codes
|
||||
- Fake email addresses
|
||||
- VPN/device spoofing
|
||||
|
||||
### Prevention Measures
|
||||
|
||||
**Technical:**
|
||||
- Email verification required
|
||||
- Device fingerprinting
|
||||
- IP address monitoring
|
||||
- Delayed reward payout (after activation)
|
||||
- Minimum activity threshold
|
||||
|
||||
**Policy:**
|
||||
- Clear terms of service
|
||||
- Maximum referrals per period
|
||||
- Reward clawback for refunds/chargebacks
|
||||
- Manual review for suspicious patterns
|
||||
|
||||
**Structural:**
|
||||
- Require referred user to take meaningful action
|
||||
- Cap lifetime rewards
|
||||
- Pay rewards in product credit (less attractive to fraudsters)
|
||||
|
||||
---
|
||||
|
||||
## Tools & Platforms
|
||||
|
||||
### Referral Program Tools
|
||||
|
||||
**Full-featured platforms:**
|
||||
- ReferralCandy — E-commerce focused
|
||||
- Ambassador — Enterprise referral programs
|
||||
- Friendbuy — E-commerce and subscription
|
||||
- GrowSurf — SaaS and tech companies
|
||||
- Viral Loops — Template-based campaigns
|
||||
|
||||
**Built-in options:**
|
||||
- Stripe (basic referral tracking)
|
||||
- HubSpot (CRM-integrated)
|
||||
- Segment (tracking and analytics)
|
||||
|
||||
### Affiliate Program Tools
|
||||
|
||||
**Affiliate networks:**
|
||||
- ShareASale — Large merchant network
|
||||
- Impact — Enterprise partnerships
|
||||
- PartnerStack — SaaS focused
|
||||
- Tapfiliate — Simple SaaS affiliate tracking
|
||||
- FirstPromoter — SaaS affiliate management
|
||||
|
||||
**Self-hosted:**
|
||||
- Rewardful — Stripe-integrated affiliates
|
||||
- Refersion — E-commerce affiliates
|
||||
|
||||
### Choosing a Tool
|
||||
|
||||
Consider:
|
||||
- Integration with your payment system
|
||||
- Fraud detection capabilities
|
||||
- Payout management
|
||||
- Reporting and analytics
|
||||
- Customization options
|
||||
- Price vs. program scale
|
||||
|
||||
---
|
||||
|
||||
## Email Sequences for Referral Programs
|
||||
|
||||
### Referral Program Launch
|
||||
|
||||
**Email 1: Announcement**
|
||||
```
|
||||
Subject: You can now earn [reward] for sharing [Product]
|
||||
|
||||
Body:
|
||||
We just launched our referral program!
|
||||
|
||||
Share [Product] with friends and earn [reward] for each person who signs up. They get [their reward] too.
|
||||
|
||||
[Unique referral link]
|
||||
|
||||
Here's how it works:
|
||||
1. Share your link
|
||||
2. Friend signs up
|
||||
3. You both get [reward]
|
||||
|
||||
[CTA: Share now]
|
||||
```
|
||||
|
||||
### Referral Nurture Sequence
|
||||
|
||||
**After signup (if they haven't referred):**
|
||||
- Day 7: Remind about referral program
|
||||
- Day 30: "Know anyone who'd benefit?"
|
||||
- Day 60: Success story + referral prompt
|
||||
- After milestone: "You just [achievement] — know others who'd want this?"
|
||||
|
||||
### Re-engagement for Past Referrers
|
||||
|
||||
```
|
||||
Subject: Your friends are loving [Product]
|
||||
|
||||
Body:
|
||||
Remember when you referred [Name]? They've [achievement/milestone].
|
||||
|
||||
Know anyone else who'd benefit? You'll earn [reward] for each friend who joins.
|
||||
|
||||
[Referral link]
|
||||
```
|
||||
| Problem | Fix |
|
||||
|---------|-----|
|
||||
| Low awareness | Add prominent in-app prompts |
|
||||
| Low share rate | Simplify to one click |
|
||||
| Low conversion | Optimize referred user experience |
|
||||
| Fraud/abuse | Add verification, limits |
|
||||
| One-time referrers | Add tiered/gamified rewards |
|
||||
|
||||
---
|
||||
|
||||
## Measuring Success
|
||||
|
||||
### Dashboard Metrics
|
||||
### Key Metrics
|
||||
|
||||
**Program health:**
|
||||
- Active referrers (referred someone in last 30 days)
|
||||
- Total referrals (invites sent)
|
||||
- Referral conversion rate
|
||||
- Rewards earned/paid
|
||||
|
||||
@@ -531,15 +152,8 @@ Know anyone else who'd benefit? You'll earn [reward] for each friend who joins.
|
||||
- LTV of referred customers
|
||||
- Referral program ROI
|
||||
|
||||
### Cohort Analysis
|
||||
### Typical Findings
|
||||
|
||||
Track referred customers separately:
|
||||
- Do they convert faster?
|
||||
- Do they have higher LTV?
|
||||
- Do they refer others at higher rates?
|
||||
- Do they churn less?
|
||||
|
||||
Typical findings:
|
||||
- Referred customers have 16-25% higher LTV
|
||||
- Referred customers have 18-37% lower churn
|
||||
- Referred customers refer others at 2-3x rate
|
||||
@@ -549,47 +163,86 @@ Typical findings:
|
||||
## Launch Checklist
|
||||
|
||||
### Before Launch
|
||||
|
||||
- [ ] Define program goals and success metrics
|
||||
- [ ] Design incentive structure
|
||||
- [ ] Build or configure referral tool
|
||||
- [ ] Create referral landing page
|
||||
- [ ] Design email templates
|
||||
- [ ] Set up tracking and attribution
|
||||
- [ ] Define fraud prevention rules
|
||||
- [ ] Create terms and conditions
|
||||
- [ ] Test complete referral flow
|
||||
- [ ] Plan launch announcement
|
||||
|
||||
### Launch
|
||||
|
||||
- [ ] Announce to existing customers (email)
|
||||
- [ ] Announce to existing customers
|
||||
- [ ] Add in-app referral prompts
|
||||
- [ ] Update website with program details
|
||||
- [ ] Brief support team on program
|
||||
- [ ] Monitor for fraud/issues
|
||||
- [ ] Track initial metrics
|
||||
- [ ] Brief support team
|
||||
|
||||
### Post-Launch (First 30 Days)
|
||||
|
||||
- [ ] Review conversion funnel
|
||||
- [ ] Identify top referrers
|
||||
- [ ] Gather feedback on program
|
||||
- [ ] Fix any friction points
|
||||
- [ ] Plan first optimizations
|
||||
- [ ] Gather feedback
|
||||
- [ ] Fix friction points
|
||||
- [ ] Send reminder emails to non-referrers
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Email Sequences
|
||||
|
||||
If you need more context:
|
||||
1. What type of program are you building (referral, affiliate, or both)?
|
||||
### Referral Program Launch
|
||||
|
||||
```
|
||||
Subject: You can now earn [reward] for sharing [Product]
|
||||
|
||||
We just launched our referral program!
|
||||
|
||||
Share [Product] with friends and earn [reward] for each signup.
|
||||
They get [their reward] too.
|
||||
|
||||
[Unique referral link]
|
||||
|
||||
1. Share your link
|
||||
2. Friend signs up
|
||||
3. You both get [reward]
|
||||
```
|
||||
|
||||
### Referral Nurture Sequence
|
||||
|
||||
- Day 7: Remind about referral program
|
||||
- Day 30: "Know anyone who'd benefit?"
|
||||
- Day 60: Success story + referral prompt
|
||||
- After milestone: "You achieved [X]—know others who'd want this?"
|
||||
|
||||
---
|
||||
|
||||
## Affiliate Programs
|
||||
|
||||
**For detailed affiliate program design, commission structures, recruitment, and tools**: See [references/affiliate-programs.md](references/affiliate-programs.md)
|
||||
|
||||
---
|
||||
|
||||
## Task-Specific Questions
|
||||
|
||||
1. What type of program (referral, affiliate, or both)?
|
||||
2. What's your customer LTV and current CAC?
|
||||
3. Do you have an existing program, or starting from scratch?
|
||||
4. What tools/platforms are you using or considering?
|
||||
3. Existing program or starting from scratch?
|
||||
4. What tools/platforms are you considering?
|
||||
5. What's your budget for rewards/commissions?
|
||||
6. Is your product naturally shareable (involves others, visible results)?
|
||||
6. Is your product naturally shareable?
|
||||
|
||||
---
|
||||
|
||||
## Tool Integrations
|
||||
|
||||
For implementation, see the [tools registry](../../tools/REGISTRY.md). Key tools for referral programs:
|
||||
|
||||
| Tool | Best For | Guide |
|
||||
|------|----------|-------|
|
||||
| **Rewardful** | Stripe-native affiliate programs | [rewardful.md](../../tools/integrations/rewardful.md) |
|
||||
| **Tolt** | SaaS affiliate programs | [tolt.md](../../tools/integrations/tolt.md) |
|
||||
| **Mention Me** | Enterprise referral programs | [mention-me.md](../../tools/integrations/mention-me.md) |
|
||||
| **Dub.co** | Link tracking and attribution | [dub-co.md](../../tools/integrations/dub-co.md) |
|
||||
| **Stripe** | Payment processing (for commission tracking) | [stripe.md](../../tools/integrations/stripe.md) |
|
||||
|
||||
---
|
||||
|
||||
@@ -599,4 +252,3 @@ If you need more context:
|
||||
- **email-sequence**: For referral nurture campaigns
|
||||
- **marketing-psychology**: For understanding referral motivation
|
||||
- **analytics-tracking**: For tracking referral attribution
|
||||
- **pricing-strategy**: For structuring rewards relative to LTV
|
||||
|
||||
156
skills/referral-program/references/affiliate-programs.md
Normal file
156
skills/referral-program/references/affiliate-programs.md
Normal file
@@ -0,0 +1,156 @@
|
||||
# Affiliate Program Design
|
||||
|
||||
Detailed guidance for building and managing affiliate programs.
|
||||
|
||||
## Commission Structures
|
||||
|
||||
**Percentage of sale:**
|
||||
- Standard: 10-30% of first sale or first year
|
||||
- Works for: E-commerce, SaaS with clear pricing
|
||||
- Example: "Earn 25% of every sale you refer"
|
||||
|
||||
**Flat fee per action:**
|
||||
- Standard: $5-500 depending on value
|
||||
- Works for: Lead gen, trials, freemium
|
||||
- Example: "$50 for every qualified demo"
|
||||
|
||||
**Recurring commission:**
|
||||
- Standard: 10-25% of recurring revenue
|
||||
- Works for: Subscription products
|
||||
- Example: "20% of subscription for 12 months"
|
||||
|
||||
**Tiered commission:**
|
||||
- Works for: Motivating high performers
|
||||
- Example: "20% for 1-10 sales, 25% for 11-25, 30% for 26+"
|
||||
|
||||
---
|
||||
|
||||
## Cookie Duration
|
||||
|
||||
How long after click does affiliate get credit?
|
||||
|
||||
| Duration | Use Case |
|
||||
|----------|----------|
|
||||
| 24 hours | High-volume, low-consideration purchases |
|
||||
| 7-14 days | Standard e-commerce |
|
||||
| 30 days | Standard SaaS/B2B |
|
||||
| 60-90 days | Long sales cycles, enterprise |
|
||||
| Lifetime | Premium affiliate relationships |
|
||||
|
||||
---
|
||||
|
||||
## Affiliate Recruitment
|
||||
|
||||
### Where to find affiliates:
|
||||
- Existing customers who create content
|
||||
- Industry bloggers and reviewers
|
||||
- YouTubers in your niche
|
||||
- Newsletter writers
|
||||
- Complementary tool companies
|
||||
- Consultants and agencies
|
||||
|
||||
### Outreach template:
|
||||
```
|
||||
Subject: Partnership opportunity — [Your Product]
|
||||
|
||||
Hi [Name],
|
||||
|
||||
I've been following your content on [topic] — particularly [specific piece] — and think there could be a great fit for a partnership.
|
||||
|
||||
[Your Product] helps [audience] [achieve outcome], and I think your audience would find it valuable.
|
||||
|
||||
We offer [commission structure] for partners, plus [additional benefits: early access, co-marketing, etc.].
|
||||
|
||||
Would you be open to learning more?
|
||||
|
||||
[Your name]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Affiliate Enablement
|
||||
|
||||
Provide affiliates with:
|
||||
- [ ] Unique tracking links/codes
|
||||
- [ ] Product overview and key benefits
|
||||
- [ ] Target audience description
|
||||
- [ ] Comparison to competitors
|
||||
- [ ] Creative assets (logos, banners, images)
|
||||
- [ ] Sample copy and talking points
|
||||
- [ ] Case studies and testimonials
|
||||
- [ ] Demo access or free account
|
||||
- [ ] FAQ and objection handling
|
||||
- [ ] Payment terms and schedule
|
||||
|
||||
---
|
||||
|
||||
## Tools & Platforms
|
||||
|
||||
### Referral Program Tools
|
||||
|
||||
**Full-featured platforms:**
|
||||
- ReferralCandy — E-commerce focused
|
||||
- Ambassador — Enterprise referral programs
|
||||
- Friendbuy — E-commerce and subscription
|
||||
- GrowSurf — SaaS and tech companies
|
||||
- Mention Me — AI-powered referral marketing
|
||||
- Viral Loops — Template-based campaigns
|
||||
|
||||
**Built-in options:**
|
||||
- Stripe (basic referral tracking)
|
||||
- HubSpot (CRM-integrated)
|
||||
- Segment (tracking and analytics)
|
||||
|
||||
### Affiliate Program Tools
|
||||
|
||||
**Affiliate networks:**
|
||||
- ShareASale — Large merchant network
|
||||
- Impact — Enterprise partnerships
|
||||
- PartnerStack — SaaS focused
|
||||
- Tapfiliate — Simple SaaS affiliate tracking
|
||||
- FirstPromoter — SaaS affiliate management
|
||||
|
||||
**Self-hosted:**
|
||||
- Rewardful — Stripe-integrated affiliates
|
||||
- Refersion — E-commerce affiliates
|
||||
|
||||
### Choosing a Tool
|
||||
|
||||
Consider:
|
||||
- Integration with your payment system
|
||||
- Fraud detection capabilities
|
||||
- Payout management
|
||||
- Reporting and analytics
|
||||
- Customization options
|
||||
- Price vs. program scale
|
||||
|
||||
---
|
||||
|
||||
## Fraud Prevention
|
||||
|
||||
### Common Referral Fraud
|
||||
- Self-referrals (creating fake accounts)
|
||||
- Referral rings (groups referring each other)
|
||||
- Coupon sites posting referral codes
|
||||
- Fake email addresses
|
||||
- VPN/device spoofing
|
||||
|
||||
### Prevention Measures
|
||||
|
||||
**Technical:**
|
||||
- Email verification required
|
||||
- Device fingerprinting
|
||||
- IP address monitoring
|
||||
- Delayed reward payout (after activation)
|
||||
- Minimum activity threshold
|
||||
|
||||
**Policy:**
|
||||
- Clear terms of service
|
||||
- Maximum referrals per period
|
||||
- Reward clawback for refunds/chargebacks
|
||||
- Manual review for suspicious patterns
|
||||
|
||||
**Structural:**
|
||||
- Require referred user to take meaningful action
|
||||
- Cap lifetime rewards
|
||||
- Pay rewards in product credit (less attractive to fraudsters)
|
||||
134
skills/referral-program/references/program-examples.md
Normal file
134
skills/referral-program/references/program-examples.md
Normal file
@@ -0,0 +1,134 @@
|
||||
# Referral Program Examples
|
||||
|
||||
Real-world examples of successful referral programs.
|
||||
|
||||
## Dropbox (Classic)
|
||||
|
||||
**Program:** Give 500MB storage, get 500MB storage
|
||||
|
||||
**Why it worked:**
|
||||
- Reward directly tied to product value
|
||||
- Low friction (just an email)
|
||||
- Both parties benefit equally
|
||||
- Gamified with progress tracking
|
||||
|
||||
---
|
||||
|
||||
## Uber/Lyft
|
||||
|
||||
**Program:** Give $10 ride credit, get $10 when they ride
|
||||
|
||||
**Why it worked:**
|
||||
- Immediate, clear value
|
||||
- Double-sided incentive
|
||||
- Easy to share (code/link)
|
||||
- Triggered at natural moments
|
||||
|
||||
---
|
||||
|
||||
## Morning Brew
|
||||
|
||||
**Program:** Tiered rewards for subscriber referrals
|
||||
- 3 referrals: Newsletter stickers
|
||||
- 5 referrals: T-shirt
|
||||
- 10 referrals: Mug
|
||||
- 25 referrals: Hoodie
|
||||
|
||||
**Why it worked:**
|
||||
- Gamification drives ongoing engagement
|
||||
- Physical rewards are shareable (more referrals)
|
||||
- Low cost relative to subscriber value
|
||||
- Built status/identity
|
||||
|
||||
---
|
||||
|
||||
## Notion
|
||||
|
||||
**Program:** $10 credit per referral (education)
|
||||
|
||||
**Why it worked:**
|
||||
- Targeted high-sharing audience (students)
|
||||
- Product naturally spreads in teams
|
||||
- Credit keeps users engaged
|
||||
|
||||
---
|
||||
|
||||
## Incentive Types Comparison
|
||||
|
||||
| Type | Pros | Cons | Best For |
|
||||
|------|------|------|----------|
|
||||
| Cash/credit | Universally valued | Feels transactional | Marketplaces, fintech |
|
||||
| Product credit | Drives usage | Only valuable if they'll use it | SaaS, subscriptions |
|
||||
| Free months | Clear value | May attract freebie-seekers | Subscription products |
|
||||
| Feature unlock | Low cost to you | Only works for gated features | Freemium products |
|
||||
| Swag/gifts | Memorable, shareable | Logistics complexity | Brand-focused companies |
|
||||
| Charity donation | Feel-good | Lower personal motivation | Mission-driven brands |
|
||||
|
||||
---
|
||||
|
||||
## Incentive Sizing Framework
|
||||
|
||||
**Calculate your maximum incentive:**
|
||||
```
|
||||
Max Referral Reward = (Customer LTV × Gross Margin) - Target CAC
|
||||
```
|
||||
|
||||
**Example:**
|
||||
- LTV: $1,200
|
||||
- Gross margin: 70%
|
||||
- Target CAC: $200
|
||||
- Max reward: ($1,200 × 0.70) - $200 = $640
|
||||
|
||||
**Typical referral rewards:**
|
||||
- B2C: $10-50 or 10-25% of first purchase
|
||||
- B2B SaaS: $50-500 or 1-3 months free
|
||||
- Enterprise: Higher, often custom
|
||||
|
||||
---
|
||||
|
||||
## Viral Coefficient & Metrics
|
||||
|
||||
### Key Metrics
|
||||
|
||||
**Viral coefficient (K-factor):**
|
||||
```
|
||||
K = Invitations × Conversion Rate
|
||||
|
||||
K > 1 = Viral growth (each user brings more than 1 new user)
|
||||
K < 1 = Amplified growth (referrals supplement other acquisition)
|
||||
```
|
||||
|
||||
**Example:**
|
||||
- Average customer sends 3 invitations
|
||||
- 15% of invitations convert
|
||||
- K = 3 × 0.15 = 0.45
|
||||
|
||||
**Referral rate:**
|
||||
```
|
||||
Referral Rate = (Customers who refer) / (Total customers)
|
||||
```
|
||||
|
||||
Benchmarks:
|
||||
- Good: 10-25% of customers refer
|
||||
- Great: 25-50%
|
||||
- Exceptional: 50%+
|
||||
|
||||
**Referrals per referrer:**
|
||||
|
||||
Benchmarks:
|
||||
- Average: 1-2 referrals per referrer
|
||||
- Good: 2-5
|
||||
- Exceptional: 5+
|
||||
|
||||
### Calculating Referral Program ROI
|
||||
|
||||
```
|
||||
Referral Program ROI = (Revenue from referred customers - Program costs) / Program costs
|
||||
|
||||
Program costs = Rewards paid + Tool costs + Management time
|
||||
```
|
||||
|
||||
**Track separately:**
|
||||
- Cost per referred customer (CAC via referral)
|
||||
- LTV of referred customers (often higher than average)
|
||||
- Payback period for referral rewards
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: schema-markup
|
||||
version: 1.0.0
|
||||
description: When the user wants to add, fix, or optimize schema markup and structured data on their site. Also use when the user mentions "schema markup," "structured data," "JSON-LD," "rich snippets," "schema.org," "FAQ schema," "product schema," "review schema," or "breadcrumb schema." For broader SEO issues, see seo-audit.
|
||||
---
|
||||
|
||||
@@ -9,21 +10,16 @@ You are an expert in structured data and schema markup. Your goal is to implemen
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before implementing schema, understand:
|
||||
|
||||
1. **Page Type**
|
||||
- What kind of page is this?
|
||||
- What's the primary content?
|
||||
- What rich results are possible?
|
||||
1. **Page Type** - What kind of page? What's the primary content? What rich results are possible?
|
||||
|
||||
2. **Current State**
|
||||
- Any existing schema?
|
||||
- Errors in current implementation?
|
||||
- Which rich results are already appearing?
|
||||
2. **Current State** - Any existing schema? Errors in implementation? Which rich results already appearing?
|
||||
|
||||
3. **Goals**
|
||||
- Which rich results are you targeting?
|
||||
- What's the business value?
|
||||
3. **Goals** - Which rich results are you targeting? What's the business value?
|
||||
|
||||
---
|
||||
|
||||
@@ -53,435 +49,56 @@ Before implementing schema, understand:
|
||||
|
||||
## Common Schema Types
|
||||
|
||||
### Organization
|
||||
**Use for**: Company/brand homepage or about page
|
||||
| Type | Use For | Required Properties |
|
||||
|------|---------|-------------------|
|
||||
| Organization | Company homepage/about | name, url |
|
||||
| WebSite | Homepage (search box) | name, url |
|
||||
| Article | Blog posts, news | headline, image, datePublished, author |
|
||||
| Product | Product pages | name, image, offers |
|
||||
| SoftwareApplication | SaaS/app pages | name, offers |
|
||||
| FAQPage | FAQ content | mainEntity (Q&A array) |
|
||||
| HowTo | Tutorials | name, step |
|
||||
| BreadcrumbList | Any page with breadcrumbs | itemListElement |
|
||||
| LocalBusiness | Local business pages | name, address |
|
||||
| Event | Events, webinars | name, startDate, location |
|
||||
|
||||
**Required properties**:
|
||||
- name
|
||||
- url
|
||||
|
||||
**Recommended properties**:
|
||||
- logo
|
||||
- sameAs (social profiles)
|
||||
- contactPoint
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Organization",
|
||||
"name": "Example Company",
|
||||
"url": "https://example.com",
|
||||
"logo": "https://example.com/logo.png",
|
||||
"sameAs": [
|
||||
"https://twitter.com/example",
|
||||
"https://linkedin.com/company/example",
|
||||
"https://facebook.com/example"
|
||||
],
|
||||
"contactPoint": {
|
||||
"@type": "ContactPoint",
|
||||
"telephone": "+1-555-555-5555",
|
||||
"contactType": "customer service"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### WebSite (with SearchAction)
|
||||
**Use for**: Homepage, enables sitelinks search box
|
||||
|
||||
**Required properties**:
|
||||
- name
|
||||
- url
|
||||
|
||||
**For search box**:
|
||||
- potentialAction with SearchAction
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebSite",
|
||||
"name": "Example",
|
||||
"url": "https://example.com",
|
||||
"potentialAction": {
|
||||
"@type": "SearchAction",
|
||||
"target": {
|
||||
"@type": "EntryPoint",
|
||||
"urlTemplate": "https://example.com/search?q={search_term_string}"
|
||||
},
|
||||
"query-input": "required name=search_term_string"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Article / BlogPosting
|
||||
**Use for**: Blog posts, news articles
|
||||
|
||||
**Required properties**:
|
||||
- headline
|
||||
- image
|
||||
- datePublished
|
||||
- author
|
||||
|
||||
**Recommended properties**:
|
||||
- dateModified
|
||||
- publisher
|
||||
- description
|
||||
- mainEntityOfPage
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Article",
|
||||
"headline": "How to Implement Schema Markup",
|
||||
"image": "https://example.com/image.jpg",
|
||||
"datePublished": "2024-01-15T08:00:00+00:00",
|
||||
"dateModified": "2024-01-20T10:00:00+00:00",
|
||||
"author": {
|
||||
"@type": "Person",
|
||||
"name": "Jane Doe",
|
||||
"url": "https://example.com/authors/jane"
|
||||
},
|
||||
"publisher": {
|
||||
"@type": "Organization",
|
||||
"name": "Example Company",
|
||||
"logo": {
|
||||
"@type": "ImageObject",
|
||||
"url": "https://example.com/logo.png"
|
||||
}
|
||||
},
|
||||
"description": "A complete guide to implementing schema markup...",
|
||||
"mainEntityOfPage": {
|
||||
"@type": "WebPage",
|
||||
"@id": "https://example.com/schema-guide"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Product
|
||||
**Use for**: Product pages (e-commerce or SaaS)
|
||||
|
||||
**Required properties**:
|
||||
- name
|
||||
- image
|
||||
- offers (with price and availability)
|
||||
|
||||
**Recommended properties**:
|
||||
- description
|
||||
- sku
|
||||
- brand
|
||||
- aggregateRating
|
||||
- review
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Product",
|
||||
"name": "Premium Widget",
|
||||
"image": "https://example.com/widget.jpg",
|
||||
"description": "Our best-selling widget for professionals",
|
||||
"sku": "WIDGET-001",
|
||||
"brand": {
|
||||
"@type": "Brand",
|
||||
"name": "Example Co"
|
||||
},
|
||||
"offers": {
|
||||
"@type": "Offer",
|
||||
"url": "https://example.com/products/widget",
|
||||
"priceCurrency": "USD",
|
||||
"price": "99.99",
|
||||
"availability": "https://schema.org/InStock",
|
||||
"priceValidUntil": "2024-12-31"
|
||||
},
|
||||
"aggregateRating": {
|
||||
"@type": "AggregateRating",
|
||||
"ratingValue": "4.8",
|
||||
"reviewCount": "127"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### SoftwareApplication
|
||||
**Use for**: SaaS product pages, app landing pages
|
||||
|
||||
**Required properties**:
|
||||
- name
|
||||
- offers (or free indicator)
|
||||
|
||||
**Recommended properties**:
|
||||
- applicationCategory
|
||||
- operatingSystem
|
||||
- aggregateRating
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "SoftwareApplication",
|
||||
"name": "Example App",
|
||||
"applicationCategory": "BusinessApplication",
|
||||
"operatingSystem": "Web, iOS, Android",
|
||||
"offers": {
|
||||
"@type": "Offer",
|
||||
"price": "0",
|
||||
"priceCurrency": "USD"
|
||||
},
|
||||
"aggregateRating": {
|
||||
"@type": "AggregateRating",
|
||||
"ratingValue": "4.6",
|
||||
"ratingCount": "1250"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### FAQPage
|
||||
**Use for**: Pages with frequently asked questions
|
||||
|
||||
**Required properties**:
|
||||
- mainEntity (array of Question/Answer)
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "FAQPage",
|
||||
"mainEntity": [
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "What is schema markup?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "Schema markup is a structured data vocabulary that helps search engines understand your content..."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "How do I implement schema?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "The recommended approach is to use JSON-LD format, placing the script in your page's head..."
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### HowTo
|
||||
**Use for**: Instructional content, tutorials
|
||||
|
||||
**Required properties**:
|
||||
- name
|
||||
- step (array of HowToStep)
|
||||
|
||||
**Recommended properties**:
|
||||
- image
|
||||
- totalTime
|
||||
- estimatedCost
|
||||
- supply/tool
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "HowTo",
|
||||
"name": "How to Add Schema Markup to Your Website",
|
||||
"description": "A step-by-step guide to implementing JSON-LD schema",
|
||||
"totalTime": "PT15M",
|
||||
"step": [
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Choose your schema type",
|
||||
"text": "Identify the appropriate schema type for your page content...",
|
||||
"url": "https://example.com/guide#step1"
|
||||
},
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Write the JSON-LD",
|
||||
"text": "Create the JSON-LD markup following schema.org specifications...",
|
||||
"url": "https://example.com/guide#step2"
|
||||
},
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Add to your page",
|
||||
"text": "Insert the script tag in your page's head section...",
|
||||
"url": "https://example.com/guide#step3"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### BreadcrumbList
|
||||
**Use for**: Any page with breadcrumb navigation
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "BreadcrumbList",
|
||||
"itemListElement": [
|
||||
{
|
||||
"@type": "ListItem",
|
||||
"position": 1,
|
||||
"name": "Home",
|
||||
"item": "https://example.com"
|
||||
},
|
||||
{
|
||||
"@type": "ListItem",
|
||||
"position": 2,
|
||||
"name": "Blog",
|
||||
"item": "https://example.com/blog"
|
||||
},
|
||||
{
|
||||
"@type": "ListItem",
|
||||
"position": 3,
|
||||
"name": "SEO Guide",
|
||||
"item": "https://example.com/blog/seo-guide"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### LocalBusiness
|
||||
**Use for**: Local business location pages
|
||||
|
||||
**Required properties**:
|
||||
- name
|
||||
- address
|
||||
- (Various by business type)
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "LocalBusiness",
|
||||
"name": "Example Coffee Shop",
|
||||
"image": "https://example.com/shop.jpg",
|
||||
"address": {
|
||||
"@type": "PostalAddress",
|
||||
"streetAddress": "123 Main Street",
|
||||
"addressLocality": "San Francisco",
|
||||
"addressRegion": "CA",
|
||||
"postalCode": "94102",
|
||||
"addressCountry": "US"
|
||||
},
|
||||
"geo": {
|
||||
"@type": "GeoCoordinates",
|
||||
"latitude": "37.7749",
|
||||
"longitude": "-122.4194"
|
||||
},
|
||||
"telephone": "+1-555-555-5555",
|
||||
"openingHoursSpecification": [
|
||||
{
|
||||
"@type": "OpeningHoursSpecification",
|
||||
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
|
||||
"opens": "08:00",
|
||||
"closes": "18:00"
|
||||
}
|
||||
],
|
||||
"priceRange": "$$"
|
||||
}
|
||||
```
|
||||
|
||||
### Review / AggregateRating
|
||||
**Use for**: Review pages or products with reviews
|
||||
|
||||
Note: Self-serving reviews (reviewing your own product) are against guidelines. Reviews must be from real customers.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Product",
|
||||
"name": "Example Product",
|
||||
"aggregateRating": {
|
||||
"@type": "AggregateRating",
|
||||
"ratingValue": "4.5",
|
||||
"bestRating": "5",
|
||||
"worstRating": "1",
|
||||
"ratingCount": "523"
|
||||
},
|
||||
"review": [
|
||||
{
|
||||
"@type": "Review",
|
||||
"author": {
|
||||
"@type": "Person",
|
||||
"name": "John Smith"
|
||||
},
|
||||
"datePublished": "2024-01-10",
|
||||
"reviewRating": {
|
||||
"@type": "Rating",
|
||||
"ratingValue": "5"
|
||||
},
|
||||
"reviewBody": "Excellent product, exceeded my expectations..."
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Event
|
||||
**Use for**: Event pages, webinars, conferences
|
||||
|
||||
**Required properties**:
|
||||
- name
|
||||
- startDate
|
||||
- location (or eventAttendanceMode for online)
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Event",
|
||||
"name": "Annual Marketing Conference",
|
||||
"startDate": "2024-06-15T09:00:00-07:00",
|
||||
"endDate": "2024-06-15T17:00:00-07:00",
|
||||
"eventAttendanceMode": "https://schema.org/OnlineEventAttendanceMode",
|
||||
"eventStatus": "https://schema.org/EventScheduled",
|
||||
"location": {
|
||||
"@type": "VirtualLocation",
|
||||
"url": "https://example.com/conference"
|
||||
},
|
||||
"image": "https://example.com/conference.jpg",
|
||||
"description": "Join us for our annual marketing conference...",
|
||||
"offers": {
|
||||
"@type": "Offer",
|
||||
"url": "https://example.com/conference/tickets",
|
||||
"price": "199",
|
||||
"priceCurrency": "USD",
|
||||
"availability": "https://schema.org/InStock",
|
||||
"validFrom": "2024-01-01"
|
||||
},
|
||||
"performer": {
|
||||
"@type": "Organization",
|
||||
"name": "Example Company"
|
||||
},
|
||||
"organizer": {
|
||||
"@type": "Organization",
|
||||
"name": "Example Company",
|
||||
"url": "https://example.com"
|
||||
}
|
||||
}
|
||||
```
|
||||
**For complete JSON-LD examples**: See [references/schema-examples.md](references/schema-examples.md)
|
||||
|
||||
---
|
||||
|
||||
## Multiple Schema Types on One Page
|
||||
## Quick Reference
|
||||
|
||||
You can (and often should) have multiple schema types:
|
||||
### Organization (Company Page)
|
||||
Required: name, url
|
||||
Recommended: logo, sameAs (social profiles), contactPoint
|
||||
|
||||
### Article/BlogPosting
|
||||
Required: headline, image, datePublished, author
|
||||
Recommended: dateModified, publisher, description
|
||||
|
||||
### Product
|
||||
Required: name, image, offers (price + availability)
|
||||
Recommended: sku, brand, aggregateRating, review
|
||||
|
||||
### FAQPage
|
||||
Required: mainEntity (array of Question/Answer pairs)
|
||||
|
||||
### BreadcrumbList
|
||||
Required: itemListElement (array with position, name, item)
|
||||
|
||||
---
|
||||
|
||||
## Multiple Schema Types
|
||||
|
||||
You can combine multiple schema types on one page using `@graph`:
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@graph": [
|
||||
{
|
||||
"@type": "Organization",
|
||||
"@id": "https://example.com/#organization",
|
||||
"name": "Example Company",
|
||||
"url": "https://example.com"
|
||||
},
|
||||
{
|
||||
"@type": "WebSite",
|
||||
"@id": "https://example.com/#website",
|
||||
"url": "https://example.com",
|
||||
"name": "Example",
|
||||
"publisher": {
|
||||
"@id": "https://example.com/#organization"
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "BreadcrumbList",
|
||||
"itemListElement": [...]
|
||||
}
|
||||
{ "@type": "Organization", ... },
|
||||
{ "@type": "WebSite", ... },
|
||||
{ "@type": "BreadcrumbList", ... }
|
||||
]
|
||||
}
|
||||
```
|
||||
@@ -497,57 +114,25 @@ You can (and often should) have multiple schema types:
|
||||
|
||||
### Common Errors
|
||||
|
||||
**Missing required properties**
|
||||
- Check Google's documentation for required fields
|
||||
- Different from schema.org minimum requirements
|
||||
**Missing required properties** - Check Google's documentation for required fields
|
||||
|
||||
**Invalid values**
|
||||
- Dates must be ISO 8601 format
|
||||
- URLs must be fully qualified
|
||||
- Enumerations must use exact values
|
||||
**Invalid values** - Dates must be ISO 8601, URLs fully qualified, enumerations exact
|
||||
|
||||
**Mismatch with page content**
|
||||
- Schema doesn't match visible content
|
||||
- Ratings for products without reviews shown
|
||||
- Prices that don't match displayed prices
|
||||
**Mismatch with page content** - Schema doesn't match visible content
|
||||
|
||||
---
|
||||
|
||||
## Implementation Patterns
|
||||
## Implementation
|
||||
|
||||
### Static Sites
|
||||
- Add JSON-LD directly in HTML template
|
||||
- Use includes/partials for reusable schema
|
||||
|
||||
### Dynamic Sites (React, Next.js, etc.)
|
||||
### Dynamic Sites (React, Next.js)
|
||||
- Component that renders schema
|
||||
- Server-side rendered for SEO
|
||||
- Serialize data to JSON-LD
|
||||
|
||||
```jsx
|
||||
// Next.js example
|
||||
export default function ProductPage({ product }) {
|
||||
const schema = {
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Product",
|
||||
name: product.name,
|
||||
// ... other properties
|
||||
};
|
||||
|
||||
return (
|
||||
<>
|
||||
<Head>
|
||||
<script
|
||||
type="application/ld+json"
|
||||
dangerouslySetInnerHTML={{ __html: JSON.stringify(schema) }}
|
||||
/>
|
||||
</Head>
|
||||
{/* Page content */}
|
||||
</>
|
||||
);
|
||||
}
|
||||
```
|
||||
|
||||
### CMS / WordPress
|
||||
- Plugins (Yoast, Rank Math, Schema Pro)
|
||||
- Theme modifications
|
||||
@@ -567,9 +152,6 @@ export default function ProductPage({ product }) {
|
||||
}
|
||||
```
|
||||
|
||||
### Placement Instructions
|
||||
Where to add the code and how
|
||||
|
||||
### Testing Checklist
|
||||
- [ ] Validates in Rich Results Test
|
||||
- [ ] No errors or warnings
|
||||
@@ -578,14 +160,13 @@ Where to add the code and how
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What type of page is this?
|
||||
2. What rich results are you hoping to achieve?
|
||||
3. What data is available to populate the schema?
|
||||
4. Is there existing schema on the page?
|
||||
5. What's your tech stack for implementation?
|
||||
5. What's your tech stack?
|
||||
|
||||
---
|
||||
|
||||
@@ -593,4 +174,3 @@ If you need more context:
|
||||
|
||||
- **seo-audit**: For overall SEO including schema review
|
||||
- **programmatic-seo**: For templated schema at scale
|
||||
- **analytics-tracking**: For measuring rich result impact
|
||||
|
||||
384
skills/schema-markup/references/schema-examples.md
Normal file
384
skills/schema-markup/references/schema-examples.md
Normal file
@@ -0,0 +1,384 @@
|
||||
# Schema Markup Examples
|
||||
|
||||
Complete JSON-LD examples for common schema types.
|
||||
|
||||
## Organization
|
||||
|
||||
For company/brand homepage or about page.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Organization",
|
||||
"name": "Example Company",
|
||||
"url": "https://example.com",
|
||||
"logo": "https://example.com/logo.png",
|
||||
"sameAs": [
|
||||
"https://twitter.com/example",
|
||||
"https://linkedin.com/company/example",
|
||||
"https://facebook.com/example"
|
||||
],
|
||||
"contactPoint": {
|
||||
"@type": "ContactPoint",
|
||||
"telephone": "+1-555-555-5555",
|
||||
"contactType": "customer service"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## WebSite (with SearchAction)
|
||||
|
||||
For homepage, enables sitelinks search box.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebSite",
|
||||
"name": "Example",
|
||||
"url": "https://example.com",
|
||||
"potentialAction": {
|
||||
"@type": "SearchAction",
|
||||
"target": {
|
||||
"@type": "EntryPoint",
|
||||
"urlTemplate": "https://example.com/search?q={search_term_string}"
|
||||
},
|
||||
"query-input": "required name=search_term_string"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Article / BlogPosting
|
||||
|
||||
For blog posts and news articles.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Article",
|
||||
"headline": "How to Implement Schema Markup",
|
||||
"image": "https://example.com/image.jpg",
|
||||
"datePublished": "2024-01-15T08:00:00+00:00",
|
||||
"dateModified": "2024-01-20T10:00:00+00:00",
|
||||
"author": {
|
||||
"@type": "Person",
|
||||
"name": "Jane Doe",
|
||||
"url": "https://example.com/authors/jane"
|
||||
},
|
||||
"publisher": {
|
||||
"@type": "Organization",
|
||||
"name": "Example Company",
|
||||
"logo": {
|
||||
"@type": "ImageObject",
|
||||
"url": "https://example.com/logo.png"
|
||||
}
|
||||
},
|
||||
"description": "A complete guide to implementing schema markup...",
|
||||
"mainEntityOfPage": {
|
||||
"@type": "WebPage",
|
||||
"@id": "https://example.com/schema-guide"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Product
|
||||
|
||||
For product pages (e-commerce or SaaS).
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Product",
|
||||
"name": "Premium Widget",
|
||||
"image": "https://example.com/widget.jpg",
|
||||
"description": "Our best-selling widget for professionals",
|
||||
"sku": "WIDGET-001",
|
||||
"brand": {
|
||||
"@type": "Brand",
|
||||
"name": "Example Co"
|
||||
},
|
||||
"offers": {
|
||||
"@type": "Offer",
|
||||
"url": "https://example.com/products/widget",
|
||||
"priceCurrency": "USD",
|
||||
"price": "99.99",
|
||||
"availability": "https://schema.org/InStock",
|
||||
"priceValidUntil": "2024-12-31"
|
||||
},
|
||||
"aggregateRating": {
|
||||
"@type": "AggregateRating",
|
||||
"ratingValue": "4.8",
|
||||
"reviewCount": "127"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## SoftwareApplication
|
||||
|
||||
For SaaS product pages and app landing pages.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "SoftwareApplication",
|
||||
"name": "Example App",
|
||||
"applicationCategory": "BusinessApplication",
|
||||
"operatingSystem": "Web, iOS, Android",
|
||||
"offers": {
|
||||
"@type": "Offer",
|
||||
"price": "0",
|
||||
"priceCurrency": "USD"
|
||||
},
|
||||
"aggregateRating": {
|
||||
"@type": "AggregateRating",
|
||||
"ratingValue": "4.6",
|
||||
"ratingCount": "1250"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## FAQPage
|
||||
|
||||
For pages with frequently asked questions.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "FAQPage",
|
||||
"mainEntity": [
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "What is schema markup?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "Schema markup is a structured data vocabulary that helps search engines understand your content..."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "How do I implement schema?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "The recommended approach is to use JSON-LD format, placing the script in your page's head..."
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## HowTo
|
||||
|
||||
For instructional content and tutorials.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "HowTo",
|
||||
"name": "How to Add Schema Markup to Your Website",
|
||||
"description": "A step-by-step guide to implementing JSON-LD schema",
|
||||
"totalTime": "PT15M",
|
||||
"step": [
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Choose your schema type",
|
||||
"text": "Identify the appropriate schema type for your page content...",
|
||||
"url": "https://example.com/guide#step1"
|
||||
},
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Write the JSON-LD",
|
||||
"text": "Create the JSON-LD markup following schema.org specifications...",
|
||||
"url": "https://example.com/guide#step2"
|
||||
},
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Add to your page",
|
||||
"text": "Insert the script tag in your page's head section...",
|
||||
"url": "https://example.com/guide#step3"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## BreadcrumbList
|
||||
|
||||
For any page with breadcrumb navigation.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "BreadcrumbList",
|
||||
"itemListElement": [
|
||||
{
|
||||
"@type": "ListItem",
|
||||
"position": 1,
|
||||
"name": "Home",
|
||||
"item": "https://example.com"
|
||||
},
|
||||
{
|
||||
"@type": "ListItem",
|
||||
"position": 2,
|
||||
"name": "Blog",
|
||||
"item": "https://example.com/blog"
|
||||
},
|
||||
{
|
||||
"@type": "ListItem",
|
||||
"position": 3,
|
||||
"name": "SEO Guide",
|
||||
"item": "https://example.com/blog/seo-guide"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## LocalBusiness
|
||||
|
||||
For local business location pages.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "LocalBusiness",
|
||||
"name": "Example Coffee Shop",
|
||||
"image": "https://example.com/shop.jpg",
|
||||
"address": {
|
||||
"@type": "PostalAddress",
|
||||
"streetAddress": "123 Main Street",
|
||||
"addressLocality": "San Francisco",
|
||||
"addressRegion": "CA",
|
||||
"postalCode": "94102",
|
||||
"addressCountry": "US"
|
||||
},
|
||||
"geo": {
|
||||
"@type": "GeoCoordinates",
|
||||
"latitude": "37.7749",
|
||||
"longitude": "-122.4194"
|
||||
},
|
||||
"telephone": "+1-555-555-5555",
|
||||
"openingHoursSpecification": [
|
||||
{
|
||||
"@type": "OpeningHoursSpecification",
|
||||
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
|
||||
"opens": "08:00",
|
||||
"closes": "18:00"
|
||||
}
|
||||
],
|
||||
"priceRange": "$$"
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Event
|
||||
|
||||
For event pages, webinars, conferences.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Event",
|
||||
"name": "Annual Marketing Conference",
|
||||
"startDate": "2024-06-15T09:00:00-07:00",
|
||||
"endDate": "2024-06-15T17:00:00-07:00",
|
||||
"eventAttendanceMode": "https://schema.org/OnlineEventAttendanceMode",
|
||||
"eventStatus": "https://schema.org/EventScheduled",
|
||||
"location": {
|
||||
"@type": "VirtualLocation",
|
||||
"url": "https://example.com/conference"
|
||||
},
|
||||
"image": "https://example.com/conference.jpg",
|
||||
"description": "Join us for our annual marketing conference...",
|
||||
"offers": {
|
||||
"@type": "Offer",
|
||||
"url": "https://example.com/conference/tickets",
|
||||
"price": "199",
|
||||
"priceCurrency": "USD",
|
||||
"availability": "https://schema.org/InStock",
|
||||
"validFrom": "2024-01-01"
|
||||
},
|
||||
"performer": {
|
||||
"@type": "Organization",
|
||||
"name": "Example Company"
|
||||
},
|
||||
"organizer": {
|
||||
"@type": "Organization",
|
||||
"name": "Example Company",
|
||||
"url": "https://example.com"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Multiple Schema Types
|
||||
|
||||
Combine multiple schema types using @graph.
|
||||
|
||||
```json
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@graph": [
|
||||
{
|
||||
"@type": "Organization",
|
||||
"@id": "https://example.com/#organization",
|
||||
"name": "Example Company",
|
||||
"url": "https://example.com"
|
||||
},
|
||||
{
|
||||
"@type": "WebSite",
|
||||
"@id": "https://example.com/#website",
|
||||
"url": "https://example.com",
|
||||
"name": "Example",
|
||||
"publisher": {
|
||||
"@id": "https://example.com/#organization"
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "BreadcrumbList",
|
||||
"itemListElement": [...]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Implementation Example (Next.js)
|
||||
|
||||
```jsx
|
||||
export default function ProductPage({ product }) {
|
||||
const schema = {
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Product",
|
||||
name: product.name,
|
||||
// ... other properties
|
||||
};
|
||||
|
||||
return (
|
||||
<>
|
||||
<Head>
|
||||
<script
|
||||
type="application/ld+json"
|
||||
dangerouslySetInnerHTML={{ __html: JSON.stringify(schema) }}
|
||||
/>
|
||||
</Head>
|
||||
{/* Page content */}
|
||||
</>
|
||||
);
|
||||
}
|
||||
```
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: seo-audit
|
||||
version: 1.0.0
|
||||
description: When the user wants to audit, review, or diagnose SEO issues on their site. Also use when the user mentions "SEO audit," "technical SEO," "why am I not ranking," "SEO issues," "on-page SEO," "meta tags review," or "SEO health check." For building pages at scale to target keywords, see programmatic-seo. For adding structured data, see schema-markup.
|
||||
---
|
||||
|
||||
@@ -9,6 +10,9 @@ You are an expert in search engine optimization. Your goal is to identify SEO is
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before auditing, understand:
|
||||
|
||||
1. **Site Context**
|
||||
@@ -347,6 +351,13 @@ Same format as above
|
||||
|
||||
---
|
||||
|
||||
## References
|
||||
|
||||
- [AI Writing Detection](references/ai-writing-detection.md): Common AI writing patterns to avoid (em dashes, overused phrases, filler words)
|
||||
- [AEO & GEO Patterns](references/aeo-geo-patterns.md): Content patterns optimized for answer engines and AI citation
|
||||
|
||||
---
|
||||
|
||||
## Tools Referenced
|
||||
|
||||
**Free Tools**
|
||||
@@ -365,9 +376,8 @@ Same format as above
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What pages/keywords matter most?
|
||||
2. Do you have Search Console access?
|
||||
3. Any recent changes or migrations?
|
||||
|
||||
279
skills/seo-audit/references/aeo-geo-patterns.md
Normal file
279
skills/seo-audit/references/aeo-geo-patterns.md
Normal file
@@ -0,0 +1,279 @@
|
||||
# AEO and GEO Content Patterns
|
||||
|
||||
Reusable content block patterns optimized for answer engines and AI citation.
|
||||
|
||||
---
|
||||
|
||||
## Answer Engine Optimization (AEO) Patterns
|
||||
|
||||
These patterns help content appear in featured snippets, AI Overviews, voice search results, and answer boxes.
|
||||
|
||||
### Definition Block
|
||||
|
||||
Use for "What is [X]?" queries.
|
||||
|
||||
```markdown
|
||||
## What is [Term]?
|
||||
|
||||
[Term] is [concise 1-sentence definition]. [Expanded 1-2 sentence explanation with key characteristics]. [Brief context on why it matters or how it's used].
|
||||
```
|
||||
|
||||
**Example:**
|
||||
```markdown
|
||||
## What is Answer Engine Optimization?
|
||||
|
||||
Answer Engine Optimization (AEO) is the practice of structuring content so AI-powered systems can easily extract and present it as direct answers to user queries. Unlike traditional SEO that focuses on ranking in search results, AEO optimizes for featured snippets, AI Overviews, and voice assistant responses. This approach has become essential as over 60% of Google searches now end without a click.
|
||||
```
|
||||
|
||||
### Step-by-Step Block
|
||||
|
||||
Use for "How to [X]" queries. Optimal for list snippets.
|
||||
|
||||
```markdown
|
||||
## How to [Action/Goal]
|
||||
|
||||
[1-sentence overview of the process]
|
||||
|
||||
1. **[Step Name]**: [Clear action description in 1-2 sentences]
|
||||
2. **[Step Name]**: [Clear action description in 1-2 sentences]
|
||||
3. **[Step Name]**: [Clear action description in 1-2 sentences]
|
||||
4. **[Step Name]**: [Clear action description in 1-2 sentences]
|
||||
5. **[Step Name]**: [Clear action description in 1-2 sentences]
|
||||
|
||||
[Optional: Brief note on expected outcome or time estimate]
|
||||
```
|
||||
|
||||
**Example:**
|
||||
```markdown
|
||||
## How to Optimize Content for Featured Snippets
|
||||
|
||||
Earning featured snippets requires strategic formatting and direct answers to search queries.
|
||||
|
||||
1. **Identify snippet opportunities**: Use tools like Semrush or Ahrefs to find keywords where competitors have snippets you could capture.
|
||||
2. **Match the snippet format**: Analyze whether the current snippet is a paragraph, list, or table, and format your content accordingly.
|
||||
3. **Answer the question directly**: Provide a clear, concise answer (40-60 words for paragraph snippets) immediately after the question heading.
|
||||
4. **Add supporting context**: Expand on your answer with examples, data, and expert insights in the following paragraphs.
|
||||
5. **Use proper heading structure**: Place your target question as an H2 or H3, with the answer immediately following.
|
||||
|
||||
Most featured snippets appear within 2-4 weeks of publishing well-optimized content.
|
||||
```
|
||||
|
||||
### Comparison Table Block
|
||||
|
||||
Use for "[X] vs [Y]" queries. Optimal for table snippets.
|
||||
|
||||
```markdown
|
||||
## [Option A] vs [Option B]: [Brief Descriptor]
|
||||
|
||||
| Feature | [Option A] | [Option B] |
|
||||
|---------|------------|------------|
|
||||
| [Criteria 1] | [Value/Description] | [Value/Description] |
|
||||
| [Criteria 2] | [Value/Description] | [Value/Description] |
|
||||
| [Criteria 3] | [Value/Description] | [Value/Description] |
|
||||
| [Criteria 4] | [Value/Description] | [Value/Description] |
|
||||
| Best For | [Use case] | [Use case] |
|
||||
|
||||
**Bottom line**: [1-2 sentence recommendation based on different needs]
|
||||
```
|
||||
|
||||
### Pros and Cons Block
|
||||
|
||||
Use for evaluation queries: "Is [X] worth it?", "Should I [X]?"
|
||||
|
||||
```markdown
|
||||
## Advantages and Disadvantages of [Topic]
|
||||
|
||||
[1-sentence overview of the evaluation context]
|
||||
|
||||
### Pros
|
||||
|
||||
- **[Benefit category]**: [Specific explanation]
|
||||
- **[Benefit category]**: [Specific explanation]
|
||||
- **[Benefit category]**: [Specific explanation]
|
||||
|
||||
### Cons
|
||||
|
||||
- **[Drawback category]**: [Specific explanation]
|
||||
- **[Drawback category]**: [Specific explanation]
|
||||
- **[Drawback category]**: [Specific explanation]
|
||||
|
||||
**Verdict**: [1-2 sentence balanced conclusion with recommendation]
|
||||
```
|
||||
|
||||
### FAQ Block
|
||||
|
||||
Use for topic pages with multiple common questions. Essential for FAQ schema.
|
||||
|
||||
```markdown
|
||||
## Frequently Asked Questions
|
||||
|
||||
### [Question phrased exactly as users search]?
|
||||
|
||||
[Direct answer in first sentence]. [Supporting context in 2-3 additional sentences].
|
||||
|
||||
### [Question phrased exactly as users search]?
|
||||
|
||||
[Direct answer in first sentence]. [Supporting context in 2-3 additional sentences].
|
||||
|
||||
### [Question phrased exactly as users search]?
|
||||
|
||||
[Direct answer in first sentence]. [Supporting context in 2-3 additional sentences].
|
||||
```
|
||||
|
||||
**Tips for FAQ questions:**
|
||||
- Use natural question phrasing ("How do I..." not "How does one...")
|
||||
- Include question words: what, how, why, when, where, who, which
|
||||
- Match "People Also Ask" queries from search results
|
||||
- Keep answers between 50-100 words
|
||||
|
||||
### Listicle Block
|
||||
|
||||
Use for "Best [X]", "Top [X]", "[Number] ways to [X]" queries.
|
||||
|
||||
```markdown
|
||||
## [Number] Best [Items] for [Goal/Purpose]
|
||||
|
||||
[1-2 sentence intro establishing context and selection criteria]
|
||||
|
||||
### 1. [Item Name]
|
||||
|
||||
[Why it's included in 2-3 sentences with specific benefits]
|
||||
|
||||
### 2. [Item Name]
|
||||
|
||||
[Why it's included in 2-3 sentences with specific benefits]
|
||||
|
||||
### 3. [Item Name]
|
||||
|
||||
[Why it's included in 2-3 sentences with specific benefits]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Generative Engine Optimization (GEO) Patterns
|
||||
|
||||
These patterns optimize content for citation by AI assistants like ChatGPT, Claude, Perplexity, and Gemini.
|
||||
|
||||
### Statistic Citation Block
|
||||
|
||||
Statistics increase AI citation rates by 15-30%. Always include sources.
|
||||
|
||||
```markdown
|
||||
[Claim statement]. According to [Source/Organization], [specific statistic with number and timeframe]. [Context for why this matters].
|
||||
```
|
||||
|
||||
**Example:**
|
||||
```markdown
|
||||
Mobile optimization is no longer optional for SEO success. According to Google's 2024 Core Web Vitals report, 70% of web traffic now comes from mobile devices, and pages failing mobile usability standards see 24% higher bounce rates. This makes mobile-first indexing a critical ranking factor.
|
||||
```
|
||||
|
||||
### Expert Quote Block
|
||||
|
||||
Named expert attribution adds credibility and increases citation likelihood.
|
||||
|
||||
```markdown
|
||||
"[Direct quote from expert]," says [Expert Name], [Title/Role] at [Organization]. [1 sentence of context or interpretation].
|
||||
```
|
||||
|
||||
**Example:**
|
||||
```markdown
|
||||
"The shift from keyword-driven search to intent-driven discovery represents the most significant change in SEO since mobile-first indexing," says Rand Fishkin, Co-founder of SparkToro. This perspective highlights why content strategies must evolve beyond traditional keyword optimization.
|
||||
```
|
||||
|
||||
### Authoritative Claim Block
|
||||
|
||||
Structure claims for easy AI extraction with clear attribution.
|
||||
|
||||
```markdown
|
||||
[Topic] [verb: is/has/requires/involves] [clear, specific claim]. [Source] [confirms/reports/found] that [supporting evidence]. This [explains/means/suggests] [implication or action].
|
||||
```
|
||||
|
||||
**Example:**
|
||||
```markdown
|
||||
E-E-A-T is the cornerstone of Google's content quality evaluation. Google's Search Quality Rater Guidelines confirm that trust is the most critical factor, stating that "untrustworthy pages have low E-E-A-T no matter how experienced, expert, or authoritative they may seem." This means content creators must prioritize transparency and accuracy above all other optimization tactics.
|
||||
```
|
||||
|
||||
### Self-Contained Answer Block
|
||||
|
||||
Create quotable, standalone statements that AI can extract directly.
|
||||
|
||||
```markdown
|
||||
**[Topic/Question]**: [Complete, self-contained answer that makes sense without additional context. Include specific details, numbers, or examples in 2-3 sentences.]
|
||||
```
|
||||
|
||||
**Example:**
|
||||
```markdown
|
||||
**Ideal blog post length for SEO**: The optimal length for SEO blog posts is 1,500-2,500 words for competitive topics. This range allows comprehensive topic coverage while maintaining reader engagement. HubSpot research shows long-form content earns 77% more backlinks than short articles, directly impacting search rankings.
|
||||
```
|
||||
|
||||
### Evidence Sandwich Block
|
||||
|
||||
Structure claims with evidence for maximum credibility.
|
||||
|
||||
```markdown
|
||||
[Opening claim statement].
|
||||
|
||||
Evidence supporting this includes:
|
||||
- [Data point 1 with source]
|
||||
- [Data point 2 with source]
|
||||
- [Data point 3 with source]
|
||||
|
||||
[Concluding statement connecting evidence to actionable insight].
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Domain-Specific GEO Tactics
|
||||
|
||||
Different content domains benefit from different authority signals.
|
||||
|
||||
### Technology Content
|
||||
- Emphasize technical precision and correct terminology
|
||||
- Include version numbers and dates for software/tools
|
||||
- Reference official documentation
|
||||
- Add code examples where relevant
|
||||
|
||||
### Health/Medical Content
|
||||
- Cite peer-reviewed studies with publication details
|
||||
- Include expert credentials (MD, RN, etc.)
|
||||
- Note study limitations and context
|
||||
- Add "last reviewed" dates
|
||||
|
||||
### Financial Content
|
||||
- Reference regulatory bodies (SEC, FTC, etc.)
|
||||
- Include specific numbers with timeframes
|
||||
- Note that information is educational, not advice
|
||||
- Cite recognized financial institutions
|
||||
|
||||
### Legal Content
|
||||
- Cite specific laws, statutes, and regulations
|
||||
- Reference jurisdiction clearly
|
||||
- Include professional disclaimers
|
||||
- Note when professional consultation is advised
|
||||
|
||||
### Business/Marketing Content
|
||||
- Include case studies with measurable results
|
||||
- Reference industry research and reports
|
||||
- Add percentage changes and timeframes
|
||||
- Quote recognized thought leaders
|
||||
|
||||
---
|
||||
|
||||
## Voice Search Optimization
|
||||
|
||||
Voice queries are conversational and question-based. Optimize for these patterns:
|
||||
|
||||
### Question Formats for Voice
|
||||
- "What is..."
|
||||
- "How do I..."
|
||||
- "Where can I find..."
|
||||
- "Why does..."
|
||||
- "When should I..."
|
||||
- "Who is..."
|
||||
|
||||
### Voice-Optimized Answer Structure
|
||||
- Lead with direct answer (under 30 words ideal)
|
||||
- Use natural, conversational language
|
||||
- Avoid jargon unless targeting expert audience
|
||||
- Include local context where relevant
|
||||
- Structure for single spoken response
|
||||
190
skills/seo-audit/references/ai-writing-detection.md
Normal file
190
skills/seo-audit/references/ai-writing-detection.md
Normal file
@@ -0,0 +1,190 @@
|
||||
# AI Writing Detection
|
||||
|
||||
Words, phrases, and punctuation patterns commonly associated with AI-generated text. Avoid these to ensure writing sounds natural and human.
|
||||
|
||||
Sources: Grammarly (2025), Microsoft 365 Life Hacks (2025), GPTHuman (2025), Walter Writes (2025), Textero (2025), Plagiarism Today (2025), Rolling Stone (2025), MDPI Blog (2025)
|
||||
|
||||
---
|
||||
|
||||
## Em Dashes: The Primary AI Tell
|
||||
|
||||
**The em dash (—) has become one of the most reliable markers of AI-generated content.**
|
||||
|
||||
Em dashes are longer than hyphens (-) and are used for emphasis, interruptions, or parenthetical information. While they have legitimate uses in writing, AI models drastically overuse them.
|
||||
|
||||
### Why Em Dashes Signal AI Writing
|
||||
- AI models were trained on edited books, academic papers, and style guides where em dashes appear frequently
|
||||
- AI uses em dashes as a shortcut for sentence variety instead of commas, colons, or parentheses
|
||||
- Most human writers rarely use em dashes because they don't exist as a standard keyboard key
|
||||
- The overuse is so consistent that it has become the unofficial signature of ChatGPT writing
|
||||
|
||||
### What To Do Instead
|
||||
| Instead of | Use |
|
||||
|------------|-----|
|
||||
| The results—which were surprising—showed... | The results, which were surprising, showed... |
|
||||
| This approach—unlike traditional methods—allows... | This approach, unlike traditional methods, allows... |
|
||||
| The study found—as expected—that... | The study found, as expected, that... |
|
||||
| Communication skills—both written and verbal—are essential | Communication skills (both written and verbal) are essential |
|
||||
|
||||
### Guidelines
|
||||
- Use commas for most parenthetical information
|
||||
- Use colons to introduce explanations or lists
|
||||
- Use parentheses for supplementary information
|
||||
- Reserve em dashes for rare, deliberate emphasis only
|
||||
- If you find yourself using more than one em dash per page, revise
|
||||
|
||||
---
|
||||
|
||||
## Overused Verbs
|
||||
|
||||
| Avoid | Use Instead |
|
||||
|-------|-------------|
|
||||
| delve (into) | explore, examine, investigate, look at |
|
||||
| leverage | use, apply, draw on |
|
||||
| optimise | improve, refine, enhance |
|
||||
| utilise | use |
|
||||
| facilitate | help, enable, support |
|
||||
| foster | encourage, support, develop, nurture |
|
||||
| bolster | strengthen, support, reinforce |
|
||||
| underscore | emphasise, highlight, stress |
|
||||
| unveil | reveal, show, introduce, present |
|
||||
| navigate | manage, handle, work through |
|
||||
| streamline | simplify, make more efficient |
|
||||
| enhance | improve, strengthen |
|
||||
| endeavour | try, attempt, effort |
|
||||
| ascertain | find out, determine, establish |
|
||||
| elucidate | explain, clarify, make clear |
|
||||
|
||||
---
|
||||
|
||||
## Overused Adjectives
|
||||
|
||||
| Avoid | Use Instead |
|
||||
|-------|-------------|
|
||||
| robust | strong, reliable, thorough, solid |
|
||||
| comprehensive | complete, thorough, full, detailed |
|
||||
| pivotal | key, critical, central, important |
|
||||
| crucial | important, key, essential, critical |
|
||||
| vital | important, essential, necessary |
|
||||
| transformative | significant, important, major |
|
||||
| cutting-edge | new, advanced, recent, modern |
|
||||
| groundbreaking | new, original, significant |
|
||||
| innovative | new, original, creative |
|
||||
| seamless | smooth, easy, effortless |
|
||||
| intricate | complex, detailed, complicated |
|
||||
| nuanced | subtle, complex, detailed |
|
||||
| multifaceted | complex, varied, diverse |
|
||||
| holistic | complete, whole, comprehensive |
|
||||
|
||||
---
|
||||
|
||||
## Overused Transitions and Connectors
|
||||
|
||||
| Avoid | Use Instead |
|
||||
|-------|-------------|
|
||||
| furthermore | also, in addition, and |
|
||||
| moreover | also, and, besides |
|
||||
| notwithstanding | despite, even so, still |
|
||||
| that being said | however, but, still |
|
||||
| at its core | essentially, fundamentally, basically |
|
||||
| to put it simply | in short, simply put |
|
||||
| it is worth noting that | note that, importantly |
|
||||
| in the realm of | in, within, regarding |
|
||||
| in the landscape of | in, within |
|
||||
| in today's [anything] | currently, now, today |
|
||||
|
||||
---
|
||||
|
||||
## Phrases That Signal AI Writing
|
||||
|
||||
### Opening Phrases to Avoid
|
||||
- "In today's fast-paced world..."
|
||||
- "In today's digital age..."
|
||||
- "In an era of..."
|
||||
- "In the ever-evolving landscape of..."
|
||||
- "In the realm of..."
|
||||
- "It's important to note that..."
|
||||
- "Let's delve into..."
|
||||
- "Imagine a world where..."
|
||||
|
||||
### Transitional Phrases to Avoid
|
||||
- "That being said..."
|
||||
- "With that in mind..."
|
||||
- "It's worth mentioning that..."
|
||||
- "At its core..."
|
||||
- "To put it simply..."
|
||||
- "In essence..."
|
||||
- "This begs the question..."
|
||||
|
||||
### Concluding Phrases to Avoid
|
||||
- "In conclusion..."
|
||||
- "To sum up..."
|
||||
- "By [doing X], you can [achieve Y]..."
|
||||
- "In the final analysis..."
|
||||
- "All things considered..."
|
||||
- "At the end of the day..."
|
||||
|
||||
### Structural Patterns to Avoid
|
||||
- "Whether you're a [X], [Y], or [Z]..." (listing three examples after "whether")
|
||||
- "It's not just [X], it's also [Y]..."
|
||||
- "Think of [X] as [elaborate metaphor]..."
|
||||
- Starting sentences with "By" followed by a gerund: "By understanding X, you can Y..."
|
||||
|
||||
---
|
||||
|
||||
## Filler Words and Empty Intensifiers
|
||||
|
||||
These words often add nothing to meaning. Remove them or find specific alternatives:
|
||||
|
||||
- absolutely
|
||||
- actually
|
||||
- basically
|
||||
- certainly
|
||||
- clearly
|
||||
- definitely
|
||||
- essentially
|
||||
- extremely
|
||||
- fundamentally
|
||||
- incredibly
|
||||
- interestingly
|
||||
- naturally
|
||||
- obviously
|
||||
- quite
|
||||
- really
|
||||
- significantly
|
||||
- simply
|
||||
- surely
|
||||
- truly
|
||||
- ultimately
|
||||
- undoubtedly
|
||||
- very
|
||||
|
||||
---
|
||||
|
||||
## Academic-Specific AI Tells
|
||||
|
||||
| Avoid | Use Instead |
|
||||
|-------|-------------|
|
||||
| shed light on | clarify, explain, reveal |
|
||||
| pave the way for | enable, allow, make possible |
|
||||
| a myriad of | many, numerous, various |
|
||||
| a plethora of | many, numerous, several |
|
||||
| paramount | very important, essential, critical |
|
||||
| pertaining to | about, regarding, concerning |
|
||||
| prior to | before |
|
||||
| subsequent to | after |
|
||||
| in light of | because of, given, considering |
|
||||
| with respect to | about, regarding, for |
|
||||
| in terms of | regarding, for, about |
|
||||
| the fact that | that (or rewrite sentence) |
|
||||
|
||||
---
|
||||
|
||||
## How to Self-Check
|
||||
|
||||
1. Read your text aloud. If phrases sound unnatural in speech, revise them
|
||||
2. Ask: "Would I say this in a conversation with a colleague?"
|
||||
3. Check for repetitive sentence structures
|
||||
4. Look for clusters of the words listed above
|
||||
5. Ensure varied sentence lengths (not all similar length)
|
||||
6. Verify each intensifier adds genuine meaning
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
name: signup-flow-cro
|
||||
version: 1.0.0
|
||||
description: When the user wants to optimize signup, registration, account creation, or trial activation flows. Also use when the user mentions "signup conversions," "registration friction," "signup form optimization," "free trial signup," "reduce signup dropoff," or "account creation flow." For post-signup onboarding, see onboarding-cro. For lead capture forms (not account creation), see form-cro.
|
||||
---
|
||||
|
||||
@@ -9,6 +10,9 @@ You are an expert in optimizing signup and registration flows. Your goal is to r
|
||||
|
||||
## Initial Assessment
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Before providing recommendations, understand:
|
||||
|
||||
1. **Flow Type**
|
||||
@@ -336,9 +340,8 @@ Organized by:
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What's your current signup completion rate?
|
||||
2. Do you have field-level analytics on drop-off?
|
||||
3. What data is absolutely required before they can use the product?
|
||||
|
||||
@@ -1,14 +1,18 @@
|
||||
---
|
||||
name: social-content
|
||||
version: 1.0.0
|
||||
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,' or 'viral content.' This skill covers content creation, repurposing, and platform-specific strategies."
|
||||
---
|
||||
|
||||
# Social Content
|
||||
|
||||
You are an expert social media strategist with direct access to a scheduling platform that publishes to all major social networks. Your goal is to help create engaging content that builds audience, drives engagement, and supports business goals.
|
||||
You are an expert social media strategist. Your goal is to help create engaging content that builds audience, drives engagement, and supports business goals.
|
||||
|
||||
## Before Creating Content
|
||||
|
||||
**Check for product marketing context first:**
|
||||
If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
|
||||
|
||||
Gather this context (ask if not provided):
|
||||
|
||||
### 1. Goals
|
||||
@@ -20,7 +24,6 @@ Gather this context (ask if not provided):
|
||||
- Who are you trying to reach?
|
||||
- What platforms are they most active on?
|
||||
- What content do they engage with?
|
||||
- What problems do they have that you can address?
|
||||
|
||||
### 3. Brand Voice
|
||||
- What's your tone? (Professional, casual, witty, authoritative)
|
||||
@@ -29,143 +32,22 @@ Gather this context (ask if not provided):
|
||||
|
||||
### 4. Resources
|
||||
- How much time can you dedicate to social?
|
||||
- Do you have existing content to repurpose (blog posts, podcasts, videos)?
|
||||
- Do you have existing content to repurpose?
|
||||
- Can you create video content?
|
||||
- Do you have customer stories or data to share?
|
||||
|
||||
---
|
||||
|
||||
## Platform Strategy Guide
|
||||
## Platform Quick Reference
|
||||
|
||||
### LinkedIn
|
||||
| Platform | Best For | Frequency | Key Format |
|
||||
|----------|----------|-----------|------------|
|
||||
| LinkedIn | B2B, thought leadership | 3-5x/week | Carousels, stories |
|
||||
| Twitter/X | Tech, real-time, community | 3-10x/day | Threads, hot takes |
|
||||
| Instagram | Visual brands, lifestyle | 1-2 posts + Stories daily | Reels, carousels |
|
||||
| TikTok | Brand awareness, younger audiences | 1-4x/day | Short-form video |
|
||||
| Facebook | Communities, local businesses | 1-2x/day | Groups, native video |
|
||||
|
||||
**Best for:** B2B, thought leadership, professional networking, recruiting
|
||||
**Audience:** Professionals, decision-makers, job seekers
|
||||
**Posting frequency:** 3-5x per week
|
||||
**Best times:** Tuesday-Thursday, 7-8am, 12pm, 5-6pm
|
||||
|
||||
**What works:**
|
||||
- Personal stories with business lessons
|
||||
- Contrarian takes on industry topics
|
||||
- Behind-the-scenes of building a company
|
||||
- Data and original insights
|
||||
- Carousel posts (document format)
|
||||
- Polls that spark discussion
|
||||
|
||||
**What doesn't:**
|
||||
- Overly promotional content
|
||||
- Generic motivational quotes
|
||||
- Links in the main post (kills reach)
|
||||
- Corporate speak without personality
|
||||
|
||||
**Format tips:**
|
||||
- First line is everything (hook before "see more")
|
||||
- Use line breaks for readability
|
||||
- 1,200-1,500 characters performs well
|
||||
- Put links in comments, not post body
|
||||
- Tag people sparingly and genuinely
|
||||
|
||||
### Twitter/X
|
||||
|
||||
**Best for:** Tech, media, real-time commentary, community building
|
||||
**Audience:** Tech-savvy, news-oriented, niche communities
|
||||
**Posting frequency:** 3-10x per day (including replies)
|
||||
**Best times:** Varies by audience; test and measure
|
||||
|
||||
**What works:**
|
||||
- Hot takes and opinions
|
||||
- Threads that teach something
|
||||
- Behind-the-scenes moments
|
||||
- Engaging with others' content
|
||||
- Memes and humor (if on-brand)
|
||||
- Real-time commentary on events
|
||||
|
||||
**What doesn't:**
|
||||
- Pure self-promotion
|
||||
- Threads without a strong hook
|
||||
- Ignoring replies and mentions
|
||||
- Scheduling everything (no real-time presence)
|
||||
|
||||
**Format tips:**
|
||||
- Tweets under 100 characters get more engagement
|
||||
- Threads: Hook in tweet 1, promise value, deliver
|
||||
- Quote tweets with added insight beat plain retweets
|
||||
- Use visuals to stop the scroll
|
||||
|
||||
### Instagram
|
||||
|
||||
**Best for:** Visual brands, lifestyle, e-commerce, younger demographics
|
||||
**Audience:** 18-44, visual-first consumers
|
||||
**Posting frequency:** 1-2 feed posts per day, 3-10 Stories per day
|
||||
**Best times:** 11am-1pm, 7-9pm
|
||||
|
||||
**What works:**
|
||||
- High-quality visuals
|
||||
- Behind-the-scenes Stories
|
||||
- Reels (short-form video)
|
||||
- Carousels with value
|
||||
- User-generated content
|
||||
- Interactive Stories (polls, questions)
|
||||
|
||||
**What doesn't:**
|
||||
- Low-quality images
|
||||
- Too much text in images
|
||||
- Ignoring Stories and Reels
|
||||
- Only promotional content
|
||||
|
||||
**Format tips:**
|
||||
- Reels get 2x reach of static posts
|
||||
- First frame of Reels must hook
|
||||
- Carousels: 10 slides with educational content
|
||||
- Use all Story features (polls, links, etc.)
|
||||
|
||||
### TikTok
|
||||
|
||||
**Best for:** Brand awareness, younger audiences, viral potential
|
||||
**Audience:** 16-34, entertainment-focused
|
||||
**Posting frequency:** 1-4x per day
|
||||
**Best times:** 7-9am, 12-3pm, 7-11pm
|
||||
|
||||
**What works:**
|
||||
- Native, unpolished content
|
||||
- Trending sounds and formats
|
||||
- Educational content in entertaining wrapper
|
||||
- POV and day-in-the-life content
|
||||
- Responding to comments with videos
|
||||
- Duets and stitches
|
||||
|
||||
**What doesn't:**
|
||||
- Overly produced content
|
||||
- Ignoring trends
|
||||
- Hard selling
|
||||
- Repurposed horizontal video
|
||||
|
||||
**Format tips:**
|
||||
- Hook in first 1-2 seconds
|
||||
- Keep it under 30 seconds to start
|
||||
- Vertical only (9:16)
|
||||
- Use trending sounds
|
||||
- Post consistently to train algorithm
|
||||
|
||||
### Facebook
|
||||
|
||||
**Best for:** Communities, local businesses, older demographics, groups
|
||||
**Audience:** 25-55+, community-oriented
|
||||
**Posting frequency:** 1-2x per day
|
||||
**Best times:** 1-4pm weekdays
|
||||
|
||||
**What works:**
|
||||
- Facebook Groups (community)
|
||||
- Native video
|
||||
- Live video
|
||||
- Local content and events
|
||||
- Discussion-prompting questions
|
||||
|
||||
**What doesn't:**
|
||||
- Links to external sites (reach killer)
|
||||
- Pure promotional content
|
||||
- Ignoring comments
|
||||
- Cross-posting from other platforms without adaptation
|
||||
**For detailed platform strategies**: See [references/platforms.md](references/platforms.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -194,171 +76,31 @@ For each pillar, ask:
|
||||
|
||||
---
|
||||
|
||||
## Post Formats & Templates
|
||||
|
||||
### LinkedIn Post Templates
|
||||
|
||||
**The Story Post:**
|
||||
```
|
||||
[Hook: Unexpected outcome or lesson]
|
||||
|
||||
[Set the scene: When/where this happened]
|
||||
|
||||
[The challenge you faced]
|
||||
|
||||
[What you tried / what happened]
|
||||
|
||||
[The turning point]
|
||||
|
||||
[The result]
|
||||
|
||||
[The lesson for readers]
|
||||
|
||||
[Question to prompt engagement]
|
||||
```
|
||||
|
||||
**The Contrarian Take:**
|
||||
```
|
||||
[Unpopular opinion stated boldly]
|
||||
|
||||
Here's why:
|
||||
|
||||
[Reason 1]
|
||||
[Reason 2]
|
||||
[Reason 3]
|
||||
|
||||
[What you recommend instead]
|
||||
|
||||
[Invite discussion: "Am I wrong?"]
|
||||
```
|
||||
|
||||
**The List Post:**
|
||||
```
|
||||
[X things I learned about [topic] after [credibility builder]:
|
||||
|
||||
1. [Point] — [Brief explanation]
|
||||
|
||||
2. [Point] — [Brief explanation]
|
||||
|
||||
3. [Point] — [Brief explanation]
|
||||
|
||||
[Wrap-up insight]
|
||||
|
||||
Which resonates most with you?
|
||||
```
|
||||
|
||||
**The How-To:**
|
||||
```
|
||||
How to [achieve outcome] in [timeframe]:
|
||||
|
||||
Step 1: [Action]
|
||||
↳ [Why this matters]
|
||||
|
||||
Step 2: [Action]
|
||||
↳ [Key detail]
|
||||
|
||||
Step 3: [Action]
|
||||
↳ [Common mistake to avoid]
|
||||
|
||||
[Result you can expect]
|
||||
|
||||
[CTA or question]
|
||||
```
|
||||
|
||||
### Twitter/X Thread Templates
|
||||
|
||||
**The Tutorial Thread:**
|
||||
```
|
||||
Tweet 1: [Hook + promise of value]
|
||||
|
||||
"Here's exactly how to [outcome] (step-by-step):"
|
||||
|
||||
Tweet 2-7: [One step per tweet with details]
|
||||
|
||||
Final tweet: [Summary + CTA]
|
||||
|
||||
"If this was helpful, follow me for more on [topic]"
|
||||
```
|
||||
|
||||
**The Story Thread:**
|
||||
```
|
||||
Tweet 1: [Intriguing hook]
|
||||
|
||||
"[Time] ago, [unexpected thing happened]. Here's the full story:"
|
||||
|
||||
Tweet 2-6: [Story beats, building tension]
|
||||
|
||||
Tweet 7: [Resolution and lesson]
|
||||
|
||||
Final tweet: [Takeaway + engagement ask]
|
||||
```
|
||||
|
||||
**The Breakdown Thread:**
|
||||
```
|
||||
Tweet 1: [Company/person] just [did thing].
|
||||
|
||||
Here's why it's genius (and what you can learn):
|
||||
|
||||
Tweet 2-6: [Analysis points]
|
||||
|
||||
Tweet 7: [Your key takeaway]
|
||||
|
||||
"[Related insight + follow CTA]"
|
||||
```
|
||||
|
||||
### Instagram Caption Templates
|
||||
|
||||
**The Carousel Hook:**
|
||||
```
|
||||
[Slide 1: Bold statement or question]
|
||||
[Slides 2-9: One point per slide, visual + text]
|
||||
[Slide 10: Summary + CTA]
|
||||
|
||||
Caption: [Expand on the topic, add context, include CTA]
|
||||
```
|
||||
|
||||
**The Reel Script:**
|
||||
```
|
||||
Hook (0-2 sec): [Pattern interrupt or bold claim]
|
||||
Setup (2-5 sec): [Context for the tip]
|
||||
Value (5-25 sec): [The actual advice/content]
|
||||
CTA (25-30 sec): [Follow, comment, share, link]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Hook Formulas
|
||||
|
||||
The first line determines whether anyone reads the rest. Use these patterns:
|
||||
The first line determines whether anyone reads the rest.
|
||||
|
||||
### Curiosity Hooks
|
||||
- "I was wrong about [common belief]."
|
||||
- "The real reason [outcome] happens isn't what you think."
|
||||
- "[Impressive result] — and it only took [surprisingly short time]."
|
||||
- "Nobody talks about [insider knowledge]."
|
||||
|
||||
### Story Hooks
|
||||
- "Last week, [unexpected thing] happened."
|
||||
- "I almost [big mistake/failure]."
|
||||
- "3 years ago, I [past state]. Today, [current state]."
|
||||
- "[Person] told me something I'll never forget."
|
||||
|
||||
### Value Hooks
|
||||
- "How to [desirable outcome] (without [common pain]):"
|
||||
- "[Number] [things] that [outcome]:"
|
||||
- "The simplest way to [outcome]:"
|
||||
- "Stop [common mistake]. Do this instead:"
|
||||
|
||||
### Contrarian Hooks
|
||||
- "Unpopular opinion: [bold statement]"
|
||||
- "[Common advice] is wrong. Here's why:"
|
||||
- "I stopped [common practice] and [positive result]."
|
||||
- "Everyone says [X]. The truth is [Y]."
|
||||
|
||||
### Social Proof Hooks
|
||||
- "We [achieved result] in [timeframe]. Here's how:"
|
||||
- "[Number] people asked me about [topic]. Here's my answer:"
|
||||
- "[Authority figure] taught me [lesson]."
|
||||
**For post templates and more hooks**: See [references/post-templates.md](references/post-templates.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -368,24 +110,13 @@ Turn one piece of content into many:
|
||||
|
||||
### Blog Post → Social Content
|
||||
|
||||
| Original | Platform | Format |
|
||||
|----------|----------|--------|
|
||||
| Blog post | LinkedIn | Key insight + link in comments |
|
||||
| Blog post | LinkedIn | Carousel of main points |
|
||||
| Blog post | Twitter/X | Thread of key takeaways |
|
||||
| Blog post | Twitter/X | Single tweet with hot take |
|
||||
| Blog post | Instagram | Carousel with visuals |
|
||||
| Blog post | Instagram | Reel summarizing the post |
|
||||
|
||||
### Podcast/Video → Social Content
|
||||
|
||||
| Original | Platform | Format |
|
||||
|----------|----------|--------|
|
||||
| Interview | LinkedIn | Quote graphic + insight |
|
||||
| Interview | Twitter/X | Thread of best quotes |
|
||||
| Interview | Instagram | Clip as Reel |
|
||||
| Interview | TikTok | Short clip with caption |
|
||||
| Interview | YouTube | Shorts from best moments |
|
||||
| Platform | Format |
|
||||
|----------|--------|
|
||||
| LinkedIn | Key insight + link in comments |
|
||||
| LinkedIn | Carousel of main points |
|
||||
| Twitter/X | Thread of key takeaways |
|
||||
| Instagram | Carousel with visuals |
|
||||
| Instagram | Reel summarizing the post |
|
||||
|
||||
### Repurposing Workflow
|
||||
|
||||
@@ -408,19 +139,9 @@ Turn one piece of content into many:
|
||||
| Wed | Educational | Tips tweet | Reel |
|
||||
| Thu | Story post | Thread | Educational |
|
||||
| Fri | Hot take | Engagement | Story |
|
||||
| Sat | — | Curated RT | User content |
|
||||
| Sun | — | Personal | Behind-scenes |
|
||||
|
||||
### Monthly Content Mix
|
||||
### Batching Strategy (2-3 hours weekly)
|
||||
|
||||
- Week 1: Launch/announce something (if applicable)
|
||||
- Week 2: Educational deep-dive
|
||||
- Week 3: Community/engagement focus
|
||||
- Week 4: Story/behind-the-scenes
|
||||
|
||||
### Batching Strategy
|
||||
|
||||
**Weekly batching (2-3 hours):**
|
||||
1. Review content pillar topics
|
||||
2. Write 5 LinkedIn posts
|
||||
3. Write 3 Twitter threads + daily tweets
|
||||
@@ -432,17 +153,15 @@ Turn one piece of content into many:
|
||||
|
||||
## Engagement Strategy
|
||||
|
||||
### Proactive Engagement
|
||||
### Daily Engagement Routine (30 min)
|
||||
|
||||
Engagement isn't just responding—it's actively participating:
|
||||
|
||||
**Daily engagement routine (30 min):**
|
||||
1. Respond to all comments on your posts (5 min)
|
||||
2. Comment on 5-10 posts from target accounts (15 min)
|
||||
3. Share/repost with added insight (5 min)
|
||||
4. Send 2-3 DMs to new connections (5 min)
|
||||
|
||||
**Quality comments:**
|
||||
### Quality Comments
|
||||
|
||||
- Add new insight, not just "Great post!"
|
||||
- Share a related experience
|
||||
- Ask a thoughtful follow-up question
|
||||
@@ -455,118 +174,55 @@ Engagement isn't just responding—it's actively participating:
|
||||
- Share their content with credit
|
||||
- Eventually collaborate (podcasts, co-created content)
|
||||
|
||||
### Handling Negative Comments
|
||||
|
||||
- Respond calmly and professionally
|
||||
- Don't get defensive
|
||||
- Take legitimate criticism offline
|
||||
- Block/mute trolls without engaging
|
||||
- Let community defend you when appropriate
|
||||
|
||||
---
|
||||
|
||||
## Analytics & Optimization
|
||||
|
||||
### Metrics That Matter
|
||||
|
||||
**Awareness:**
|
||||
- Impressions
|
||||
- Reach
|
||||
- Follower growth rate
|
||||
**Awareness:** Impressions, Reach, Follower growth rate
|
||||
|
||||
**Engagement:**
|
||||
- Engagement rate (engagements / impressions)
|
||||
- Comments (higher value than likes)
|
||||
- Shares/reposts
|
||||
- Saves (Instagram)
|
||||
**Engagement:** Engagement rate, Comments (higher value than likes), Shares/reposts, Saves
|
||||
|
||||
**Conversion:**
|
||||
- Link clicks
|
||||
- Profile visits
|
||||
- DMs received
|
||||
- Leads/conversions attributed
|
||||
**Conversion:** Link clicks, Profile visits, DMs received, Leads attributed
|
||||
|
||||
### What to Track Weekly
|
||||
### Weekly Review
|
||||
|
||||
- [ ] Top 3 performing posts (why did they work?)
|
||||
- [ ] Bottom 3 posts (what can you learn?)
|
||||
- [ ] Follower growth trend
|
||||
- [ ] Engagement rate trend
|
||||
- [ ] Best posting times (from data)
|
||||
- [ ] Content pillar performance
|
||||
- Top 3 performing posts (why did they work?)
|
||||
- Bottom 3 posts (what can you learn?)
|
||||
- Follower growth trend
|
||||
- Engagement rate trend
|
||||
- Best posting times (from data)
|
||||
|
||||
### Optimization Actions
|
||||
|
||||
**If engagement is low:**
|
||||
- Test new hooks
|
||||
- Post at different times
|
||||
- Try different formats (carousel vs. text)
|
||||
- Increase native engagement with others
|
||||
- Check if content matches audience interest
|
||||
- Try different formats
|
||||
- Increase engagement with others
|
||||
|
||||
**If reach is declining:**
|
||||
- Avoid external links in post body
|
||||
- Increase posting frequency slightly
|
||||
- Increase posting frequency
|
||||
- Engage more in comments
|
||||
- Test video/visual content
|
||||
- Check for algorithm changes
|
||||
|
||||
---
|
||||
|
||||
## Platform-Specific Tips
|
||||
|
||||
### LinkedIn Algorithm Tips
|
||||
|
||||
- First hour engagement matters most
|
||||
- Comments > reactions > clicks
|
||||
- Dwell time (people reading) signals quality
|
||||
- No external links in post body
|
||||
- Document posts (carousels) get strong reach
|
||||
- Polls drive engagement but don't build authority
|
||||
|
||||
### Twitter/X Algorithm Tips
|
||||
|
||||
- Replies and quote tweets build authority
|
||||
- Threads keep people on platform (rewarded)
|
||||
- Images and video get more reach
|
||||
- Engagement in first 30 min matters
|
||||
- Twitter Blue/Premium may boost reach
|
||||
|
||||
### Instagram Algorithm Tips
|
||||
|
||||
- Reels heavily prioritized over static posts
|
||||
- Saves and shares > likes
|
||||
- Stories keep you top of feed
|
||||
- Consistency matters more than perfection
|
||||
- Use all features (polls, questions, etc.)
|
||||
|
||||
---
|
||||
|
||||
## Content Ideas by Situation
|
||||
|
||||
### When You're Starting Out
|
||||
|
||||
- Document your journey
|
||||
- Share what you're learning
|
||||
- Curate and comment on industry content
|
||||
- Ask questions to your audience
|
||||
- Engage heavily with established accounts
|
||||
|
||||
### When You're Established
|
||||
|
||||
- Share original data and insights
|
||||
- Tell customer success stories
|
||||
- Take stronger positions
|
||||
- Create signature frameworks
|
||||
- Collaborate with peers
|
||||
|
||||
### When You're Stuck
|
||||
|
||||
- Repurpose old high-performing content
|
||||
- Ask your audience what they want
|
||||
- Comment on industry news
|
||||
- Share a failure or lesson learned
|
||||
- Interview someone and share insights
|
||||
|
||||
---
|
||||
|
||||
@@ -574,17 +230,9 @@ Engagement isn't just responding—it's actively participating:
|
||||
|
||||
### When to Schedule vs. Post Live
|
||||
|
||||
**Schedule:**
|
||||
- Core content posts
|
||||
- Threads
|
||||
- Carousels
|
||||
- Evergreen content
|
||||
**Schedule:** Core content posts, Threads, Carousels, Evergreen content
|
||||
|
||||
**Post live:**
|
||||
- Real-time commentary
|
||||
- Responses to news/trends
|
||||
- Engagement with others
|
||||
- Anything requiring immediate interaction
|
||||
**Post live:** Real-time commentary, Responses to news/trends, Engagement with others
|
||||
|
||||
### Queue Management
|
||||
|
||||
@@ -597,199 +245,21 @@ Engagement isn't just responding—it's actively participating:
|
||||
|
||||
## Reverse Engineering Viral Content
|
||||
|
||||
Instead of guessing what works, systematically analyze top-performing content in your niche and extract proven patterns.
|
||||
Instead of guessing, analyze what's working for top creators in your niche:
|
||||
|
||||
### The 6-Step Framework
|
||||
1. **Find creators** — 10-20 accounts with high engagement
|
||||
2. **Collect data** — 500+ posts for analysis
|
||||
3. **Analyze patterns** — Hooks, formats, CTAs that work
|
||||
4. **Codify playbook** — Document repeatable patterns
|
||||
5. **Layer your voice** — Apply patterns with authenticity
|
||||
6. **Convert** — Bridge attention to business results
|
||||
|
||||
#### 1. NICHE ID — Find Top Creators
|
||||
|
||||
Identify 10-20 creators in your space who consistently get high engagement:
|
||||
|
||||
**Selection criteria:**
|
||||
- Posting consistently (3+ times/week)
|
||||
- High engagement rate relative to follower count
|
||||
- Audience overlap with your target market
|
||||
- Mix of established and rising creators
|
||||
|
||||
**Where to find them:**
|
||||
- LinkedIn: Search by industry keywords, check "People also viewed"
|
||||
- Twitter/X: Check who your target audience follows and engages with
|
||||
- Use tools like SparkToro, Followerwonk, or manual research
|
||||
- Look at who gets featured in industry newsletters
|
||||
|
||||
#### 2. SCRAPE — Collect Posts at Scale
|
||||
|
||||
Gather 500-1000+ posts from your identified creators for analysis:
|
||||
|
||||
**Tools:**
|
||||
- **Apify** — LinkedIn scraper, Twitter scraper actors
|
||||
- **Phantom Buster** — Multi-platform automation
|
||||
- **Export tools** — Platform-specific export features
|
||||
- **Manual collection** — For smaller datasets, copy/paste into spreadsheet
|
||||
|
||||
**Data to collect:**
|
||||
- Post text/content
|
||||
- Engagement metrics (likes, comments, shares, saves)
|
||||
- Post format (text-only, carousel, video, image)
|
||||
- Posting time/day
|
||||
- Hook/first line
|
||||
- CTA used
|
||||
- Topic/theme
|
||||
|
||||
#### 3. ANALYZE — Extract What Actually Works
|
||||
|
||||
Sort and analyze the data to find patterns:
|
||||
|
||||
**Quantitative analysis:**
|
||||
- Rank posts by engagement rate
|
||||
- Identify top 10% performers
|
||||
- Look for format patterns (do carousels outperform?)
|
||||
- Check timing patterns (best days/times)
|
||||
- Compare topic performance
|
||||
|
||||
**Qualitative analysis:**
|
||||
- What hooks do top posts use?
|
||||
- How long are high-performing posts?
|
||||
- What emotional triggers appear?
|
||||
- What formats repeat?
|
||||
- What topics consistently perform?
|
||||
|
||||
**Questions to answer:**
|
||||
- What's the average length of top posts?
|
||||
- Which hook types appear most in top 10%?
|
||||
- What CTAs drive most comments?
|
||||
- What topics get saved/shared most?
|
||||
|
||||
#### 4. PLAYBOOK — Codify Patterns
|
||||
|
||||
Document repeatable patterns you can use:
|
||||
|
||||
**Hook patterns to codify:**
|
||||
```
|
||||
Pattern: "I [unexpected action] and [surprising result]"
|
||||
Example: "I stopped posting daily and my engagement doubled"
|
||||
Why it works: Curiosity gap + contrarian
|
||||
|
||||
Pattern: "[Specific number] [things] that [outcome]:"
|
||||
Example: "7 pricing mistakes that cost me $50K:"
|
||||
Why it works: Specificity + loss aversion
|
||||
|
||||
Pattern: "[Controversial take]"
|
||||
Example: "Cold outreach is dead."
|
||||
Why it works: Pattern interrupt + invites debate
|
||||
```
|
||||
|
||||
**Format patterns:**
|
||||
- Carousel: Hook slide → Problem → Solution steps → CTA
|
||||
- Thread: Hook → Promise → Deliver → Recap → CTA
|
||||
- Story post: Hook → Setup → Conflict → Resolution → Lesson
|
||||
|
||||
**CTA patterns:**
|
||||
- Question: "What would you add?"
|
||||
- Agreement: "Agree or disagree?"
|
||||
- Share: "Tag someone who needs this"
|
||||
- Save: "Save this for later"
|
||||
|
||||
#### 5. LAYER VOICE — Apply Direct Response Principles
|
||||
|
||||
Take proven patterns and make them yours with these voice principles:
|
||||
|
||||
**"Smart friend who figured something out"**
|
||||
- Write like you're texting advice to a friend
|
||||
- Share discoveries, not lectures
|
||||
- Use "I found that..." not "You should..."
|
||||
- Be helpful, not preachy
|
||||
|
||||
**Specific > Vague**
|
||||
```
|
||||
❌ "I made good revenue"
|
||||
✅ "I made $47,329"
|
||||
|
||||
❌ "It took a while"
|
||||
✅ "It took 47 days"
|
||||
|
||||
❌ "A lot of people"
|
||||
✅ "2,847 people"
|
||||
```
|
||||
|
||||
**Short. Breathe. Land.**
|
||||
- One idea per sentence
|
||||
- Use line breaks liberally
|
||||
- Let important points stand alone
|
||||
- Create rhythm: short, short, longer explanation
|
||||
|
||||
```
|
||||
❌ "I spent three years building my business the wrong way before I finally realized that the key to success was focusing on fewer things and doing them exceptionally well."
|
||||
|
||||
✅ "I built wrong for 3 years.
|
||||
|
||||
Then I figured it out.
|
||||
|
||||
Focus on less.
|
||||
Do it exceptionally well.
|
||||
|
||||
Everything changed."
|
||||
```
|
||||
|
||||
**Write from emotion**
|
||||
- Start with how you felt, not what you did
|
||||
- Use emotional words: frustrated, excited, terrified, obsessed
|
||||
- Show vulnerability when authentic
|
||||
- Connect the feeling to the lesson
|
||||
|
||||
```
|
||||
❌ "Here's what I learned about pricing"
|
||||
|
||||
✅ "I was terrified to raise my prices.
|
||||
|
||||
My hands were shaking when I sent the email.
|
||||
|
||||
Here's what happened..."
|
||||
```
|
||||
|
||||
#### 6. CONVERT — Turn Attention into Action
|
||||
|
||||
Bridge from engagement to business results:
|
||||
|
||||
**Soft conversions:**
|
||||
- Newsletter signups in bio/comments
|
||||
- Free resource offers in follow-up comments
|
||||
- DM triggers ("Comment X and I'll send you...")
|
||||
- Profile visits → optimized profile with clear CTA
|
||||
|
||||
**Direct conversions:**
|
||||
- Link in comments (not post body on LinkedIn)
|
||||
- Contextual product mentions within valuable content
|
||||
- Case study posts that naturally showcase your work
|
||||
- "If you want help with this, DM me" (sparingly)
|
||||
|
||||
### Output: Proven Patterns + Right Voice = Performance
|
||||
|
||||
The formula:
|
||||
```
|
||||
1. Find what's already working (don't guess)
|
||||
2. Extract the patterns (hooks, formats, CTAs)
|
||||
3. Layer your authentic voice on top
|
||||
4. Test and iterate based on your own data
|
||||
```
|
||||
|
||||
### Reverse Engineering Checklist
|
||||
|
||||
- [ ] Identified 10-20 top creators in niche
|
||||
- [ ] Collected 500+ posts for analysis
|
||||
- [ ] Ranked by engagement rate
|
||||
- [ ] Documented top 10 hook patterns
|
||||
- [ ] Documented top 5 format patterns
|
||||
- [ ] Documented top 5 CTA patterns
|
||||
- [ ] Created voice guidelines (specificity, brevity, emotion)
|
||||
- [ ] Built template library from patterns
|
||||
- [ ] Set up tracking for your own content performance
|
||||
**For the complete framework**: See [references/reverse-engineering.md](references/reverse-engineering.md)
|
||||
|
||||
---
|
||||
|
||||
## Questions to Ask
|
||||
## Task-Specific Questions
|
||||
|
||||
If you need more context:
|
||||
1. What platform(s) are you focusing on?
|
||||
2. What's your current posting frequency?
|
||||
3. Do you have existing content to repurpose?
|
||||
|
||||
163
skills/social-content/references/platforms.md
Normal file
163
skills/social-content/references/platforms.md
Normal file
@@ -0,0 +1,163 @@
|
||||
# Platform-Specific Strategy Guide
|
||||
|
||||
Detailed strategies for each major social platform.
|
||||
|
||||
## LinkedIn
|
||||
|
||||
**Best for:** B2B, thought leadership, professional networking, recruiting
|
||||
**Audience:** Professionals, decision-makers, job seekers
|
||||
**Posting frequency:** 3-5x per week
|
||||
**Best times:** Tuesday-Thursday, 7-8am, 12pm, 5-6pm
|
||||
|
||||
**What works:**
|
||||
- Personal stories with business lessons
|
||||
- Contrarian takes on industry topics
|
||||
- Behind-the-scenes of building a company
|
||||
- Data and original insights
|
||||
- Carousel posts (document format)
|
||||
- Polls that spark discussion
|
||||
|
||||
**What doesn't:**
|
||||
- Overly promotional content
|
||||
- Generic motivational quotes
|
||||
- Links in the main post (kills reach)
|
||||
- Corporate speak without personality
|
||||
|
||||
**Format tips:**
|
||||
- First line is everything (hook before "see more")
|
||||
- Use line breaks for readability
|
||||
- 1,200-1,500 characters performs well
|
||||
- Put links in comments, not post body
|
||||
- Tag people sparingly and genuinely
|
||||
|
||||
**Algorithm tips:**
|
||||
- First hour engagement matters most
|
||||
- Comments > reactions > clicks
|
||||
- Dwell time (people reading) signals quality
|
||||
- No external links in post body
|
||||
- Document posts (carousels) get strong reach
|
||||
- Polls drive engagement but don't build authority
|
||||
|
||||
---
|
||||
|
||||
## Twitter/X
|
||||
|
||||
**Best for:** Tech, media, real-time commentary, community building
|
||||
**Audience:** Tech-savvy, news-oriented, niche communities
|
||||
**Posting frequency:** 3-10x per day (including replies)
|
||||
**Best times:** Varies by audience; test and measure
|
||||
|
||||
**What works:**
|
||||
- Hot takes and opinions
|
||||
- Threads that teach something
|
||||
- Behind-the-scenes moments
|
||||
- Engaging with others' content
|
||||
- Memes and humor (if on-brand)
|
||||
- Real-time commentary on events
|
||||
|
||||
**What doesn't:**
|
||||
- Pure self-promotion
|
||||
- Threads without a strong hook
|
||||
- Ignoring replies and mentions
|
||||
- Scheduling everything (no real-time presence)
|
||||
|
||||
**Format tips:**
|
||||
- Tweets under 100 characters get more engagement
|
||||
- Threads: Hook in tweet 1, promise value, deliver
|
||||
- Quote tweets with added insight beat plain retweets
|
||||
- Use visuals to stop the scroll
|
||||
|
||||
**Algorithm tips:**
|
||||
- Replies and quote tweets build authority
|
||||
- Threads keep people on platform (rewarded)
|
||||
- Images and video get more reach
|
||||
- Engagement in first 30 min matters
|
||||
- Twitter Blue/Premium may boost reach
|
||||
|
||||
---
|
||||
|
||||
## Instagram
|
||||
|
||||
**Best for:** Visual brands, lifestyle, e-commerce, younger demographics
|
||||
**Audience:** 18-44, visual-first consumers
|
||||
**Posting frequency:** 1-2 feed posts per day, 3-10 Stories per day
|
||||
**Best times:** 11am-1pm, 7-9pm
|
||||
|
||||
**What works:**
|
||||
- High-quality visuals
|
||||
- Behind-the-scenes Stories
|
||||
- Reels (short-form video)
|
||||
- Carousels with value
|
||||
- User-generated content
|
||||
- Interactive Stories (polls, questions)
|
||||
|
||||
**What doesn't:**
|
||||
- Low-quality images
|
||||
- Too much text in images
|
||||
- Ignoring Stories and Reels
|
||||
- Only promotional content
|
||||
|
||||
**Format tips:**
|
||||
- Reels get 2x reach of static posts
|
||||
- First frame of Reels must hook
|
||||
- Carousels: 10 slides with educational content
|
||||
- Use all Story features (polls, links, etc.)
|
||||
|
||||
**Algorithm tips:**
|
||||
- Reels heavily prioritized over static posts
|
||||
- Saves and shares > likes
|
||||
- Stories keep you top of feed
|
||||
- Consistency matters more than perfection
|
||||
- Use all features (polls, questions, etc.)
|
||||
|
||||
---
|
||||
|
||||
## TikTok
|
||||
|
||||
**Best for:** Brand awareness, younger audiences, viral potential
|
||||
**Audience:** 16-34, entertainment-focused
|
||||
**Posting frequency:** 1-4x per day
|
||||
**Best times:** 7-9am, 12-3pm, 7-11pm
|
||||
|
||||
**What works:**
|
||||
- Native, unpolished content
|
||||
- Trending sounds and formats
|
||||
- Educational content in entertaining wrapper
|
||||
- POV and day-in-the-life content
|
||||
- Responding to comments with videos
|
||||
- Duets and stitches
|
||||
|
||||
**What doesn't:**
|
||||
- Overly produced content
|
||||
- Ignoring trends
|
||||
- Hard selling
|
||||
- Repurposed horizontal video
|
||||
|
||||
**Format tips:**
|
||||
- Hook in first 1-2 seconds
|
||||
- Keep it under 30 seconds to start
|
||||
- Vertical only (9:16)
|
||||
- Use trending sounds
|
||||
- Post consistently to train algorithm
|
||||
|
||||
---
|
||||
|
||||
## Facebook
|
||||
|
||||
**Best for:** Communities, local businesses, older demographics, groups
|
||||
**Audience:** 25-55+, community-oriented
|
||||
**Posting frequency:** 1-2x per day
|
||||
**Best times:** 1-4pm weekdays
|
||||
|
||||
**What works:**
|
||||
- Facebook Groups (community)
|
||||
- Native video
|
||||
- Live video
|
||||
- Local content and events
|
||||
- Discussion-prompting questions
|
||||
|
||||
**What doesn't:**
|
||||
- Links to external sites (reach killer)
|
||||
- Pure promotional content
|
||||
- Ignoring comments
|
||||
- Cross-posting from other platforms without adaptation
|
||||
171
skills/social-content/references/post-templates.md
Normal file
171
skills/social-content/references/post-templates.md
Normal file
@@ -0,0 +1,171 @@
|
||||
# Post Format Templates
|
||||
|
||||
Ready-to-use templates for different platforms and content types.
|
||||
|
||||
## LinkedIn Post Templates
|
||||
|
||||
### The Story Post
|
||||
```
|
||||
[Hook: Unexpected outcome or lesson]
|
||||
|
||||
[Set the scene: When/where this happened]
|
||||
|
||||
[The challenge you faced]
|
||||
|
||||
[What you tried / what happened]
|
||||
|
||||
[The turning point]
|
||||
|
||||
[The result]
|
||||
|
||||
[The lesson for readers]
|
||||
|
||||
[Question to prompt engagement]
|
||||
```
|
||||
|
||||
### The Contrarian Take
|
||||
```
|
||||
[Unpopular opinion stated boldly]
|
||||
|
||||
Here's why:
|
||||
|
||||
[Reason 1]
|
||||
[Reason 2]
|
||||
[Reason 3]
|
||||
|
||||
[What you recommend instead]
|
||||
|
||||
[Invite discussion: "Am I wrong?"]
|
||||
```
|
||||
|
||||
### The List Post
|
||||
```
|
||||
[X things I learned about [topic] after [credibility builder]:
|
||||
|
||||
1. [Point] — [Brief explanation]
|
||||
|
||||
2. [Point] — [Brief explanation]
|
||||
|
||||
3. [Point] — [Brief explanation]
|
||||
|
||||
[Wrap-up insight]
|
||||
|
||||
Which resonates most with you?
|
||||
```
|
||||
|
||||
### The How-To
|
||||
```
|
||||
How to [achieve outcome] in [timeframe]:
|
||||
|
||||
Step 1: [Action]
|
||||
↳ [Why this matters]
|
||||
|
||||
Step 2: [Action]
|
||||
↳ [Key detail]
|
||||
|
||||
Step 3: [Action]
|
||||
↳ [Common mistake to avoid]
|
||||
|
||||
[Result you can expect]
|
||||
|
||||
[CTA or question]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Twitter/X Thread Templates
|
||||
|
||||
### The Tutorial Thread
|
||||
```
|
||||
Tweet 1: [Hook + promise of value]
|
||||
|
||||
"Here's exactly how to [outcome] (step-by-step):"
|
||||
|
||||
Tweet 2-7: [One step per tweet with details]
|
||||
|
||||
Final tweet: [Summary + CTA]
|
||||
|
||||
"If this was helpful, follow me for more on [topic]"
|
||||
```
|
||||
|
||||
### The Story Thread
|
||||
```
|
||||
Tweet 1: [Intriguing hook]
|
||||
|
||||
"[Time] ago, [unexpected thing happened]. Here's the full story:"
|
||||
|
||||
Tweet 2-6: [Story beats, building tension]
|
||||
|
||||
Tweet 7: [Resolution and lesson]
|
||||
|
||||
Final tweet: [Takeaway + engagement ask]
|
||||
```
|
||||
|
||||
### The Breakdown Thread
|
||||
```
|
||||
Tweet 1: [Company/person] just [did thing].
|
||||
|
||||
Here's why it's genius (and what you can learn):
|
||||
|
||||
Tweet 2-6: [Analysis points]
|
||||
|
||||
Tweet 7: [Your key takeaway]
|
||||
|
||||
"[Related insight + follow CTA]"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Instagram Templates
|
||||
|
||||
### The Carousel Hook
|
||||
```
|
||||
[Slide 1: Bold statement or question]
|
||||
[Slides 2-9: One point per slide, visual + text]
|
||||
[Slide 10: Summary + CTA]
|
||||
|
||||
Caption: [Expand on the topic, add context, include CTA]
|
||||
```
|
||||
|
||||
### The Reel Script
|
||||
```
|
||||
Hook (0-2 sec): [Pattern interrupt or bold claim]
|
||||
Setup (2-5 sec): [Context for the tip]
|
||||
Value (5-25 sec): [The actual advice/content]
|
||||
CTA (25-30 sec): [Follow, comment, share, link]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Hook Formulas
|
||||
|
||||
The first line determines whether anyone reads the rest.
|
||||
|
||||
### Curiosity Hooks
|
||||
- "I was wrong about [common belief]."
|
||||
- "The real reason [outcome] happens isn't what you think."
|
||||
- "[Impressive result] — and it only took [surprisingly short time]."
|
||||
- "Nobody talks about [insider knowledge]."
|
||||
|
||||
### Story Hooks
|
||||
- "Last week, [unexpected thing] happened."
|
||||
- "I almost [big mistake/failure]."
|
||||
- "3 years ago, I [past state]. Today, [current state]."
|
||||
- "[Person] told me something I'll never forget."
|
||||
|
||||
### Value Hooks
|
||||
- "How to [desirable outcome] (without [common pain]):"
|
||||
- "[Number] [things] that [outcome]:"
|
||||
- "The simplest way to [outcome]:"
|
||||
- "Stop [common mistake]. Do this instead:"
|
||||
|
||||
### Contrarian Hooks
|
||||
- "Unpopular opinion: [bold statement]"
|
||||
- "[Common advice] is wrong. Here's why:"
|
||||
- "I stopped [common practice] and [positive result]."
|
||||
- "Everyone says [X]. The truth is [Y]."
|
||||
|
||||
### Social Proof Hooks
|
||||
- "We [achieved result] in [timeframe]. Here's the full story:"
|
||||
- "[Number] people asked me about [topic]. Here's my answer:"
|
||||
- "[Authority figure] taught me [lesson]."
|
||||
190
skills/social-content/references/reverse-engineering.md
Normal file
190
skills/social-content/references/reverse-engineering.md
Normal file
@@ -0,0 +1,190 @@
|
||||
# Reverse Engineering Viral Content
|
||||
|
||||
Instead of guessing what works, systematically analyze top-performing content in your niche and extract proven patterns.
|
||||
|
||||
## The 6-Step Framework
|
||||
|
||||
### 1. NICHE ID — Find Top Creators
|
||||
|
||||
Identify 10-20 creators in your space who consistently get high engagement:
|
||||
|
||||
**Selection criteria:**
|
||||
- Posting consistently (3+ times/week)
|
||||
- High engagement rate relative to follower count
|
||||
- Audience overlap with your target market
|
||||
- Mix of established and rising creators
|
||||
|
||||
**Where to find them:**
|
||||
- LinkedIn: Search by industry keywords, check "People also viewed"
|
||||
- Twitter/X: Check who your target audience follows and engages with
|
||||
- Use tools like SparkToro, Followerwonk, or manual research
|
||||
- Look at who gets featured in industry newsletters
|
||||
|
||||
### 2. SCRAPE — Collect Posts at Scale
|
||||
|
||||
Gather 500-1000+ posts from your identified creators for analysis:
|
||||
|
||||
**Tools:**
|
||||
- **Apify** — LinkedIn scraper, Twitter scraper actors
|
||||
- **Phantom Buster** — Multi-platform automation
|
||||
- **Export tools** — Platform-specific export features
|
||||
- **Manual collection** — For smaller datasets, copy/paste into spreadsheet
|
||||
|
||||
**Data to collect:**
|
||||
- Post text/content
|
||||
- Engagement metrics (likes, comments, shares, saves)
|
||||
- Post format (text-only, carousel, video, image)
|
||||
- Posting time/day
|
||||
- Hook/first line
|
||||
- CTA used
|
||||
- Topic/theme
|
||||
|
||||
### 3. ANALYZE — Extract What Actually Works
|
||||
|
||||
Sort and analyze the data to find patterns:
|
||||
|
||||
**Quantitative analysis:**
|
||||
- Rank posts by engagement rate
|
||||
- Identify top 10% performers
|
||||
- Look for format patterns (do carousels outperform?)
|
||||
- Check timing patterns (best days/times)
|
||||
- Compare topic performance
|
||||
|
||||
**Qualitative analysis:**
|
||||
- What hooks do top posts use?
|
||||
- How long are high-performing posts?
|
||||
- What emotional triggers appear?
|
||||
- What formats repeat?
|
||||
- What topics consistently perform?
|
||||
|
||||
**Questions to answer:**
|
||||
- What's the average length of top posts?
|
||||
- Which hook types appear most in top 10%?
|
||||
- What CTAs drive most comments?
|
||||
- What topics get saved/shared most?
|
||||
|
||||
### 4. PLAYBOOK — Codify Patterns
|
||||
|
||||
Document repeatable patterns you can use:
|
||||
|
||||
**Hook patterns to codify:**
|
||||
```
|
||||
Pattern: "I [unexpected action] and [surprising result]"
|
||||
Example: "I stopped posting daily and my engagement doubled"
|
||||
Why it works: Curiosity gap + contrarian
|
||||
|
||||
Pattern: "[Specific number] [things] that [outcome]:"
|
||||
Example: "7 pricing mistakes that cost me $50K:"
|
||||
Why it works: Specificity + loss aversion
|
||||
|
||||
Pattern: "[Controversial take]"
|
||||
Example: "Cold outreach is dead."
|
||||
Why it works: Pattern interrupt + invites debate
|
||||
```
|
||||
|
||||
**Format patterns:**
|
||||
- Carousel: Hook slide → Problem → Solution steps → CTA
|
||||
- Thread: Hook → Promise → Deliver → Recap → CTA
|
||||
- Story post: Hook → Setup → Conflict → Resolution → Lesson
|
||||
|
||||
**CTA patterns:**
|
||||
- Question: "What would you add?"
|
||||
- Agreement: "Agree or disagree?"
|
||||
- Share: "Tag someone who needs this"
|
||||
- Save: "Save this for later"
|
||||
|
||||
### 5. LAYER VOICE — Apply Direct Response Principles
|
||||
|
||||
Take proven patterns and make them yours with these voice principles:
|
||||
|
||||
**"Smart friend who figured something out"**
|
||||
- Write like you're texting advice to a friend
|
||||
- Share discoveries, not lectures
|
||||
- Use "I found that..." not "You should..."
|
||||
- Be helpful, not preachy
|
||||
|
||||
**Specific > Vague**
|
||||
```
|
||||
❌ "I made good revenue"
|
||||
✅ "I made $47,329"
|
||||
|
||||
❌ "It took a while"
|
||||
✅ "It took 47 days"
|
||||
|
||||
❌ "A lot of people"
|
||||
✅ "2,847 people"
|
||||
```
|
||||
|
||||
**Short. Breathe. Land.**
|
||||
- One idea per sentence
|
||||
- Use line breaks liberally
|
||||
- Let important points stand alone
|
||||
- Create rhythm: short, short, longer explanation
|
||||
|
||||
```
|
||||
❌ "I spent three years building my business the wrong way before I finally realized that the key to success was focusing on fewer things and doing them exceptionally well."
|
||||
|
||||
✅ "I built wrong for 3 years.
|
||||
|
||||
Then I figured it out.
|
||||
|
||||
Focus on less.
|
||||
Do it exceptionally well.
|
||||
|
||||
Everything changed."
|
||||
```
|
||||
|
||||
**Write from emotion**
|
||||
- Start with how you felt, not what you did
|
||||
- Use emotional words: frustrated, excited, terrified, obsessed
|
||||
- Show vulnerability when authentic
|
||||
- Connect the feeling to the lesson
|
||||
|
||||
```
|
||||
❌ "Here's what I learned about pricing"
|
||||
|
||||
✅ "I was terrified to raise my prices.
|
||||
|
||||
My hands were shaking when I sent the email.
|
||||
|
||||
Here's what happened..."
|
||||
```
|
||||
|
||||
### 6. CONVERT — Turn Attention into Action
|
||||
|
||||
Bridge from engagement to business results:
|
||||
|
||||
**Soft conversions:**
|
||||
- Newsletter signups in bio/comments
|
||||
- Free resource offers in follow-up comments
|
||||
- DM triggers ("Comment X and I'll send you...")
|
||||
- Profile visits → optimized profile with clear CTA
|
||||
|
||||
**Direct conversions:**
|
||||
- Link in comments (not post body on LinkedIn)
|
||||
- Contextual product mentions within valuable content
|
||||
- Case study posts that naturally showcase your work
|
||||
- "If you want help with this, DM me" (sparingly)
|
||||
|
||||
---
|
||||
|
||||
## The Formula
|
||||
|
||||
```
|
||||
1. Find what's already working (don't guess)
|
||||
2. Extract the patterns (hooks, formats, CTAs)
|
||||
3. Layer your authentic voice on top
|
||||
4. Test and iterate based on your own data
|
||||
```
|
||||
|
||||
## Reverse Engineering Checklist
|
||||
|
||||
- [ ] Identified 10-20 top creators in niche
|
||||
- [ ] Collected 500+ posts for analysis
|
||||
- [ ] Ranked by engagement rate
|
||||
- [ ] Documented top 10 hook patterns
|
||||
- [ ] Documented top 5 format patterns
|
||||
- [ ] Documented top 5 CTA patterns
|
||||
- [ ] Created voice guidelines (specificity, brevity, emotion)
|
||||
- [ ] Built template library from patterns
|
||||
- [ ] Set up tracking for your own content performance
|
||||
194
tools/REGISTRY.md
Normal file
194
tools/REGISTRY.md
Normal file
@@ -0,0 +1,194 @@
|
||||
# Marketing Tools Registry
|
||||
|
||||
Quick reference for AI agents to discover tool capabilities and integration methods.
|
||||
|
||||
## How to Use This Registry
|
||||
|
||||
1. **Find tools by category** - Browse sections below for tools in each domain
|
||||
2. **Check integration methods** - See what APIs, MCPs, CLIs, or SDKs are available
|
||||
3. **Read integration guides** - Detailed setup and common operations in `integrations/`
|
||||
|
||||
---
|
||||
|
||||
## Tool Index
|
||||
|
||||
| Tool | Category | API | MCP | CLI | SDK | Guide |
|
||||
|------|----------|:---:|:---:|:---:|:---:|-------|
|
||||
| ga4 | Analytics | ✓ | ✓ | - | ✓ | [ga4.md](integrations/ga4.md) |
|
||||
| mixpanel | Analytics | ✓ | - | - | ✓ | [mixpanel.md](integrations/mixpanel.md) |
|
||||
| amplitude | Analytics | ✓ | - | - | ✓ | [amplitude.md](integrations/amplitude.md) |
|
||||
| posthog | Analytics | ✓ | - | ✓ | ✓ | [posthog.md](integrations/posthog.md) |
|
||||
| segment | Analytics | ✓ | - | - | ✓ | [segment.md](integrations/segment.md) |
|
||||
| adobe-analytics | Analytics | ✓ | - | - | ✓ | [adobe-analytics.md](integrations/adobe-analytics.md) |
|
||||
| google-search-console | SEO | ✓ | - | - | ✓ | [google-search-console.md](integrations/google-search-console.md) |
|
||||
| semrush | SEO | ✓ | - | - | - | [semrush.md](integrations/semrush.md) |
|
||||
| ahrefs | SEO | ✓ | - | - | - | [ahrefs.md](integrations/ahrefs.md) |
|
||||
| hubspot | CRM | ✓ | - | ✓ | ✓ | [hubspot.md](integrations/hubspot.md) |
|
||||
| salesforce | CRM | ✓ | - | ✓ | ✓ | [salesforce.md](integrations/salesforce.md) |
|
||||
| stripe | Payments | ✓ | ✓ | ✓ | ✓ | [stripe.md](integrations/stripe.md) |
|
||||
| rewardful | Referral | ✓ | - | - | - | [rewardful.md](integrations/rewardful.md) |
|
||||
| tolt | Referral | ✓ | - | - | - | [tolt.md](integrations/tolt.md) |
|
||||
| dub-co | Links | ✓ | - | - | ✓ | [dub-co.md](integrations/dub-co.md) |
|
||||
| mention-me | Referral | ✓ | - | - | - | [mention-me.md](integrations/mention-me.md) |
|
||||
| mailchimp | Email | ✓ | ✓ | - | ✓ | [mailchimp.md](integrations/mailchimp.md) |
|
||||
| customer-io | Email | ✓ | - | - | ✓ | [customer-io.md](integrations/customer-io.md) |
|
||||
| sendgrid | Email | ✓ | - | - | ✓ | [sendgrid.md](integrations/sendgrid.md) |
|
||||
| resend | Email | ✓ | ✓ | - | ✓ | [resend.md](integrations/resend.md) |
|
||||
| kit | Email | ✓ | - | - | ✓ | [kit.md](integrations/kit.md) |
|
||||
| google-ads | Ads | ✓ | ✓ | - | ✓ | [google-ads.md](integrations/google-ads.md) |
|
||||
| meta-ads | Ads | ✓ | - | - | ✓ | [meta-ads.md](integrations/meta-ads.md) |
|
||||
| linkedin-ads | Ads | ✓ | - | - | - | [linkedin-ads.md](integrations/linkedin-ads.md) |
|
||||
| tiktok-ads | Ads | ✓ | - | - | ✓ | [tiktok-ads.md](integrations/tiktok-ads.md) |
|
||||
| zapier | Automation | ✓ | ✓ | - | - | [zapier.md](integrations/zapier.md) |
|
||||
| shopify | Commerce | ✓ | - | ✓ | ✓ | [shopify.md](integrations/shopify.md) |
|
||||
| wordpress | CMS | ✓ | - | ✓ | ✓ | [wordpress.md](integrations/wordpress.md) |
|
||||
| webflow | CMS | ✓ | - | ✓ | ✓ | [webflow.md](integrations/webflow.md) |
|
||||
|
||||
---
|
||||
|
||||
## By Category
|
||||
|
||||
### Analytics
|
||||
|
||||
Track user behavior, measure conversions, and analyze marketing performance.
|
||||
|
||||
| Tool | Best For | MCP Available |
|
||||
|------|----------|:-------------:|
|
||||
| **ga4** | Web analytics, Google ecosystem | ✓ |
|
||||
| **mixpanel** | Product analytics, event tracking | - |
|
||||
| **amplitude** | Product analytics, cohort analysis | - |
|
||||
| **posthog** | Open-source analytics, session replay | - |
|
||||
| **segment** | Customer data platform, routing | - |
|
||||
| **adobe-analytics** | Enterprise analytics | - |
|
||||
|
||||
**Agent recommendation**: Start with GA4 if using Google ecosystem. Use Mixpanel or Amplitude for deeper product analytics.
|
||||
|
||||
### SEO
|
||||
|
||||
Search engine optimization tools for keyword research, rank tracking, and site audits.
|
||||
|
||||
| Tool | Best For | Notes |
|
||||
|------|----------|-------|
|
||||
| **google-search-console** | Free, authoritative search data | Direct from Google |
|
||||
| **semrush** | Competitive analysis, keyword research | Comprehensive |
|
||||
| **ahrefs** | Backlink analysis, content research | Best for links |
|
||||
|
||||
**Agent recommendation**: Google Search Console is essential (free). Add Semrush or Ahrefs for competitive research.
|
||||
|
||||
### CRM
|
||||
|
||||
Customer relationship management and sales tools.
|
||||
|
||||
| Tool | Best For | CLI Available |
|
||||
|------|----------|:-------------:|
|
||||
| **hubspot** | SMB, marketing + sales alignment | ✓ |
|
||||
| **salesforce** | Enterprise, complex sales processes | ✓ |
|
||||
|
||||
**Agent recommendation**: HubSpot for startups/SMBs, Salesforce for enterprise.
|
||||
|
||||
### Payments
|
||||
|
||||
Payment processing and subscription management.
|
||||
|
||||
| Tool | Best For | MCP Available |
|
||||
|------|----------|:-------------:|
|
||||
| **stripe** | SaaS subscriptions, developer-friendly | ✓ |
|
||||
|
||||
**Agent recommendation**: Stripe is the default for SaaS and developer-focused products.
|
||||
|
||||
### Referral & Affiliate
|
||||
|
||||
Tools for referral programs, affiliate tracking, and partner management.
|
||||
|
||||
| Tool | Best For | Stripe Integration |
|
||||
|------|----------|:------------------:|
|
||||
| **rewardful** | Stripe-native affiliate programs | ✓ |
|
||||
| **tolt** | SaaS affiliate programs | ✓ |
|
||||
| **mention-me** | Enterprise referral programs | ✓ |
|
||||
| **dub-co** | Link tracking, attribution | - |
|
||||
|
||||
**Agent recommendation**: Rewardful or Tolt for Stripe-based SaaS. Dub.co for link attribution.
|
||||
|
||||
### Email
|
||||
|
||||
Email marketing, transactional email, and automation platforms.
|
||||
|
||||
| Tool | Best For | MCP Available |
|
||||
|------|----------|:-------------:|
|
||||
| **mailchimp** | SMB email marketing | ✓ |
|
||||
| **customer-io** | Behavior-based messaging | - |
|
||||
| **sendgrid** | Transactional email at scale | - |
|
||||
| **resend** | Developer-friendly transactional | ✓ |
|
||||
| **kit** | Creator/newsletter focused | - |
|
||||
|
||||
**Agent recommendation**: Resend for transactional (dev-friendly). Customer.io for advanced automation. Kit for creators.
|
||||
|
||||
### Advertising
|
||||
|
||||
Paid advertising platforms and campaign management.
|
||||
|
||||
| Tool | Best For | MCP Available |
|
||||
|------|----------|:-------------:|
|
||||
| **google-ads** | Search intent, high-intent traffic | ✓ |
|
||||
| **meta-ads** | Demand gen, visual products, B2C | - |
|
||||
| **linkedin-ads** | B2B, job title targeting | - |
|
||||
| **tiktok-ads** | Younger demographics, video | - |
|
||||
|
||||
**Agent recommendation**: Google Ads for search intent. Meta for demand generation. LinkedIn for B2B.
|
||||
|
||||
### Automation
|
||||
|
||||
Workflow automation and integration platforms.
|
||||
|
||||
| Tool | Best For | MCP Available |
|
||||
|------|----------|:-------------:|
|
||||
| **zapier** | No-code integrations | ✓ |
|
||||
|
||||
**Agent recommendation**: Zapier for connecting tools without code.
|
||||
|
||||
### Commerce & CMS
|
||||
|
||||
E-commerce platforms and content management systems.
|
||||
|
||||
| Tool | Best For | CLI Available |
|
||||
|------|----------|:-------------:|
|
||||
| **shopify** | E-commerce, product sales | ✓ |
|
||||
| **wordpress** | Blogs, content sites | ✓ |
|
||||
| **webflow** | Design-focused marketing sites | ✓ |
|
||||
|
||||
**Agent recommendation**: Shopify for e-commerce. Webflow for marketing sites. WordPress for blogs.
|
||||
|
||||
---
|
||||
|
||||
## MCP-Enabled Tools
|
||||
|
||||
These tools have Model Context Protocol servers available, enabling direct agent interaction:
|
||||
|
||||
- **ga4** - Google Analytics 4 data access
|
||||
- **stripe** - Payment and subscription management
|
||||
- **mailchimp** - Email campaign management
|
||||
- **google-ads** - Ad campaign management
|
||||
- **resend** - Transactional email sending
|
||||
- **zapier** - Workflow automation
|
||||
|
||||
To use MCP tools, ensure the appropriate MCP server is configured in your environment.
|
||||
|
||||
---
|
||||
|
||||
## Quick Start by Use Case
|
||||
|
||||
### Setting up analytics tracking
|
||||
1. Read [ga4.md](integrations/ga4.md) for web analytics
|
||||
2. Read [segment.md](integrations/segment.md) if routing to multiple tools
|
||||
|
||||
### Launching a referral program
|
||||
1. Read [rewardful.md](integrations/rewardful.md) or [tolt.md](integrations/tolt.md) for Stripe-based programs
|
||||
2. Read [dub-co.md](integrations/dub-co.md) for link tracking
|
||||
|
||||
### Setting up email automation
|
||||
1. Read [customer-io.md](integrations/customer-io.md) for behavior-based automation
|
||||
2. Read [resend.md](integrations/resend.md) for transactional email
|
||||
|
||||
### Running paid ads
|
||||
1. Read [google-ads.md](integrations/google-ads.md) for search campaigns
|
||||
2. Read [meta-ads.md](integrations/meta-ads.md) for social campaigns
|
||||
156
tools/integrations/adobe-analytics.md
Normal file
156
tools/integrations/adobe-analytics.md
Normal file
@@ -0,0 +1,156 @@
|
||||
# Adobe Analytics
|
||||
|
||||
Enterprise analytics platform for cross-channel measurement and attribution.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Reporting API 2.0, Data Insertion API |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | AppMeasurement.js, Mobile SDKs, Launch |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: OAuth 2.0 (Service Account JWT)
|
||||
- **Setup**: Create integration in Adobe Developer Console
|
||||
- **Header**: `Authorization: Bearer {access_token}`
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Get report suite info
|
||||
|
||||
```bash
|
||||
GET https://analytics.adobe.io/api/{company_id}/reportsuites
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
x-api-key: {client_id}
|
||||
```
|
||||
|
||||
### Get dimensions
|
||||
|
||||
```bash
|
||||
GET https://analytics.adobe.io/api/{company_id}/dimensions?rsid={report_suite_id}
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
x-api-key: {client_id}
|
||||
```
|
||||
|
||||
### Get metrics
|
||||
|
||||
```bash
|
||||
GET https://analytics.adobe.io/api/{company_id}/metrics?rsid={report_suite_id}
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
x-api-key: {client_id}
|
||||
```
|
||||
|
||||
### Run report
|
||||
|
||||
```bash
|
||||
POST https://analytics.adobe.io/api/{company_id}/reports
|
||||
|
||||
{
|
||||
"rsid": "{report_suite_id}",
|
||||
"globalFilters": [{
|
||||
"type": "dateRange",
|
||||
"dateRange": "2024-01-01T00:00:00/2024-01-31T23:59:59"
|
||||
}],
|
||||
"metricContainer": {
|
||||
"metrics": [
|
||||
{"id": "metrics/visits"},
|
||||
{"id": "metrics/pageviews"},
|
||||
{"id": "metrics/orders"}
|
||||
]
|
||||
},
|
||||
"dimension": "variables/evar1"
|
||||
}
|
||||
```
|
||||
|
||||
### Get segments
|
||||
|
||||
```bash
|
||||
GET https://analytics.adobe.io/api/{company_id}/segments?rsid={report_suite_id}
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
x-api-key: {client_id}
|
||||
```
|
||||
|
||||
### Data Insertion (server-side)
|
||||
|
||||
```bash
|
||||
POST https://{tracking_server}/b/ss/{report_suite_id}/0
|
||||
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<request>
|
||||
<visitorID>user_123</visitorID>
|
||||
<events>event1</events>
|
||||
<eVar1>campaign_name</eVar1>
|
||||
<prop1>page_type</prop1>
|
||||
</request>
|
||||
```
|
||||
|
||||
## AppMeasurement.js
|
||||
|
||||
```javascript
|
||||
// Initialize
|
||||
var s = s_gi('report_suite_id');
|
||||
s.trackingServer = 'metrics.example.com';
|
||||
|
||||
// Set variables
|
||||
s.pageName = 'Home Page';
|
||||
s.channel = 'Marketing';
|
||||
s.eVar1 = 'campaign_name';
|
||||
s.events = 'event1';
|
||||
|
||||
// Track page view
|
||||
s.t();
|
||||
|
||||
// Track link
|
||||
s.tl(this, 'o', 'Button Click');
|
||||
```
|
||||
|
||||
## Key Concepts
|
||||
|
||||
- **Report Suite** - Data container
|
||||
- **eVars** - Conversion variables (persistent)
|
||||
- **props** - Traffic variables (hit-level)
|
||||
- **Events** - Success metrics
|
||||
- **Segments** - User/visit filters
|
||||
- **Calculated Metrics** - Derived metrics
|
||||
|
||||
## Common Dimensions
|
||||
|
||||
- `variables/page` - Page name
|
||||
- `variables/evar1` - Custom conversion variable
|
||||
- `variables/prop1` - Custom traffic variable
|
||||
- `variables/marketingchannel` - Marketing channel
|
||||
- `variables/referringdomain` - Referring domain
|
||||
|
||||
## Common Metrics
|
||||
|
||||
- `metrics/visits` - Visits
|
||||
- `metrics/pageviews` - Page views
|
||||
- `metrics/uniquevisitors` - Unique visitors
|
||||
- `metrics/orders` - Orders
|
||||
- `metrics/revenue` - Revenue
|
||||
|
||||
## When to Use
|
||||
|
||||
- Enterprise-scale analytics
|
||||
- Cross-channel attribution
|
||||
- Integration with Adobe Experience Cloud
|
||||
- Advanced segmentation
|
||||
- Data warehouse exports
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 12 requests/second per company
|
||||
- 120 requests/minute
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- analytics-tracking
|
||||
- ab-test-setup
|
||||
- paid-ads
|
||||
142
tools/integrations/ahrefs.md
Normal file
142
tools/integrations/ahrefs.md
Normal file
@@ -0,0 +1,142 @@
|
||||
# Ahrefs
|
||||
|
||||
SEO toolset for backlink analysis, keyword research, and competitive research.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST API for Site Explorer, Keywords Explorer |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | - | API-only |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Token
|
||||
- **Header**: `Authorization: Bearer {api_token}`
|
||||
- **Get token**: Account Settings > API in Ahrefs dashboard
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Domain rating
|
||||
|
||||
```bash
|
||||
GET https://api.ahrefs.com/v3/site-explorer/domain-rating?target=example.com
|
||||
|
||||
Authorization: Bearer {api_token}
|
||||
```
|
||||
|
||||
### Backlinks overview
|
||||
|
||||
```bash
|
||||
GET https://api.ahrefs.com/v3/site-explorer/backlinks-stats?target=example.com&mode=domain
|
||||
|
||||
Authorization: Bearer {api_token}
|
||||
```
|
||||
|
||||
### Referring domains
|
||||
|
||||
```bash
|
||||
GET https://api.ahrefs.com/v3/site-explorer/refdomains?target=example.com&mode=domain&limit=100
|
||||
|
||||
Authorization: Bearer {api_token}
|
||||
```
|
||||
|
||||
### Backlinks list
|
||||
|
||||
```bash
|
||||
GET https://api.ahrefs.com/v3/site-explorer/backlinks?target=example.com&mode=domain&limit=100
|
||||
|
||||
Authorization: Bearer {api_token}
|
||||
```
|
||||
|
||||
### Organic keywords
|
||||
|
||||
```bash
|
||||
GET https://api.ahrefs.com/v3/site-explorer/organic-keywords?target=example.com&mode=domain&country=us&limit=100
|
||||
|
||||
Authorization: Bearer {api_token}
|
||||
```
|
||||
|
||||
### Top pages
|
||||
|
||||
```bash
|
||||
GET https://api.ahrefs.com/v3/site-explorer/top-pages?target=example.com&mode=domain&country=us&limit=50
|
||||
|
||||
Authorization: Bearer {api_token}
|
||||
```
|
||||
|
||||
### Keyword overview
|
||||
|
||||
```bash
|
||||
GET https://api.ahrefs.com/v3/keywords-explorer/overview?keywords=keyword1,keyword2&country=us
|
||||
|
||||
Authorization: Bearer {api_token}
|
||||
```
|
||||
|
||||
### Keyword suggestions
|
||||
|
||||
```bash
|
||||
GET https://api.ahrefs.com/v3/keywords-explorer/matching-terms?keyword=seed+keyword&country=us&limit=100
|
||||
|
||||
Authorization: Bearer {api_token}
|
||||
```
|
||||
|
||||
### SERP overview
|
||||
|
||||
```bash
|
||||
GET https://api.ahrefs.com/v3/keywords-explorer/serp-overview?keyword=target+keyword&country=us
|
||||
|
||||
Authorization: Bearer {api_token}
|
||||
```
|
||||
|
||||
## Key Metrics
|
||||
|
||||
### Domain Metrics
|
||||
- `domain_rating` - Domain Rating (DR)
|
||||
- `ahrefs_rank` - Ahrefs Rank
|
||||
- `referring_domains` - Referring domains count
|
||||
- `backlinks` - Total backlinks
|
||||
- `organic_traffic` - Estimated organic traffic
|
||||
|
||||
### Keyword Metrics
|
||||
- `volume` - Monthly search volume
|
||||
- `keyword_difficulty` - KD score (0-100)
|
||||
- `cpc` - Cost per click
|
||||
- `clicks` - Estimated monthly clicks
|
||||
- `global_volume` - Global search volume
|
||||
|
||||
### Backlink Fields
|
||||
- `url_from` - Source URL
|
||||
- `url_to` - Target URL
|
||||
- `anchor` - Anchor text
|
||||
- `domain_rating_source` - Source DR
|
||||
- `first_seen` - First discovery date
|
||||
|
||||
## Modes
|
||||
|
||||
- `domain` - Entire domain
|
||||
- `subdomains` - Domain + subdomains
|
||||
- `prefix` - URL prefix
|
||||
- `exact` - Exact URL
|
||||
|
||||
## When to Use
|
||||
|
||||
- Backlink analysis
|
||||
- Link building research
|
||||
- Keyword research
|
||||
- Competitive analysis
|
||||
- Content gap analysis
|
||||
- Site audits
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- Varies by plan
|
||||
- 500-5000 rows per request
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- seo-audit
|
||||
- content-strategy
|
||||
- competitor-alternatives
|
||||
135
tools/integrations/amplitude.md
Normal file
135
tools/integrations/amplitude.md
Normal file
@@ -0,0 +1,135 @@
|
||||
# Amplitude
|
||||
|
||||
Product analytics platform for user behavior, retention, and experimentation.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | HTTP API for events, User Profile API, Export API |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | JavaScript, iOS, Android, Python, etc. |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **HTTP API**: API Key (public for events)
|
||||
- **Export/Dashboard API**: API Key + Secret Key
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Track event
|
||||
|
||||
```bash
|
||||
POST https://api2.amplitude.com/2/httpapi
|
||||
|
||||
{
|
||||
"api_key": "{api_key}",
|
||||
"events": [{
|
||||
"user_id": "user_123",
|
||||
"event_type": "signup_completed",
|
||||
"event_properties": {
|
||||
"plan": "pro"
|
||||
},
|
||||
"user_properties": {
|
||||
"email": "user@example.com"
|
||||
}
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Batch events
|
||||
|
||||
```bash
|
||||
POST https://api2.amplitude.com/batch
|
||||
|
||||
{
|
||||
"api_key": "{api_key}",
|
||||
"events": [
|
||||
{"user_id": "user_1", "event_type": "pageview"},
|
||||
{"user_id": "user_2", "event_type": "signup"}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Get user activity
|
||||
|
||||
```bash
|
||||
GET https://amplitude.com/api/2/useractivity?user={user_id}
|
||||
|
||||
Authorization: Basic {base64(api_key:secret_key)}
|
||||
```
|
||||
|
||||
### Export events
|
||||
|
||||
```bash
|
||||
GET https://amplitude.com/api/2/export?start=20240101T00&end=20240131T23
|
||||
|
||||
Authorization: Basic {base64(api_key:secret_key)}
|
||||
```
|
||||
|
||||
### Get retention data
|
||||
|
||||
```bash
|
||||
GET https://amplitude.com/api/2/retention?e={"event_type":"signup_completed"}&start=20240101&end=20240131
|
||||
|
||||
Authorization: Basic {base64(api_key:secret_key)}
|
||||
```
|
||||
|
||||
### Query with SQL (Snowflake)
|
||||
|
||||
For Amplitude customers with SQL access:
|
||||
```sql
|
||||
SELECT event_type, COUNT(*) as count
|
||||
FROM events
|
||||
WHERE event_time > '2024-01-01'
|
||||
GROUP BY event_type
|
||||
```
|
||||
|
||||
## JavaScript SDK
|
||||
|
||||
```javascript
|
||||
// Initialize
|
||||
amplitude.init('API_KEY');
|
||||
|
||||
// Identify user
|
||||
amplitude.setUserId('user_123');
|
||||
|
||||
// Set user properties
|
||||
const identify = new amplitude.Identify();
|
||||
identify.set('plan', 'pro');
|
||||
amplitude.identify(identify);
|
||||
|
||||
// Track event
|
||||
amplitude.track('Feature Used', {
|
||||
feature_name: 'export'
|
||||
});
|
||||
```
|
||||
|
||||
## Key Concepts
|
||||
|
||||
- **Events** - User actions with properties
|
||||
- **User Properties** - Persistent user attributes
|
||||
- **Cohorts** - Behavioral segments
|
||||
- **Funnels** - Multi-step conversion analysis
|
||||
- **Retention** - User return patterns
|
||||
- **Journeys** - User path analysis
|
||||
|
||||
## When to Use
|
||||
|
||||
- Tracking product analytics
|
||||
- Analyzing user funnels
|
||||
- Cohort analysis and retention
|
||||
- Experimentation and A/B testing
|
||||
- User journey mapping
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- HTTP API: 1000 events/second
|
||||
- Export API: 360 requests/hour
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- analytics-tracking
|
||||
- ab-test-setup
|
||||
- onboarding-cro
|
||||
187
tools/integrations/customer-io.md
Normal file
187
tools/integrations/customer-io.md
Normal file
@@ -0,0 +1,187 @@
|
||||
# Customer.io
|
||||
|
||||
Behavior-based messaging platform for email, push, SMS, and in-app.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Track API, App API, Journeys API |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | JavaScript, iOS, Android, Ruby, Python |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Track API**: Site ID + API Key (Basic auth)
|
||||
- **App API**: Bearer token
|
||||
- **Header**: `Authorization: Basic {base64(site_id:api_key)}`
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Identify customer
|
||||
|
||||
```bash
|
||||
PUT https://track.customer.io/api/v1/customers/{customer_id}
|
||||
|
||||
Authorization: Basic {base64(site_id:api_key)}
|
||||
|
||||
{
|
||||
"email": "user@example.com",
|
||||
"created_at": 1705312800,
|
||||
"first_name": "John",
|
||||
"plan": "pro"
|
||||
}
|
||||
```
|
||||
|
||||
### Track event
|
||||
|
||||
```bash
|
||||
POST https://track.customer.io/api/v1/customers/{customer_id}/events
|
||||
|
||||
Authorization: Basic {base64(site_id:api_key)}
|
||||
|
||||
{
|
||||
"name": "purchase",
|
||||
"data": {
|
||||
"product": "Pro Plan",
|
||||
"amount": 99
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Track anonymous event
|
||||
|
||||
```bash
|
||||
POST https://track.customer.io/api/v1/events
|
||||
|
||||
Authorization: Basic {base64(site_id:api_key)}
|
||||
|
||||
{
|
||||
"name": "page_viewed",
|
||||
"data": {
|
||||
"page": "/pricing"
|
||||
},
|
||||
"anonymous_id": "anon_123"
|
||||
}
|
||||
```
|
||||
|
||||
### Delete customer
|
||||
|
||||
```bash
|
||||
DELETE https://track.customer.io/api/v1/customers/{customer_id}
|
||||
|
||||
Authorization: Basic {base64(site_id:api_key)}
|
||||
```
|
||||
|
||||
### Get customer (App API)
|
||||
|
||||
```bash
|
||||
GET https://api.customer.io/v1/customers/{customer_id}/attributes
|
||||
|
||||
Authorization: Bearer {app_api_key}
|
||||
```
|
||||
|
||||
### List campaigns
|
||||
|
||||
```bash
|
||||
GET https://api.customer.io/v1/campaigns
|
||||
|
||||
Authorization: Bearer {app_api_key}
|
||||
```
|
||||
|
||||
### Get campaign metrics
|
||||
|
||||
```bash
|
||||
GET https://api.customer.io/v1/campaigns/{campaign_id}/metrics
|
||||
|
||||
Authorization: Bearer {app_api_key}
|
||||
```
|
||||
|
||||
### Trigger broadcast
|
||||
|
||||
```bash
|
||||
POST https://api.customer.io/v1/campaigns/{campaign_id}/triggers
|
||||
|
||||
Authorization: Bearer {app_api_key}
|
||||
|
||||
{
|
||||
"emails": ["user@example.com"],
|
||||
"data": {
|
||||
"coupon_code": "SAVE20"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Send transactional email
|
||||
|
||||
```bash
|
||||
POST https://api.customer.io/v1/send/email
|
||||
|
||||
Authorization: Bearer {app_api_key}
|
||||
|
||||
{
|
||||
"transactional_message_id": "1",
|
||||
"to": "user@example.com",
|
||||
"identifiers": {
|
||||
"id": "user_123"
|
||||
},
|
||||
"message_data": {
|
||||
"order_id": "ORD-456"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## JavaScript SDK
|
||||
|
||||
```javascript
|
||||
// Initialize
|
||||
_cio.identify({
|
||||
id: 'user_123',
|
||||
email: 'user@example.com',
|
||||
created_at: 1705312800,
|
||||
plan: 'pro'
|
||||
});
|
||||
|
||||
// Track event
|
||||
_cio.track('purchase', {
|
||||
product: 'Pro Plan',
|
||||
amount: 99
|
||||
});
|
||||
|
||||
// Track page view
|
||||
_cio.page();
|
||||
```
|
||||
|
||||
## Key Concepts
|
||||
|
||||
- **People** - Customers and leads
|
||||
- **Segments** - Dynamic groups based on attributes/behavior
|
||||
- **Campaigns** - Automated message sequences
|
||||
- **Broadcasts** - One-time sends
|
||||
- **Transactional** - Triggered messages
|
||||
|
||||
## Attribute Types
|
||||
|
||||
- Standard: `email`, `created_at`, `unsubscribed`
|
||||
- Custom: Any key you define
|
||||
- Computed: Aggregations from events
|
||||
|
||||
## When to Use
|
||||
|
||||
- Behavior-based email automation
|
||||
- Multi-channel messaging (email, push, SMS)
|
||||
- Onboarding sequences
|
||||
- Re-engagement campaigns
|
||||
- Transactional messages
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- Track API: 100 requests/second
|
||||
- App API: 10 requests/second
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- email-sequence
|
||||
- onboarding-cro
|
||||
- analytics-tracking
|
||||
160
tools/integrations/dub-co.md
Normal file
160
tools/integrations/dub-co.md
Normal file
@@ -0,0 +1,160 @@
|
||||
# Dub.co
|
||||
|
||||
Link management and attribution platform for modern marketing teams.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST API for links, analytics, domains |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | TypeScript SDK available |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key
|
||||
- **Header**: `Authorization: Bearer {api_key}`
|
||||
- **Get key**: Settings > API Keys in Dub dashboard
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Create short link
|
||||
|
||||
```bash
|
||||
POST https://api.dub.co/links
|
||||
|
||||
{
|
||||
"url": "https://example.com/landing-page",
|
||||
"domain": "link.example.com",
|
||||
"key": "summer-sale",
|
||||
"tags": ["campaign:summer", "channel:email"]
|
||||
}
|
||||
```
|
||||
|
||||
### Get link by key
|
||||
|
||||
```bash
|
||||
GET https://api.dub.co/links?domain=link.example.com&key=summer-sale
|
||||
```
|
||||
|
||||
### List links
|
||||
|
||||
```bash
|
||||
GET https://api.dub.co/links?domain=link.example.com&page=1
|
||||
```
|
||||
|
||||
### Get link analytics
|
||||
|
||||
```bash
|
||||
GET https://api.dub.co/analytics?domain=link.example.com&key=summer-sale&interval=30d
|
||||
```
|
||||
|
||||
### Get clicks by location
|
||||
|
||||
```bash
|
||||
GET https://api.dub.co/analytics/country?domain=link.example.com&key=summer-sale
|
||||
```
|
||||
|
||||
### Get clicks by device
|
||||
|
||||
```bash
|
||||
GET https://api.dub.co/analytics/device?domain=link.example.com&key=summer-sale
|
||||
```
|
||||
|
||||
### Update link
|
||||
|
||||
```bash
|
||||
PATCH https://api.dub.co/links/{link_id}
|
||||
|
||||
{
|
||||
"url": "https://example.com/new-landing-page",
|
||||
"tags": ["campaign:summer", "channel:social"]
|
||||
}
|
||||
```
|
||||
|
||||
### Delete link
|
||||
|
||||
```bash
|
||||
DELETE https://api.dub.co/links/{link_id}
|
||||
```
|
||||
|
||||
### Bulk create links
|
||||
|
||||
```bash
|
||||
POST https://api.dub.co/links/bulk
|
||||
|
||||
[
|
||||
{"url": "https://example.com/page1", "key": "page1"},
|
||||
{"url": "https://example.com/page2", "key": "page2"}
|
||||
]
|
||||
```
|
||||
|
||||
## TypeScript SDK
|
||||
|
||||
### Install
|
||||
|
||||
```bash
|
||||
npm install dub
|
||||
```
|
||||
|
||||
### Usage
|
||||
|
||||
```typescript
|
||||
import { Dub } from "dub";
|
||||
|
||||
const dub = new Dub({ token: "YOUR_API_KEY" });
|
||||
|
||||
// Create link
|
||||
const link = await dub.links.create({
|
||||
url: "https://example.com",
|
||||
domain: "link.example.com"
|
||||
});
|
||||
|
||||
// Get analytics
|
||||
const analytics = await dub.analytics.retrieve({
|
||||
domain: "link.example.com",
|
||||
key: "summer-sale"
|
||||
});
|
||||
```
|
||||
|
||||
## Key Features
|
||||
|
||||
- **Custom domains** - Use your own branded domains
|
||||
- **Link analytics** - Clicks, locations, devices, referrers
|
||||
- **Tags** - Organize links by campaign, channel, etc.
|
||||
- **QR codes** - Auto-generated for each link
|
||||
- **Password protection** - Secure sensitive links
|
||||
- **Expiration** - Time-limited links
|
||||
- **Geo-targeting** - Redirect based on location
|
||||
|
||||
## Analytics Dimensions
|
||||
|
||||
- `clicks` - Total click count
|
||||
- `country` - Clicks by country
|
||||
- `city` - Clicks by city
|
||||
- `device` - Clicks by device type
|
||||
- `browser` - Clicks by browser
|
||||
- `os` - Clicks by operating system
|
||||
- `referer` - Clicks by referrer
|
||||
|
||||
## When to Use
|
||||
|
||||
- Creating trackable marketing links
|
||||
- Building referral link systems
|
||||
- Tracking campaign attribution
|
||||
- A/B testing landing pages via links
|
||||
- Generating branded short URLs
|
||||
- Analyzing link performance
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- Free: 1,000 links, 5 API requests/second
|
||||
- Pro: Unlimited links, 50 API requests/second
|
||||
- Enterprise: Custom limits
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- referral-program
|
||||
- analytics-tracking
|
||||
- paid-ads
|
||||
126
tools/integrations/ga4.md
Normal file
126
tools/integrations/ga4.md
Normal file
@@ -0,0 +1,126 @@
|
||||
# Google Analytics 4 (GA4)
|
||||
|
||||
Web analytics platform for tracking user behavior, conversions, and marketing performance.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Data API for reports, Admin API for configuration |
|
||||
| MCP | ✓ | Available via Google Analytics MCP server |
|
||||
| CLI | - | Use gcloud for some operations |
|
||||
| SDK | ✓ | gtag.js, Google Analytics SDK for mobile |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: OAuth 2.0 or Service Account
|
||||
- **Scopes**: `https://www.googleapis.com/auth/analytics.readonly` (read), `https://www.googleapis.com/auth/analytics.edit` (write)
|
||||
- **Setup**: Create credentials in Google Cloud Console
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Run a report (Data API)
|
||||
|
||||
```bash
|
||||
POST https://analyticsdata.googleapis.com/v1beta/properties/{property_id}:runReport
|
||||
|
||||
{
|
||||
"dateRanges": [{"startDate": "30daysAgo", "endDate": "today"}],
|
||||
"dimensions": [{"name": "sessionSource"}],
|
||||
"metrics": [{"name": "sessions"}, {"name": "conversions"}]
|
||||
}
|
||||
```
|
||||
|
||||
### Get real-time data
|
||||
|
||||
```bash
|
||||
POST https://analyticsdata.googleapis.com/v1beta/properties/{property_id}:runRealtimeReport
|
||||
|
||||
{
|
||||
"dimensions": [{"name": "country"}],
|
||||
"metrics": [{"name": "activeUsers"}]
|
||||
}
|
||||
```
|
||||
|
||||
### List conversion events
|
||||
|
||||
```bash
|
||||
GET https://analyticsadmin.googleapis.com/v1beta/properties/{property_id}/conversionEvents
|
||||
```
|
||||
|
||||
### Create a conversion event
|
||||
|
||||
```bash
|
||||
POST https://analyticsadmin.googleapis.com/v1beta/properties/{property_id}/conversionEvents
|
||||
|
||||
{
|
||||
"eventName": "purchase"
|
||||
}
|
||||
```
|
||||
|
||||
## Client-Side Tracking
|
||||
|
||||
### Send custom event (gtag.js)
|
||||
|
||||
```javascript
|
||||
gtag('event', 'signup_completed', {
|
||||
'method': 'email',
|
||||
'plan': 'free'
|
||||
});
|
||||
```
|
||||
|
||||
### Send event via Measurement Protocol
|
||||
|
||||
```bash
|
||||
POST https://www.google-analytics.com/mp/collect?measurement_id={measurement_id}&api_secret={api_secret}
|
||||
|
||||
{
|
||||
"client_id": "client_123",
|
||||
"events": [{
|
||||
"name": "purchase",
|
||||
"params": {
|
||||
"value": 99.99,
|
||||
"currency": "USD"
|
||||
}
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
## Key Dimensions & Metrics
|
||||
|
||||
### Common Dimensions
|
||||
- `sessionSource` - Traffic source
|
||||
- `sessionMedium` - Traffic medium
|
||||
- `sessionCampaignName` - Campaign name
|
||||
- `landingPage` - Entry page
|
||||
- `deviceCategory` - Device type
|
||||
- `country` - User country
|
||||
|
||||
### Common Metrics
|
||||
- `sessions` - Total sessions
|
||||
- `activeUsers` - Active users
|
||||
- `newUsers` - New users
|
||||
- `conversions` - Conversion events
|
||||
- `engagementRate` - Engaged sessions rate
|
||||
- `averageSessionDuration` - Session duration
|
||||
|
||||
## When to Use
|
||||
|
||||
- Tracking website traffic and user behavior
|
||||
- Measuring marketing campaign performance
|
||||
- Setting up conversion tracking
|
||||
- Analyzing user journeys and funnels
|
||||
- Attribution modeling
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- Data API: 10 requests per second per property
|
||||
- Admin API: Varies by endpoint
|
||||
- Measurement Protocol: 1M hits/day for free tier
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- analytics-tracking
|
||||
- ab-test-setup
|
||||
- seo-audit
|
||||
- page-cro
|
||||
159
tools/integrations/google-ads.md
Normal file
159
tools/integrations/google-ads.md
Normal file
@@ -0,0 +1,159 @@
|
||||
# Google Ads
|
||||
|
||||
Pay-per-click advertising platform for search, display, and video campaigns.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Google Ads API for campaign management |
|
||||
| MCP | ✓ | Available via Google Ads MCP server |
|
||||
| CLI | - | Use gcloud or API scripts |
|
||||
| SDK | ✓ | Client libraries for multiple languages |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: OAuth 2.0
|
||||
- **Scopes**: `https://www.googleapis.com/auth/adwords`
|
||||
- **Setup**: Create credentials in Google Cloud Console, link to Google Ads account
|
||||
- **Headers**: `developer-token`, `login-customer-id` (for MCC)
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Get account info
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/googleAds:searchStream
|
||||
|
||||
{
|
||||
"query": "SELECT customer.id, customer.descriptive_name FROM customer"
|
||||
}
|
||||
```
|
||||
|
||||
### List campaigns
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/googleAds:searchStream
|
||||
|
||||
{
|
||||
"query": "SELECT campaign.id, campaign.name, campaign.status, campaign_budget.amount_micros FROM campaign ORDER BY campaign.id"
|
||||
}
|
||||
```
|
||||
|
||||
### Get campaign performance
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/googleAds:searchStream
|
||||
|
||||
{
|
||||
"query": "SELECT campaign.name, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions FROM campaign WHERE segments.date DURING LAST_30_DAYS"
|
||||
}
|
||||
```
|
||||
|
||||
### Get ad group performance
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/googleAds:searchStream
|
||||
|
||||
{
|
||||
"query": "SELECT ad_group.name, metrics.impressions, metrics.clicks, metrics.conversions FROM ad_group WHERE segments.date DURING LAST_7_DAYS"
|
||||
}
|
||||
```
|
||||
|
||||
### Get keyword performance
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/googleAds:searchStream
|
||||
|
||||
{
|
||||
"query": "SELECT ad_group_criterion.keyword.text, metrics.impressions, metrics.clicks, metrics.average_cpc FROM keyword_view WHERE segments.date DURING LAST_30_DAYS ORDER BY metrics.clicks DESC LIMIT 50"
|
||||
}
|
||||
```
|
||||
|
||||
### Pause campaign
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/campaigns:mutate
|
||||
|
||||
{
|
||||
"operations": [{
|
||||
"update": {
|
||||
"resourceName": "customers/{customer_id}/campaigns/{campaign_id}",
|
||||
"status": "PAUSED"
|
||||
},
|
||||
"updateMask": "status"
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Update budget
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/campaignBudgets:mutate
|
||||
|
||||
{
|
||||
"operations": [{
|
||||
"update": {
|
||||
"resourceName": "customers/{customer_id}/campaignBudgets/{budget_id}",
|
||||
"amountMicros": "50000000"
|
||||
},
|
||||
"updateMask": "amountMicros"
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
## Key Metrics
|
||||
|
||||
| Metric | Description |
|
||||
|--------|-------------|
|
||||
| `metrics.impressions` | Ad impressions |
|
||||
| `metrics.clicks` | Clicks |
|
||||
| `metrics.cost_micros` | Cost in micros (divide by 1M) |
|
||||
| `metrics.conversions` | Conversions |
|
||||
| `metrics.conversions_value` | Conversion value |
|
||||
| `metrics.average_cpc` | Average cost per click |
|
||||
| `metrics.ctr` | Click-through rate |
|
||||
| `metrics.conversion_rate` | Conversion rate |
|
||||
|
||||
## Campaign Types
|
||||
|
||||
- `SEARCH` - Search network text ads
|
||||
- `DISPLAY` - Display network
|
||||
- `SHOPPING` - Product shopping ads
|
||||
- `VIDEO` - YouTube video ads
|
||||
- `PERFORMANCE_MAX` - AI-optimized across channels
|
||||
- `DEMAND_GEN` - Discovery/Demand Gen
|
||||
|
||||
## GAQL (Google Ads Query Language)
|
||||
|
||||
```sql
|
||||
SELECT
|
||||
campaign.name,
|
||||
metrics.clicks,
|
||||
metrics.conversions
|
||||
FROM campaign
|
||||
WHERE
|
||||
campaign.status = 'ENABLED'
|
||||
AND segments.date DURING LAST_30_DAYS
|
||||
ORDER BY metrics.conversions DESC
|
||||
LIMIT 10
|
||||
```
|
||||
|
||||
## When to Use
|
||||
|
||||
- Managing search advertising campaigns
|
||||
- Analyzing campaign performance
|
||||
- Adjusting budgets and bids
|
||||
- Keyword research and management
|
||||
- Conversion tracking analysis
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 15,000 operations per day (basic)
|
||||
- Higher limits with developer token levels
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- paid-ads
|
||||
- analytics-tracking
|
||||
- page-cro
|
||||
147
tools/integrations/google-search-console.md
Normal file
147
tools/integrations/google-search-console.md
Normal file
@@ -0,0 +1,147 @@
|
||||
# Google Search Console
|
||||
|
||||
Free tool for monitoring website search performance and indexing.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Search Analytics API, URL Inspection API |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Use gcloud or API scripts |
|
||||
| SDK | ✓ | Google API client libraries |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: OAuth 2.0 or Service Account
|
||||
- **Scopes**: `https://www.googleapis.com/auth/webmasters.readonly`
|
||||
- **Setup**: Create credentials in Google Cloud Console
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Get search analytics
|
||||
|
||||
```bash
|
||||
POST https://searchconsole.googleapis.com/webmasters/v3/sites/{site_url}/searchAnalytics/query
|
||||
|
||||
{
|
||||
"startDate": "2024-01-01",
|
||||
"endDate": "2024-01-31",
|
||||
"dimensions": ["query"],
|
||||
"rowLimit": 100
|
||||
}
|
||||
```
|
||||
|
||||
### Get performance by page
|
||||
|
||||
```bash
|
||||
POST https://searchconsole.googleapis.com/webmasters/v3/sites/{site_url}/searchAnalytics/query
|
||||
|
||||
{
|
||||
"startDate": "2024-01-01",
|
||||
"endDate": "2024-01-31",
|
||||
"dimensions": ["page"],
|
||||
"rowLimit": 50
|
||||
}
|
||||
```
|
||||
|
||||
### Get performance by country
|
||||
|
||||
```bash
|
||||
POST https://searchconsole.googleapis.com/webmasters/v3/sites/{site_url}/searchAnalytics/query
|
||||
|
||||
{
|
||||
"startDate": "2024-01-01",
|
||||
"endDate": "2024-01-31",
|
||||
"dimensions": ["country", "query"],
|
||||
"rowLimit": 100
|
||||
}
|
||||
```
|
||||
|
||||
### Inspect URL
|
||||
|
||||
```bash
|
||||
POST https://searchconsole.googleapis.com/v1/urlInspection/index:inspect
|
||||
|
||||
{
|
||||
"inspectionUrl": "https://example.com/page",
|
||||
"siteUrl": "https://example.com/"
|
||||
}
|
||||
```
|
||||
|
||||
### List sitemaps
|
||||
|
||||
```bash
|
||||
GET https://searchconsole.googleapis.com/webmasters/v3/sites/{site_url}/sitemaps
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Submit sitemap
|
||||
|
||||
```bash
|
||||
PUT https://searchconsole.googleapis.com/webmasters/v3/sites/{site_url}/sitemaps/{sitemap_url}
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Request indexing
|
||||
|
||||
```bash
|
||||
POST https://indexing.googleapis.com/v3/urlNotifications:publish
|
||||
|
||||
{
|
||||
"url": "https://example.com/new-page",
|
||||
"type": "URL_UPDATED"
|
||||
}
|
||||
```
|
||||
|
||||
## Dimensions
|
||||
|
||||
- `query` - Search query
|
||||
- `page` - Page URL
|
||||
- `country` - Country code
|
||||
- `device` - Device type (MOBILE, DESKTOP, TABLET)
|
||||
- `date` - Date
|
||||
- `searchAppearance` - Search result type
|
||||
|
||||
## Metrics
|
||||
|
||||
- `clicks` - Clicks from search
|
||||
- `impressions` - Search impressions
|
||||
- `ctr` - Click-through rate
|
||||
- `position` - Average position
|
||||
|
||||
## Filters
|
||||
|
||||
```json
|
||||
{
|
||||
"dimensionFilterGroups": [{
|
||||
"filters": [{
|
||||
"dimension": "query",
|
||||
"operator": "contains",
|
||||
"expression": "keyword"
|
||||
}]
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
## When to Use
|
||||
|
||||
- Analyzing search performance
|
||||
- Finding keyword opportunities
|
||||
- Monitoring indexing status
|
||||
- Submitting new pages for indexing
|
||||
- Identifying crawl issues
|
||||
- Tracking position changes
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 200 queries per minute
|
||||
- 1,200 requests per minute
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- seo-audit
|
||||
- programmatic-seo
|
||||
- analytics-tracking
|
||||
178
tools/integrations/hubspot.md
Normal file
178
tools/integrations/hubspot.md
Normal file
@@ -0,0 +1,178 @@
|
||||
# HubSpot
|
||||
|
||||
CRM platform for marketing, sales, and customer service.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST API for CRM, Marketing, Sales |
|
||||
| MCP | - | Not available |
|
||||
| CLI | ✓ | `hs` CLI for local development |
|
||||
| SDK | ✓ | Official client libraries |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: Private App Token or OAuth 2.0
|
||||
- **Header**: `Authorization: Bearer {access_token}`
|
||||
- **Get token**: Settings > Integrations > Private Apps
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Get contacts
|
||||
|
||||
```bash
|
||||
GET https://api.hubapi.com/crm/v3/objects/contacts?limit=10
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Search contacts
|
||||
|
||||
```bash
|
||||
POST https://api.hubapi.com/crm/v3/objects/contacts/search
|
||||
|
||||
{
|
||||
"filterGroups": [{
|
||||
"filters": [{
|
||||
"propertyName": "email",
|
||||
"operator": "EQ",
|
||||
"value": "user@example.com"
|
||||
}]
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Create contact
|
||||
|
||||
```bash
|
||||
POST https://api.hubapi.com/crm/v3/objects/contacts
|
||||
|
||||
{
|
||||
"properties": {
|
||||
"email": "user@example.com",
|
||||
"firstname": "John",
|
||||
"lastname": "Doe",
|
||||
"company": "Example Inc"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Update contact
|
||||
|
||||
```bash
|
||||
PATCH https://api.hubapi.com/crm/v3/objects/contacts/{contact_id}
|
||||
|
||||
{
|
||||
"properties": {
|
||||
"lifecyclestage": "customer"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Get deals
|
||||
|
||||
```bash
|
||||
GET https://api.hubapi.com/crm/v3/objects/deals?limit=10&properties=dealname,amount,dealstage
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Create deal
|
||||
|
||||
```bash
|
||||
POST https://api.hubapi.com/crm/v3/objects/deals
|
||||
|
||||
{
|
||||
"properties": {
|
||||
"dealname": "New Deal",
|
||||
"amount": "10000",
|
||||
"dealstage": "appointmentscheduled",
|
||||
"pipeline": "default"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Associate contact with deal
|
||||
|
||||
```bash
|
||||
PUT https://api.hubapi.com/crm/v3/objects/deals/{deal_id}/associations/contacts/{contact_id}/deal_to_contact
|
||||
```
|
||||
|
||||
### Get form submissions
|
||||
|
||||
```bash
|
||||
GET https://api.hubapi.com/form-integrations/v1/submissions/forms/{form_guid}
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Get marketing emails
|
||||
|
||||
```bash
|
||||
GET https://api.hubapi.com/marketing/v3/emails?limit=10
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
## CLI Commands
|
||||
|
||||
```bash
|
||||
# Install
|
||||
npm install -g @hubspot/cli
|
||||
|
||||
# Initialize project
|
||||
hs init
|
||||
|
||||
# Upload files
|
||||
hs upload src dest
|
||||
|
||||
# Watch for changes
|
||||
hs watch src dest
|
||||
|
||||
# List portals
|
||||
hs accounts list
|
||||
```
|
||||
|
||||
## Key Objects
|
||||
|
||||
- **Contacts** - People in CRM
|
||||
- **Companies** - Organizations
|
||||
- **Deals** - Sales opportunities
|
||||
- **Tickets** - Support tickets
|
||||
- **Products** - Items for sale
|
||||
- **Line Items** - Deal line items
|
||||
|
||||
## Common Properties
|
||||
|
||||
### Contact Properties
|
||||
- `email` - Email address
|
||||
- `firstname`, `lastname` - Name
|
||||
- `lifecyclestage` - Funnel stage
|
||||
- `hs_lead_status` - Lead status
|
||||
|
||||
### Deal Properties
|
||||
- `dealname` - Deal name
|
||||
- `amount` - Deal value
|
||||
- `dealstage` - Pipeline stage
|
||||
- `closedate` - Expected close
|
||||
|
||||
## When to Use
|
||||
|
||||
- Managing contacts and leads
|
||||
- Tracking sales deals
|
||||
- Marketing automation
|
||||
- Form submissions
|
||||
- Email campaigns
|
||||
- Customer service tickets
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 100 requests per 10 seconds
|
||||
- Higher limits on enterprise plans
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- email-sequence
|
||||
- analytics-tracking
|
||||
- referral-program
|
||||
167
tools/integrations/kit.md
Normal file
167
tools/integrations/kit.md
Normal file
@@ -0,0 +1,167 @@
|
||||
# Kit (formerly ConvertKit)
|
||||
|
||||
Email marketing platform for creators and newsletter businesses.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST API for subscribers, forms, sequences |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | JavaScript, Ruby gems available |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key or API Secret
|
||||
- **Parameter**: `api_key={key}` or `api_secret={secret}` in query/body
|
||||
- **Get key**: Settings > Advanced in Kit dashboard
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### List subscribers
|
||||
|
||||
```bash
|
||||
GET https://api.convertkit.com/v3/subscribers?api_secret={api_secret}&page=1
|
||||
|
||||
```
|
||||
|
||||
### Get subscriber
|
||||
|
||||
```bash
|
||||
GET https://api.convertkit.com/v3/subscribers/{subscriber_id}?api_secret={api_secret}
|
||||
```
|
||||
|
||||
### Add subscriber to form
|
||||
|
||||
```bash
|
||||
POST https://api.convertkit.com/v3/forms/{form_id}/subscribe
|
||||
|
||||
{
|
||||
"api_key": "{api_key}",
|
||||
"email": "user@example.com",
|
||||
"first_name": "John",
|
||||
"fields": {
|
||||
"company": "Example Inc"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Add subscriber to sequence
|
||||
|
||||
```bash
|
||||
POST https://api.convertkit.com/v3/sequences/{sequence_id}/subscribe
|
||||
|
||||
{
|
||||
"api_key": "{api_key}",
|
||||
"email": "user@example.com"
|
||||
}
|
||||
```
|
||||
|
||||
### Tag subscriber
|
||||
|
||||
```bash
|
||||
POST https://api.convertkit.com/v3/tags/{tag_id}/subscribe
|
||||
|
||||
{
|
||||
"api_key": "{api_key}",
|
||||
"email": "user@example.com"
|
||||
}
|
||||
```
|
||||
|
||||
### Remove tag from subscriber
|
||||
|
||||
```bash
|
||||
DELETE https://api.convertkit.com/v3/subscribers/{subscriber_id}/tags/{tag_id}?api_secret={api_secret}
|
||||
```
|
||||
|
||||
### Update subscriber
|
||||
|
||||
```bash
|
||||
PUT https://api.convertkit.com/v3/subscribers/{subscriber_id}
|
||||
|
||||
{
|
||||
"api_secret": "{api_secret}",
|
||||
"first_name": "Jane",
|
||||
"fields": {
|
||||
"plan": "pro"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Unsubscribe
|
||||
|
||||
```bash
|
||||
PUT https://api.convertkit.com/v3/unsubscribe
|
||||
|
||||
{
|
||||
"api_secret": "{api_secret}",
|
||||
"email": "user@example.com"
|
||||
}
|
||||
```
|
||||
|
||||
### List forms
|
||||
|
||||
```bash
|
||||
GET https://api.convertkit.com/v3/forms?api_key={api_key}
|
||||
```
|
||||
|
||||
### List sequences
|
||||
|
||||
```bash
|
||||
GET https://api.convertkit.com/v3/sequences?api_key={api_key}
|
||||
```
|
||||
|
||||
### List tags
|
||||
|
||||
```bash
|
||||
GET https://api.convertkit.com/v3/tags?api_key={api_key}
|
||||
```
|
||||
|
||||
### Create broadcast
|
||||
|
||||
```bash
|
||||
POST https://api.convertkit.com/v3/broadcasts
|
||||
|
||||
{
|
||||
"api_secret": "{api_secret}",
|
||||
"subject": "Newsletter Subject",
|
||||
"content": "<p>Email content here</p>",
|
||||
"email_layout_template": "default"
|
||||
}
|
||||
```
|
||||
|
||||
## Key Concepts
|
||||
|
||||
- **Subscribers** - Email contacts
|
||||
- **Forms** - Signup forms
|
||||
- **Sequences** - Automated email series
|
||||
- **Tags** - Subscriber labels
|
||||
- **Broadcasts** - One-time sends
|
||||
- **Custom Fields** - Subscriber attributes
|
||||
|
||||
## Subscriber States
|
||||
|
||||
- `active` - Can receive emails
|
||||
- `unsubscribed` - Opted out
|
||||
- `bounced` - Email bounced
|
||||
- `complained` - Marked as spam
|
||||
- `inactive` - Cold subscriber
|
||||
|
||||
## When to Use
|
||||
|
||||
- Creator/newsletter businesses
|
||||
- Simple email automation
|
||||
- Form-based list building
|
||||
- Tagging and segmentation
|
||||
- Course email sequences
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 120 requests per minute
|
||||
- Batch endpoints available
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- email-sequence
|
||||
- content-strategy
|
||||
164
tools/integrations/linkedin-ads.md
Normal file
164
tools/integrations/linkedin-ads.md
Normal file
@@ -0,0 +1,164 @@
|
||||
# LinkedIn Ads
|
||||
|
||||
B2B advertising platform with professional targeting.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Marketing API for campaigns, audiences, analytics |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | - | API-only (community libraries available) |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: OAuth 2.0
|
||||
- **Header**: `Authorization: Bearer {access_token}`
|
||||
- **Scopes**: `r_ads`, `r_ads_reporting`, `rw_ads`
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Get ad accounts
|
||||
|
||||
```bash
|
||||
GET https://api.linkedin.com/v2/adAccountsV2?q=search
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Get campaigns
|
||||
|
||||
```bash
|
||||
GET https://api.linkedin.com/v2/adCampaignsV2?q=search&search.account.values[0]=urn:li:sponsoredAccount:{account_id}
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Get campaign analytics
|
||||
|
||||
```bash
|
||||
GET https://api.linkedin.com/v2/adAnalyticsV2?q=analytics&pivot=CAMPAIGN&dateRange.start.year=2024&dateRange.start.month=1&dateRange.start.day=1&dateRange.end.year=2024&dateRange.end.month=1&dateRange.end.day=31&campaigns=urn:li:sponsoredCampaign:{campaign_id}&fields=impressions,clicks,costInLocalCurrency,conversions
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Create campaign
|
||||
|
||||
```bash
|
||||
POST https://api.linkedin.com/v2/adCampaignsV2
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
|
||||
{
|
||||
"account": "urn:li:sponsoredAccount:{account_id}",
|
||||
"name": "Campaign Name",
|
||||
"type": "SPONSORED_UPDATES",
|
||||
"costType": "CPC",
|
||||
"unitCost": {
|
||||
"amount": "5.00",
|
||||
"currencyCode": "USD"
|
||||
},
|
||||
"dailyBudget": {
|
||||
"amount": "100.00",
|
||||
"currencyCode": "USD"
|
||||
},
|
||||
"status": "PAUSED"
|
||||
}
|
||||
```
|
||||
|
||||
### Update campaign status
|
||||
|
||||
```bash
|
||||
POST https://api.linkedin.com/v2/adCampaignsV2/{campaign_id}
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
|
||||
{
|
||||
"patch": {
|
||||
"$set": {
|
||||
"status": "ACTIVE"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Get creatives
|
||||
|
||||
```bash
|
||||
GET https://api.linkedin.com/v2/adCreativesV2?q=search&search.campaign.values[0]=urn:li:sponsoredCampaign:{campaign_id}
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Get audience counts
|
||||
|
||||
```bash
|
||||
POST https://api.linkedin.com/v2/audienceCountsV2
|
||||
|
||||
{
|
||||
"audienceCriteria": {
|
||||
"include": {
|
||||
"and": [{
|
||||
"or": {
|
||||
"urn:li:adTargetingFacet:titles": ["urn:li:title:123"]
|
||||
}
|
||||
}]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Key Metrics
|
||||
|
||||
| Metric | Description |
|
||||
|--------|-------------|
|
||||
| `impressions` | Ad impressions |
|
||||
| `clicks` | Total clicks |
|
||||
| `costInLocalCurrency` | Spend |
|
||||
| `conversions` | Conversion count |
|
||||
| `leadGenerationMailContactInfoShares` | Lead form submissions |
|
||||
|
||||
## Campaign Types
|
||||
|
||||
- `SPONSORED_UPDATES` - Sponsored content
|
||||
- `TEXT_AD` - Text ads
|
||||
- `SPONSORED_INMAILS` - Message ads
|
||||
- `DYNAMIC` - Dynamic ads
|
||||
|
||||
## Targeting Options
|
||||
|
||||
### Job-Based
|
||||
- Job titles
|
||||
- Job functions
|
||||
- Seniority levels
|
||||
- Years of experience
|
||||
|
||||
### Company-Based
|
||||
- Company names
|
||||
- Industries
|
||||
- Company size
|
||||
- Company followers
|
||||
|
||||
### Professional
|
||||
- Skills
|
||||
- Groups
|
||||
- Schools
|
||||
- Degrees
|
||||
|
||||
## When to Use
|
||||
|
||||
- B2B advertising
|
||||
- Job title targeting
|
||||
- Account-based marketing
|
||||
- Lead generation campaigns
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 100 requests/day (basic)
|
||||
- 10,000 requests/day (Marketing Developer Platform)
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- paid-ads
|
||||
- analytics-tracking
|
||||
150
tools/integrations/mailchimp.md
Normal file
150
tools/integrations/mailchimp.md
Normal file
@@ -0,0 +1,150 @@
|
||||
# Mailchimp
|
||||
|
||||
Email marketing platform for campaigns, automation, and audience management.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Marketing API for campaigns, audiences, automation |
|
||||
| MCP | ✓ | Available via Mailchimp MCP server |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | Official SDKs for multiple languages |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key or OAuth 2.0
|
||||
- **Header**: `Authorization: Bearer {api_key}` or `Authorization: apikey {api_key}`
|
||||
- **Base URL**: `https://{dc}.api.mailchimp.com/3.0/` (dc = datacenter from API key)
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### List audiences (lists)
|
||||
|
||||
```bash
|
||||
GET https://{dc}.api.mailchimp.com/3.0/lists
|
||||
```
|
||||
|
||||
### Get audience members
|
||||
|
||||
```bash
|
||||
GET https://{dc}.api.mailchimp.com/3.0/lists/{list_id}/members?count=100
|
||||
```
|
||||
|
||||
### Add subscriber
|
||||
|
||||
```bash
|
||||
POST https://{dc}.api.mailchimp.com/3.0/lists/{list_id}/members
|
||||
|
||||
{
|
||||
"email_address": "user@example.com",
|
||||
"status": "subscribed",
|
||||
"merge_fields": {
|
||||
"FNAME": "John",
|
||||
"LNAME": "Doe"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Update subscriber
|
||||
|
||||
```bash
|
||||
PATCH https://{dc}.api.mailchimp.com/3.0/lists/{list_id}/members/{subscriber_hash}
|
||||
|
||||
{
|
||||
"merge_fields": {
|
||||
"FNAME": "Jane"
|
||||
},
|
||||
"tags": ["customer", "premium"]
|
||||
}
|
||||
```
|
||||
|
||||
### Get campaigns
|
||||
|
||||
```bash
|
||||
GET https://{dc}.api.mailchimp.com/3.0/campaigns?count=20
|
||||
```
|
||||
|
||||
### Get campaign report
|
||||
|
||||
```bash
|
||||
GET https://{dc}.api.mailchimp.com/3.0/reports/{campaign_id}
|
||||
```
|
||||
|
||||
### Create campaign
|
||||
|
||||
```bash
|
||||
POST https://{dc}.api.mailchimp.com/3.0/campaigns
|
||||
|
||||
{
|
||||
"type": "regular",
|
||||
"recipients": {
|
||||
"list_id": "{list_id}"
|
||||
},
|
||||
"settings": {
|
||||
"subject_line": "Your Subject",
|
||||
"from_name": "Your Name",
|
||||
"reply_to": "reply@example.com"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Send campaign
|
||||
|
||||
```bash
|
||||
POST https://{dc}.api.mailchimp.com/3.0/campaigns/{campaign_id}/actions/send
|
||||
```
|
||||
|
||||
### List automations
|
||||
|
||||
```bash
|
||||
GET https://{dc}.api.mailchimp.com/3.0/automations
|
||||
```
|
||||
|
||||
## Key Metrics
|
||||
|
||||
### Campaign Report Fields
|
||||
- `emails_sent` - Total sent
|
||||
- `opens` - Open count
|
||||
- `unique_opens` - Unique opens
|
||||
- `open_rate` - Open rate
|
||||
- `clicks` - Click count
|
||||
- `click_rate` - Click rate
|
||||
- `unsubscribes` - Unsubscribe count
|
||||
- `bounces` - Bounce count
|
||||
|
||||
### Subscriber Hash
|
||||
|
||||
Calculate subscriber hash for updates:
|
||||
```javascript
|
||||
const hash = md5(email.toLowerCase());
|
||||
```
|
||||
|
||||
## Subscriber Statuses
|
||||
|
||||
- `subscribed` - Active subscriber
|
||||
- `unsubscribed` - Unsubscribed
|
||||
- `cleaned` - Hard bounce
|
||||
- `pending` - Awaiting confirmation
|
||||
- `transactional` - Transactional only
|
||||
|
||||
## When to Use
|
||||
|
||||
- Managing email lists and subscribers
|
||||
- Creating and sending email campaigns
|
||||
- Setting up email automation
|
||||
- Analyzing campaign performance
|
||||
- Segmenting audiences
|
||||
- A/B testing emails
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 10 concurrent connections
|
||||
- 10 requests per second
|
||||
- Batch endpoints for bulk operations
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- email-sequence
|
||||
- analytics-tracking
|
||||
- referral-program
|
||||
160
tools/integrations/mention-me.md
Normal file
160
tools/integrations/mention-me.md
Normal file
@@ -0,0 +1,160 @@
|
||||
# Mention Me
|
||||
|
||||
Enterprise referral marketing platform for customer advocacy.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST API for referrals, customers, rewards |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | - | JavaScript widget for embedding |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key
|
||||
- **Header**: `Authorization: Bearer {api_key}`
|
||||
- **Environment**: Separate keys for sandbox and production
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Create referral offer
|
||||
|
||||
```bash
|
||||
POST https://api.mention-me.com/api/v2/referrer-offer
|
||||
|
||||
{
|
||||
"email": "customer@example.com",
|
||||
"firstname": "John",
|
||||
"lastname": "Doe",
|
||||
"order_number": "ORD-123",
|
||||
"order_total": 99.99,
|
||||
"order_currency": "USD"
|
||||
}
|
||||
```
|
||||
|
||||
### Get referral link for customer
|
||||
|
||||
```bash
|
||||
GET https://api.mention-me.com/api/v2/referrer/{customer_id}/share-links
|
||||
```
|
||||
|
||||
### Record referee (referred customer)
|
||||
|
||||
```bash
|
||||
POST https://api.mention-me.com/api/v2/referee
|
||||
|
||||
{
|
||||
"email": "referred@example.com",
|
||||
"firstname": "Jane",
|
||||
"referrer_code": "JOHN123",
|
||||
"order_number": "ORD-456",
|
||||
"order_total": 149.99
|
||||
}
|
||||
```
|
||||
|
||||
### Get referral status
|
||||
|
||||
```bash
|
||||
GET https://api.mention-me.com/api/v2/referral/{referral_id}
|
||||
```
|
||||
|
||||
### List referrals for customer
|
||||
|
||||
```bash
|
||||
GET https://api.mention-me.com/api/v2/referrer/{customer_id}/referrals
|
||||
```
|
||||
|
||||
### Get reward balance
|
||||
|
||||
```bash
|
||||
GET https://api.mention-me.com/api/v2/referrer/{customer_id}/rewards
|
||||
```
|
||||
|
||||
### Redeem reward
|
||||
|
||||
```bash
|
||||
POST https://api.mention-me.com/api/v2/referrer/{customer_id}/rewards/redeem
|
||||
|
||||
{
|
||||
"reward_id": "RWD-123",
|
||||
"order_number": "ORD-789"
|
||||
}
|
||||
```
|
||||
|
||||
## JavaScript Widget
|
||||
|
||||
### Embed referral widget
|
||||
|
||||
```html
|
||||
<div id="mmWrapper"></div>
|
||||
<script>
|
||||
window.MentionMe = window.MentionMe || [];
|
||||
MentionMe.push({
|
||||
type: 'offer',
|
||||
customer: {
|
||||
email: 'customer@example.com',
|
||||
firstname: 'John',
|
||||
order_number: 'ORD-123'
|
||||
}
|
||||
});
|
||||
</script>
|
||||
<script src="https://tag.mention-me.com/client/{partner_code}.js" async></script>
|
||||
```
|
||||
|
||||
### Name share widget
|
||||
|
||||
```javascript
|
||||
MentionMe.push({
|
||||
type: 'nameShare',
|
||||
customer: {
|
||||
email: 'customer@example.com'
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
## Webhook Events
|
||||
|
||||
| Event | When |
|
||||
|-------|------|
|
||||
| `referral.created` | New referral tracked |
|
||||
| `referral.converted` | Referral completed purchase |
|
||||
| `reward.earned` | Reward unlocked |
|
||||
| `reward.redeemed` | Reward used |
|
||||
|
||||
## Key Features
|
||||
|
||||
- **A/B testing** - Built-in experiment framework
|
||||
- **Fraud prevention** - Automatic fraud detection
|
||||
- **Multi-channel** - Share via link, email, social
|
||||
- **Name sharing** - Refer by name, not code
|
||||
- **Segmentation** - Different offers by segment
|
||||
- **Analytics** - Referral program reporting
|
||||
|
||||
## Key Objects
|
||||
|
||||
- **Referrer** - Customer who refers
|
||||
- **Referee** - Customer who is referred
|
||||
- **Referral** - Connection between referrer and referee
|
||||
- **Offer** - Referral program configuration
|
||||
- **Reward** - Incentive earned
|
||||
|
||||
## When to Use
|
||||
|
||||
- Enterprise referral programs
|
||||
- Multi-market referral campaigns
|
||||
- A/B testing referral offers
|
||||
- Fraud-resistant referral tracking
|
||||
- Name-based sharing programs
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 1000 requests per minute
|
||||
- Contact for higher limits
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- referral-program
|
||||
- pricing-strategy
|
||||
- analytics-tracking
|
||||
147
tools/integrations/meta-ads.md
Normal file
147
tools/integrations/meta-ads.md
Normal file
@@ -0,0 +1,147 @@
|
||||
# Meta Ads (Facebook/Instagram)
|
||||
|
||||
Advertising platform for Facebook, Instagram, Messenger, and Audience Network.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Marketing API for campaigns, audiences, reporting |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | Official SDKs for Python, PHP, Node.js |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: OAuth 2.0 Access Token
|
||||
- **Header**: Access token as query parameter
|
||||
- **Setup**: Create app in Meta Business Suite, generate System User token
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Get ad accounts
|
||||
|
||||
```bash
|
||||
GET https://graph.facebook.com/v18.0/me/adaccounts?access_token={access_token}&fields=id,name,account_status
|
||||
```
|
||||
|
||||
### Get campaigns
|
||||
|
||||
```bash
|
||||
GET https://graph.facebook.com/v18.0/act_{ad_account_id}/campaigns?access_token={access_token}&fields=id,name,status,objective,daily_budget
|
||||
```
|
||||
|
||||
### Get campaign insights
|
||||
|
||||
```bash
|
||||
GET https://graph.facebook.com/v18.0/{campaign_id}/insights?access_token={access_token}&fields=impressions,clicks,spend,actions,cost_per_action_type&date_preset=last_30d
|
||||
```
|
||||
|
||||
### Get ad sets
|
||||
|
||||
```bash
|
||||
GET https://graph.facebook.com/v18.0/act_{ad_account_id}/adsets?access_token={access_token}&fields=id,name,status,targeting,daily_budget,bid_amount
|
||||
```
|
||||
|
||||
### Get ads
|
||||
|
||||
```bash
|
||||
GET https://graph.facebook.com/v18.0/{ad_set_id}/ads?access_token={access_token}&fields=id,name,status,creative
|
||||
```
|
||||
|
||||
### Create campaign
|
||||
|
||||
```bash
|
||||
POST https://graph.facebook.com/v18.0/act_{ad_account_id}/campaigns
|
||||
|
||||
access_token={access_token}
|
||||
&name=Campaign Name
|
||||
&objective=CONVERSIONS
|
||||
&status=PAUSED
|
||||
&special_ad_categories=[]
|
||||
```
|
||||
|
||||
### Update campaign status
|
||||
|
||||
```bash
|
||||
POST https://graph.facebook.com/v18.0/{campaign_id}
|
||||
|
||||
access_token={access_token}
|
||||
&status=ACTIVE
|
||||
```
|
||||
|
||||
### Get custom audiences
|
||||
|
||||
```bash
|
||||
GET https://graph.facebook.com/v18.0/act_{ad_account_id}/customaudiences?access_token={access_token}&fields=id,name,approximate_count
|
||||
```
|
||||
|
||||
### Create lookalike audience
|
||||
|
||||
```bash
|
||||
POST https://graph.facebook.com/v18.0/act_{ad_account_id}/customaudiences
|
||||
|
||||
access_token={access_token}
|
||||
&name=Lookalike - Top Customers
|
||||
&subtype=LOOKALIKE
|
||||
&origin_audience_id={source_audience_id}
|
||||
&lookalike_spec={"type":"similarity","country":"US"}
|
||||
```
|
||||
|
||||
## Key Metrics
|
||||
|
||||
| Metric | Description |
|
||||
|--------|-------------|
|
||||
| `impressions` | Ad impressions |
|
||||
| `clicks` | All clicks |
|
||||
| `spend` | Amount spent |
|
||||
| `reach` | Unique people reached |
|
||||
| `frequency` | Avg impressions per person |
|
||||
| `cpm` | Cost per 1000 impressions |
|
||||
| `cpc` | Cost per click |
|
||||
| `actions` | Conversions array |
|
||||
| `cost_per_action_type` | CPA by action |
|
||||
|
||||
## Campaign Objectives
|
||||
|
||||
- `AWARENESS` - Brand awareness
|
||||
- `TRAFFIC` - Website traffic
|
||||
- `ENGAGEMENT` - Post engagement
|
||||
- `LEADS` - Lead generation
|
||||
- `APP_PROMOTION` - App installs
|
||||
- `SALES` - Conversions/catalog sales
|
||||
|
||||
## Targeting Options
|
||||
|
||||
```json
|
||||
{
|
||||
"geo_locations": {
|
||||
"countries": ["US"],
|
||||
"cities": [{"key": "2420379"}]
|
||||
},
|
||||
"age_min": 25,
|
||||
"age_max": 45,
|
||||
"genders": [1, 2],
|
||||
"interests": [{"id": "6003139266461", "name": "Marketing"}],
|
||||
"behaviors": [{"id": "6002714895372"}]
|
||||
}
|
||||
```
|
||||
|
||||
## When to Use
|
||||
|
||||
- Creating/managing Facebook and Instagram ads
|
||||
- Audience targeting and lookalikes
|
||||
- Campaign performance analysis
|
||||
- Retargeting setup
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 200 calls/hour per ad account
|
||||
- 60 calls/hour for marketing API
|
||||
- Use batch requests for efficiency
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- paid-ads
|
||||
- analytics-tracking
|
||||
- page-cro
|
||||
137
tools/integrations/mixpanel.md
Normal file
137
tools/integrations/mixpanel.md
Normal file
@@ -0,0 +1,137 @@
|
||||
# Mixpanel
|
||||
|
||||
Product analytics platform for tracking user behavior and retention.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Ingestion API, Query API, Data Export |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | JavaScript, iOS, Android, Python, etc. |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Ingestion**: Project token (public)
|
||||
- **Query API**: Service Account (username:secret as Basic auth)
|
||||
- **Export**: API Secret
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Track event (Ingestion API)
|
||||
|
||||
```bash
|
||||
POST https://api.mixpanel.com/track
|
||||
|
||||
{
|
||||
"event": "signup_completed",
|
||||
"properties": {
|
||||
"token": "{project_token}",
|
||||
"distinct_id": "user_123",
|
||||
"plan": "pro",
|
||||
"time": 1705312800
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Set user profile
|
||||
|
||||
```bash
|
||||
POST https://api.mixpanel.com/engage
|
||||
|
||||
{
|
||||
"$token": "{project_token}",
|
||||
"$distinct_id": "user_123",
|
||||
"$set": {
|
||||
"$email": "user@example.com",
|
||||
"$name": "John Doe",
|
||||
"plan": "pro"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Query events (Query API)
|
||||
|
||||
```bash
|
||||
POST https://mixpanel.com/api/2.0/insights
|
||||
|
||||
{
|
||||
"project_id": {project_id},
|
||||
"bookmark_id": null,
|
||||
"params": {
|
||||
"events": [{"event": "signup_completed"}],
|
||||
"time_range": {
|
||||
"from_date": "2024-01-01",
|
||||
"to_date": "2024-01-31"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Get funnel data
|
||||
|
||||
```bash
|
||||
GET https://mixpanel.com/api/2.0/funnels?funnel_id={funnel_id}&from_date=2024-01-01&to_date=2024-01-31
|
||||
```
|
||||
|
||||
### Export raw events
|
||||
|
||||
```bash
|
||||
GET https://data.mixpanel.com/api/2.0/export?from_date=2024-01-01&to_date=2024-01-01
|
||||
```
|
||||
|
||||
### Get retention data
|
||||
|
||||
```bash
|
||||
GET https://mixpanel.com/api/2.0/retention?from_date=2024-01-01&to_date=2024-01-31&retention_type=birth&born_event=signup_completed
|
||||
```
|
||||
|
||||
## JavaScript SDK
|
||||
|
||||
```javascript
|
||||
// Initialize
|
||||
mixpanel.init('YOUR_TOKEN');
|
||||
|
||||
// Identify user
|
||||
mixpanel.identify('user_123');
|
||||
|
||||
// Set user properties
|
||||
mixpanel.people.set({
|
||||
'$email': 'user@example.com',
|
||||
'plan': 'pro'
|
||||
});
|
||||
|
||||
// Track event
|
||||
mixpanel.track('Feature Used', {
|
||||
'feature_name': 'export'
|
||||
});
|
||||
```
|
||||
|
||||
## Key Concepts
|
||||
|
||||
- **Events** - User actions (signup, purchase, etc.)
|
||||
- **Properties** - Attributes on events
|
||||
- **User Profiles** - Persistent user data
|
||||
- **Cohorts** - Saved user segments
|
||||
- **Funnels** - Conversion sequences
|
||||
- **Retention** - User return patterns
|
||||
|
||||
## When to Use
|
||||
|
||||
- Tracking product usage events
|
||||
- Analyzing conversion funnels
|
||||
- Measuring feature adoption
|
||||
- Retention analysis
|
||||
- User segmentation
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- Ingestion: No hard limit (batch recommended)
|
||||
- Query API: Varies by plan
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- analytics-tracking
|
||||
- ab-test-setup
|
||||
- onboarding-cro
|
||||
151
tools/integrations/posthog.md
Normal file
151
tools/integrations/posthog.md
Normal file
@@ -0,0 +1,151 @@
|
||||
# PostHog
|
||||
|
||||
Open-source product analytics with session replay and feature flags.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Capture API, Query API, Feature Flags API |
|
||||
| MCP | - | Not available |
|
||||
| CLI | ✓ | `posthog` CLI for local development |
|
||||
| SDK | ✓ | JavaScript, Python, Ruby, Go, etc. |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key (Personal or Project)
|
||||
- **Header**: `Authorization: Bearer {api_key}`
|
||||
- **For capture**: Project API Key in payload
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Capture event
|
||||
|
||||
```bash
|
||||
POST https://app.posthog.com/capture/
|
||||
|
||||
{
|
||||
"api_key": "{project_api_key}",
|
||||
"event": "signup_completed",
|
||||
"distinct_id": "user_123",
|
||||
"properties": {
|
||||
"plan": "pro",
|
||||
"$current_url": "https://example.com/signup"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Batch events
|
||||
|
||||
```bash
|
||||
POST https://app.posthog.com/batch/
|
||||
|
||||
{
|
||||
"api_key": "{project_api_key}",
|
||||
"batch": [
|
||||
{"event": "pageview", "distinct_id": "user_1"},
|
||||
{"event": "signup", "distinct_id": "user_2"}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Get person by distinct_id
|
||||
|
||||
```bash
|
||||
GET https://app.posthog.com/api/projects/{project_id}/persons/?distinct_id=user_123
|
||||
|
||||
Authorization: Bearer {api_key}
|
||||
```
|
||||
|
||||
### Query events (HogQL)
|
||||
|
||||
```bash
|
||||
POST https://app.posthog.com/api/projects/{project_id}/query/
|
||||
|
||||
{
|
||||
"query": {
|
||||
"kind": "HogQLQuery",
|
||||
"query": "SELECT event, count() FROM events WHERE timestamp > now() - interval 7 day GROUP BY event ORDER BY count() DESC LIMIT 10"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Get feature flag value
|
||||
|
||||
```bash
|
||||
POST https://app.posthog.com/decide?v=3
|
||||
|
||||
{
|
||||
"api_key": "{project_api_key}",
|
||||
"distinct_id": "user_123"
|
||||
}
|
||||
```
|
||||
|
||||
### Get insights
|
||||
|
||||
```bash
|
||||
GET https://app.posthog.com/api/projects/{project_id}/insights/
|
||||
|
||||
Authorization: Bearer {api_key}
|
||||
```
|
||||
|
||||
### Get session recordings
|
||||
|
||||
```bash
|
||||
GET https://app.posthog.com/api/projects/{project_id}/session_recordings/
|
||||
|
||||
Authorization: Bearer {api_key}
|
||||
```
|
||||
|
||||
## JavaScript SDK
|
||||
|
||||
```javascript
|
||||
// Initialize
|
||||
posthog.init('PROJECT_API_KEY', {
|
||||
api_host: 'https://app.posthog.com'
|
||||
});
|
||||
|
||||
// Identify user
|
||||
posthog.identify('user_123', {
|
||||
email: 'user@example.com',
|
||||
plan: 'pro'
|
||||
});
|
||||
|
||||
// Track event
|
||||
posthog.capture('signup_completed', {
|
||||
method: 'email'
|
||||
});
|
||||
|
||||
// Check feature flag
|
||||
if (posthog.isFeatureEnabled('new-pricing')) {
|
||||
// Show new pricing
|
||||
}
|
||||
```
|
||||
|
||||
## Key Features
|
||||
|
||||
- **Event tracking** - Product analytics
|
||||
- **Session replay** - Watch user sessions
|
||||
- **Feature flags** - Control feature rollout
|
||||
- **A/B testing** - Built-in experiments
|
||||
- **HogQL** - SQL-like query language
|
||||
- **Self-hostable** - Run on your infrastructure
|
||||
|
||||
## When to Use
|
||||
|
||||
- Product analytics with privacy focus
|
||||
- Session replay for UX insights
|
||||
- Feature flag management
|
||||
- Self-hosted analytics needs
|
||||
- Open-source requirements
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- Cloud: 10,000 events/second
|
||||
- Self-hosted: Unlimited
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- analytics-tracking
|
||||
- ab-test-setup
|
||||
- onboarding-cro
|
||||
168
tools/integrations/resend.md
Normal file
168
tools/integrations/resend.md
Normal file
@@ -0,0 +1,168 @@
|
||||
# Resend
|
||||
|
||||
Developer-friendly transactional email service with modern API.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Simple REST API for sending emails |
|
||||
| MCP | ✓ | Available via Resend MCP server |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | Official SDKs for Node.js, Python, Go, etc. |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key
|
||||
- **Header**: `Authorization: Bearer {api_key}`
|
||||
- **Get key**: API Keys section in Resend dashboard
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Send email
|
||||
|
||||
```bash
|
||||
POST https://api.resend.com/emails
|
||||
|
||||
{
|
||||
"from": "hello@example.com",
|
||||
"to": ["user@example.com"],
|
||||
"subject": "Welcome!",
|
||||
"html": "<h1>Welcome to our app!</h1>"
|
||||
}
|
||||
```
|
||||
|
||||
### Send with React template
|
||||
|
||||
```bash
|
||||
POST https://api.resend.com/emails
|
||||
|
||||
{
|
||||
"from": "hello@example.com",
|
||||
"to": ["user@example.com"],
|
||||
"subject": "Welcome!",
|
||||
"react": "WelcomeEmail",
|
||||
"props": {
|
||||
"name": "John"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Get email status
|
||||
|
||||
```bash
|
||||
GET https://api.resend.com/emails/{email_id}
|
||||
```
|
||||
|
||||
### List emails
|
||||
|
||||
```bash
|
||||
GET https://api.resend.com/emails
|
||||
```
|
||||
|
||||
### Send batch emails
|
||||
|
||||
```bash
|
||||
POST https://api.resend.com/emails/batch
|
||||
|
||||
[
|
||||
{
|
||||
"from": "hello@example.com",
|
||||
"to": ["user1@example.com"],
|
||||
"subject": "Welcome User 1"
|
||||
},
|
||||
{
|
||||
"from": "hello@example.com",
|
||||
"to": ["user2@example.com"],
|
||||
"subject": "Welcome User 2"
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
### List domains
|
||||
|
||||
```bash
|
||||
GET https://api.resend.com/domains
|
||||
```
|
||||
|
||||
### Verify domain
|
||||
|
||||
```bash
|
||||
POST https://api.resend.com/domains/{domain_id}/verify
|
||||
```
|
||||
|
||||
## Node.js SDK
|
||||
|
||||
### Install
|
||||
|
||||
```bash
|
||||
npm install resend
|
||||
```
|
||||
|
||||
### Usage
|
||||
|
||||
```typescript
|
||||
import { Resend } from 'resend';
|
||||
|
||||
const resend = new Resend('re_xxx');
|
||||
|
||||
await resend.emails.send({
|
||||
from: 'hello@example.com',
|
||||
to: 'user@example.com',
|
||||
subject: 'Welcome!',
|
||||
html: '<h1>Welcome!</h1>'
|
||||
});
|
||||
```
|
||||
|
||||
### With React Email
|
||||
|
||||
```typescript
|
||||
import { WelcomeEmail } from './emails/welcome';
|
||||
|
||||
await resend.emails.send({
|
||||
from: 'hello@example.com',
|
||||
to: 'user@example.com',
|
||||
subject: 'Welcome!',
|
||||
react: WelcomeEmail({ name: 'John' })
|
||||
});
|
||||
```
|
||||
|
||||
## Email Statuses
|
||||
|
||||
- `queued` - Email queued for delivery
|
||||
- `sent` - Email sent to recipient server
|
||||
- `delivered` - Email delivered
|
||||
- `opened` - Email opened (if tracking enabled)
|
||||
- `clicked` - Link clicked (if tracking enabled)
|
||||
- `bounced` - Email bounced
|
||||
- `complained` - Marked as spam
|
||||
|
||||
## Webhook Events
|
||||
|
||||
| Event | When |
|
||||
|-------|------|
|
||||
| `email.sent` | Email sent |
|
||||
| `email.delivered` | Email delivered |
|
||||
| `email.opened` | Email opened |
|
||||
| `email.clicked` | Link clicked |
|
||||
| `email.bounced` | Email bounced |
|
||||
| `email.complained` | Spam complaint |
|
||||
|
||||
## When to Use
|
||||
|
||||
- Sending transactional emails
|
||||
- Welcome emails, password resets
|
||||
- Receipt and notification emails
|
||||
- Developer-friendly email integration
|
||||
- React-based email templates
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- Free: 100 emails/day, 3,000/month
|
||||
- Pro: 100 emails/second
|
||||
- Higher limits on scale plans
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- email-sequence
|
||||
- onboarding-cro
|
||||
147
tools/integrations/rewardful.md
Normal file
147
tools/integrations/rewardful.md
Normal file
@@ -0,0 +1,147 @@
|
||||
# Rewardful
|
||||
|
||||
Affiliate and referral tracking for Stripe-based SaaS businesses.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST API for affiliates, referrals, commissions |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | - | API-only, JavaScript snippet for tracking |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key
|
||||
- **Header**: `Authorization: Bearer {api_secret}`
|
||||
- **Get key**: Settings > API in Rewardful dashboard
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### List affiliates
|
||||
|
||||
```bash
|
||||
GET https://api.getrewardful.com/v1/affiliates
|
||||
```
|
||||
|
||||
### Get affiliate by ID
|
||||
|
||||
```bash
|
||||
GET https://api.getrewardful.com/v1/affiliates/{affiliate_id}
|
||||
```
|
||||
|
||||
### Search affiliate by email
|
||||
|
||||
```bash
|
||||
GET https://api.getrewardful.com/v1/affiliates?email=affiliate@example.com
|
||||
```
|
||||
|
||||
### Get referral by Stripe customer
|
||||
|
||||
```bash
|
||||
GET https://api.getrewardful.com/v1/referrals?stripe_customer_id={customer_id}
|
||||
```
|
||||
|
||||
### List referrals for affiliate
|
||||
|
||||
```bash
|
||||
GET https://api.getrewardful.com/v1/referrals?affiliate_id={affiliate_id}
|
||||
```
|
||||
|
||||
### Get commission details
|
||||
|
||||
```bash
|
||||
GET https://api.getrewardful.com/v1/commissions/{commission_id}
|
||||
```
|
||||
|
||||
### List commissions
|
||||
|
||||
```bash
|
||||
GET https://api.getrewardful.com/v1/commissions?affiliate_id={affiliate_id}
|
||||
```
|
||||
|
||||
### Create affiliate link
|
||||
|
||||
```bash
|
||||
POST https://api.getrewardful.com/v1/affiliates/{affiliate_id}/links
|
||||
|
||||
{
|
||||
"token": "custom-link-token",
|
||||
"url": "https://example.com/pricing"
|
||||
}
|
||||
```
|
||||
|
||||
### Update affiliate
|
||||
|
||||
```bash
|
||||
PUT https://api.getrewardful.com/v1/affiliates/{affiliate_id}
|
||||
|
||||
{
|
||||
"first_name": "John",
|
||||
"last_name": "Doe",
|
||||
"paypal_email": "john@example.com"
|
||||
}
|
||||
```
|
||||
|
||||
## JavaScript Tracking
|
||||
|
||||
### Install snippet
|
||||
|
||||
```html
|
||||
<script>
|
||||
(function(w,r){w._rwq=r;w[r]=w[r]||function(){(w[r].q=w[r].q||[]).push(arguments)}})(window,'rewardful');
|
||||
</script>
|
||||
<script async src='https://r.wdfl.co/rw.js' data-rewardful='YOUR_API_KEY'></script>
|
||||
```
|
||||
|
||||
### Track conversion manually
|
||||
|
||||
```javascript
|
||||
rewardful('convert', { email: 'customer@example.com' });
|
||||
```
|
||||
|
||||
## Webhook Events
|
||||
|
||||
| Event | When |
|
||||
|-------|------|
|
||||
| `affiliate.created` | New affiliate signs up |
|
||||
| `affiliate.approved` | Affiliate approved |
|
||||
| `referral.created` | New referral tracked |
|
||||
| `referral.converted` | Referral becomes customer |
|
||||
| `commission.created` | Commission generated |
|
||||
| `commission.paid` | Commission paid out |
|
||||
|
||||
## Key Objects
|
||||
|
||||
- **Affiliate** - Partner promoting your product
|
||||
- **Referral** - Tracked visit/lead from affiliate
|
||||
- **Commission** - Earned payment for affiliate
|
||||
- **Campaign** - Program with specific terms
|
||||
- **Link** - Tracking URL for affiliate
|
||||
|
||||
## Integration with Stripe
|
||||
|
||||
Rewardful automatically:
|
||||
1. Tracks referral cookie when user visits via affiliate link
|
||||
2. Associates Stripe customer with referral on checkout
|
||||
3. Creates commissions when subscriptions are paid
|
||||
4. Handles recurring commissions for subscriptions
|
||||
|
||||
## When to Use
|
||||
|
||||
- Setting up affiliate/referral programs for SaaS
|
||||
- Tracking referral attribution from Stripe payments
|
||||
- Managing affiliate relationships
|
||||
- Processing affiliate payouts
|
||||
- Analyzing referral program performance
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 120 requests per minute
|
||||
- Contact support for higher limits
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- referral-program
|
||||
- pricing-strategy
|
||||
150
tools/integrations/salesforce.md
Normal file
150
tools/integrations/salesforce.md
Normal file
@@ -0,0 +1,150 @@
|
||||
# Salesforce
|
||||
|
||||
Enterprise CRM platform for sales, service, and marketing.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST API, SOAP API, Bulk API |
|
||||
| MCP | - | Not available |
|
||||
| CLI | ✓ | Salesforce CLI (`sf`) |
|
||||
| SDK | ✓ | JSforce, simple-salesforce, etc. |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: OAuth 2.0 (Web Server Flow or JWT Bearer)
|
||||
- **Header**: `Authorization: Bearer {access_token}`
|
||||
- **Instance URL**: Use instance_url from auth response
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Query records (SOQL)
|
||||
|
||||
```bash
|
||||
GET https://{instance}.salesforce.com/services/data/v59.0/query?q=SELECT+Id,Name,Email+FROM+Contact+LIMIT+10
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Get record by ID
|
||||
|
||||
```bash
|
||||
GET https://{instance}.salesforce.com/services/data/v59.0/sobjects/Contact/{record_id}
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Create record
|
||||
|
||||
```bash
|
||||
POST https://{instance}.salesforce.com/services/data/v59.0/sobjects/Contact
|
||||
|
||||
{
|
||||
"FirstName": "John",
|
||||
"LastName": "Doe",
|
||||
"Email": "john@example.com",
|
||||
"AccountId": "{account_id}"
|
||||
}
|
||||
```
|
||||
|
||||
### Update record
|
||||
|
||||
```bash
|
||||
PATCH https://{instance}.salesforce.com/services/data/v59.0/sobjects/Contact/{record_id}
|
||||
|
||||
{
|
||||
"Title": "Senior Developer"
|
||||
}
|
||||
```
|
||||
|
||||
### Search records (SOSL)
|
||||
|
||||
```bash
|
||||
GET https://{instance}.salesforce.com/services/data/v59.0/search?q=FIND+{searchTerm}+IN+ALL+FIELDS+RETURNING+Contact(Id,Name,Email)
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Get opportunities
|
||||
|
||||
```bash
|
||||
GET https://{instance}.salesforce.com/services/data/v59.0/query?q=SELECT+Id,Name,Amount,StageName,CloseDate+FROM+Opportunity+WHERE+IsClosed=false
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
### Describe object
|
||||
|
||||
```bash
|
||||
GET https://{instance}.salesforce.com/services/data/v59.0/sobjects/Contact/describe
|
||||
|
||||
Authorization: Bearer {access_token}
|
||||
```
|
||||
|
||||
## CLI Commands
|
||||
|
||||
```bash
|
||||
# Authenticate
|
||||
sf org login web
|
||||
|
||||
# Query records
|
||||
sf data query --query "SELECT Id, Name FROM Account LIMIT 10"
|
||||
|
||||
# Create record
|
||||
sf data create record --sobject Account --values "Name='New Account'"
|
||||
|
||||
# Deploy metadata
|
||||
sf project deploy start
|
||||
|
||||
# Run Apex
|
||||
sf apex run --file script.apex
|
||||
```
|
||||
|
||||
## SOQL Examples
|
||||
|
||||
```sql
|
||||
-- Get contacts with accounts
|
||||
SELECT Id, Name, Email, Account.Name
|
||||
FROM Contact
|
||||
WHERE Account.Industry = 'Technology'
|
||||
|
||||
-- Get opportunities by stage
|
||||
SELECT StageName, COUNT(Id)
|
||||
FROM Opportunity
|
||||
GROUP BY StageName
|
||||
|
||||
-- Get recent leads
|
||||
SELECT Id, Name, Company, Status
|
||||
FROM Lead
|
||||
WHERE CreatedDate = LAST_N_DAYS:30
|
||||
ORDER BY CreatedDate DESC
|
||||
```
|
||||
|
||||
## Key Objects
|
||||
|
||||
- **Lead** - Potential customer
|
||||
- **Contact** - Person at account
|
||||
- **Account** - Company/organization
|
||||
- **Opportunity** - Sales deal
|
||||
- **Case** - Support ticket
|
||||
- **Campaign** - Marketing campaign
|
||||
|
||||
## When to Use
|
||||
|
||||
- Enterprise CRM operations
|
||||
- Complex sales processes
|
||||
- Multi-object relationships
|
||||
- Custom object management
|
||||
- Marketing campaign tracking
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 15,000 API calls per 24 hours (Enterprise)
|
||||
- Higher limits available
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- email-sequence
|
||||
- analytics-tracking
|
||||
- paid-ads
|
||||
159
tools/integrations/segment.md
Normal file
159
tools/integrations/segment.md
Normal file
@@ -0,0 +1,159 @@
|
||||
# Segment
|
||||
|
||||
Customer data platform for collecting, routing, and activating user data.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Tracking API, Profile API, Config API |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | analytics.js, iOS, Android, server libraries |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Tracking**: Write Key (per source)
|
||||
- **API**: Access Token (OAuth 2.0)
|
||||
- **Header**: `Authorization: Bearer {access_token}`
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Track event
|
||||
|
||||
```bash
|
||||
POST https://api.segment.io/v1/track
|
||||
|
||||
Authorization: Basic {base64(write_key:)}
|
||||
|
||||
{
|
||||
"userId": "user_123",
|
||||
"event": "signup_completed",
|
||||
"properties": {
|
||||
"plan": "pro",
|
||||
"method": "email"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Identify user
|
||||
|
||||
```bash
|
||||
POST https://api.segment.io/v1/identify
|
||||
|
||||
Authorization: Basic {base64(write_key:)}
|
||||
|
||||
{
|
||||
"userId": "user_123",
|
||||
"traits": {
|
||||
"email": "user@example.com",
|
||||
"name": "John Doe",
|
||||
"plan": "pro"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Track page view
|
||||
|
||||
```bash
|
||||
POST https://api.segment.io/v1/page
|
||||
|
||||
Authorization: Basic {base64(write_key:)}
|
||||
|
||||
{
|
||||
"userId": "user_123",
|
||||
"name": "Pricing",
|
||||
"properties": {
|
||||
"title": "Pricing - Example",
|
||||
"url": "https://example.com/pricing"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Batch events
|
||||
|
||||
```bash
|
||||
POST https://api.segment.io/v1/batch
|
||||
|
||||
Authorization: Basic {base64(write_key:)}
|
||||
|
||||
{
|
||||
"batch": [
|
||||
{"type": "identify", "userId": "user_1", "traits": {"plan": "free"}},
|
||||
{"type": "track", "userId": "user_1", "event": "signup"}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Get user profile (Profile API)
|
||||
|
||||
```bash
|
||||
GET https://profiles.segment.com/v1/spaces/{space_id}/collections/users/profiles/user_id:{user_id}/traits
|
||||
|
||||
Authorization: Basic {base64(access_token:)}
|
||||
```
|
||||
|
||||
### Get user events
|
||||
|
||||
```bash
|
||||
GET https://profiles.segment.com/v1/spaces/{space_id}/collections/users/profiles/user_id:{user_id}/events
|
||||
|
||||
Authorization: Basic {base64(access_token:)}
|
||||
```
|
||||
|
||||
## JavaScript SDK
|
||||
|
||||
```javascript
|
||||
// Initialize
|
||||
analytics.load('WRITE_KEY');
|
||||
|
||||
// Identify user
|
||||
analytics.identify('user_123', {
|
||||
email: 'user@example.com',
|
||||
plan: 'pro'
|
||||
});
|
||||
|
||||
// Track event
|
||||
analytics.track('Feature Used', {
|
||||
feature_name: 'export'
|
||||
});
|
||||
|
||||
// Page view
|
||||
analytics.page('Pricing');
|
||||
```
|
||||
|
||||
## Key Concepts
|
||||
|
||||
- **Sources** - Where data comes from (website, app, server)
|
||||
- **Destinations** - Where data goes (analytics, CRM, ads)
|
||||
- **Tracking Plan** - Schema for events and properties
|
||||
- **Protocols** - Data governance and validation
|
||||
- **Personas** - Unified user profiles
|
||||
- **Audiences** - Computed user segments
|
||||
|
||||
## Common Destinations
|
||||
|
||||
- Analytics: GA4, Mixpanel, Amplitude
|
||||
- CRM: HubSpot, Salesforce
|
||||
- Email: Customer.io, Mailchimp
|
||||
- Ads: Google Ads, Meta
|
||||
- Data Warehouse: BigQuery, Snowflake
|
||||
|
||||
## When to Use
|
||||
|
||||
- Centralizing event tracking
|
||||
- Routing data to multiple tools
|
||||
- Maintaining consistent tracking
|
||||
- Building unified user profiles
|
||||
- Syncing audiences across platforms
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 500 requests/second per source
|
||||
- Batch up to 500KB or 32KB per event
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- analytics-tracking
|
||||
- email-sequence
|
||||
- paid-ads
|
||||
121
tools/integrations/semrush.md
Normal file
121
tools/integrations/semrush.md
Normal file
@@ -0,0 +1,121 @@
|
||||
# SEMrush
|
||||
|
||||
SEO and competitive analysis platform for keyword research and site audits.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Analytics API, Projects API |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | - | API-only |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key
|
||||
- **Parameter**: `key={api_key}` in query string
|
||||
- **Get key**: My Profile > API in SEMrush dashboard
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Domain overview
|
||||
|
||||
```bash
|
||||
GET https://api.semrush.com/?type=domain_ranks&key={api_key}&export_columns=Db,Dn,Rk,Or,Ot,Oc,Ad,At,Ac&domain=example.com
|
||||
```
|
||||
|
||||
### Organic keywords
|
||||
|
||||
```bash
|
||||
GET https://api.semrush.com/?type=domain_organic&key={api_key}&export_columns=Ph,Po,Pp,Pd,Nq,Cp,Ur,Tr,Tc,Co,Nr&domain=example.com&database=us&display_limit=100
|
||||
```
|
||||
|
||||
### Keyword overview
|
||||
|
||||
```bash
|
||||
GET https://api.semrush.com/?type=phrase_all&key={api_key}&export_columns=Ph,Nq,Cp,Co,Nr&phrase=keyword&database=us
|
||||
```
|
||||
|
||||
### Related keywords
|
||||
|
||||
```bash
|
||||
GET https://api.semrush.com/?type=phrase_related&key={api_key}&export_columns=Ph,Nq,Cp,Co,Nr,Td&phrase=keyword&database=us&display_limit=50
|
||||
```
|
||||
|
||||
### Keyword difficulty
|
||||
|
||||
```bash
|
||||
GET https://api.semrush.com/?type=phrase_kdi&key={api_key}&export_columns=Ph,Kd&phrase=keyword&database=us
|
||||
```
|
||||
|
||||
### Backlinks overview
|
||||
|
||||
```bash
|
||||
GET https://api.semrush.com/?type=backlinks_overview&key={api_key}&target=example.com&target_type=root_domain
|
||||
```
|
||||
|
||||
### Backlinks list
|
||||
|
||||
```bash
|
||||
GET https://api.semrush.com/?type=backlinks&key={api_key}&target=example.com&target_type=root_domain&export_columns=source_url,source_title,target_url,anchor&display_limit=100
|
||||
```
|
||||
|
||||
### Competitors
|
||||
|
||||
```bash
|
||||
GET https://api.semrush.com/?type=domain_organic_organic&key={api_key}&export_columns=Dn,Cr,Np,Or,Ot,Oc,Ad&domain=example.com&database=us&display_limit=20
|
||||
```
|
||||
|
||||
## Response Format
|
||||
|
||||
Responses are CSV by default. Add `&export_escape=1` for proper escaping.
|
||||
|
||||
## Export Columns
|
||||
|
||||
### Domain Report
|
||||
- `Db` - Database
|
||||
- `Dn` - Domain
|
||||
- `Rk` - Rank
|
||||
- `Or` - Organic keywords
|
||||
- `Ot` - Organic traffic
|
||||
- `Oc` - Organic cost
|
||||
|
||||
### Keyword Report
|
||||
- `Ph` - Phrase/keyword
|
||||
- `Nq` - Search volume
|
||||
- `Cp` - CPC
|
||||
- `Co` - Competition
|
||||
- `Kd` - Keyword difficulty
|
||||
- `Nr` - Number of results
|
||||
|
||||
### Backlinks
|
||||
- `source_url` - Linking page
|
||||
- `target_url` - Target page
|
||||
- `anchor` - Anchor text
|
||||
- `source_title` - Page title
|
||||
|
||||
## Databases
|
||||
|
||||
Use country code: `us`, `uk`, `de`, `fr`, `ca`, `au`, etc.
|
||||
|
||||
## When to Use
|
||||
|
||||
- Keyword research
|
||||
- Competitive analysis
|
||||
- Backlink analysis
|
||||
- Site audits
|
||||
- Rank tracking
|
||||
- Content gap analysis
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- Varies by plan (10-30K units/day)
|
||||
- Each API call costs units
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- seo-audit
|
||||
- programmatic-seo
|
||||
- content-strategy
|
||||
- competitor-alternatives
|
||||
161
tools/integrations/sendgrid.md
Normal file
161
tools/integrations/sendgrid.md
Normal file
@@ -0,0 +1,161 @@
|
||||
# SendGrid
|
||||
|
||||
Email delivery platform for transactional and marketing emails.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Mail Send API, Marketing API |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | Official libraries for most languages |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key
|
||||
- **Header**: `Authorization: Bearer {api_key}`
|
||||
- **Get key**: Settings > API Keys in SendGrid dashboard
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Send email
|
||||
|
||||
```bash
|
||||
POST https://api.sendgrid.com/v3/mail/send
|
||||
|
||||
Authorization: Bearer {api_key}
|
||||
|
||||
{
|
||||
"personalizations": [{
|
||||
"to": [{"email": "user@example.com"}]
|
||||
}],
|
||||
"from": {"email": "hello@example.com"},
|
||||
"subject": "Welcome!",
|
||||
"content": [{
|
||||
"type": "text/html",
|
||||
"value": "<h1>Welcome!</h1>"
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Send with template
|
||||
|
||||
```bash
|
||||
POST https://api.sendgrid.com/v3/mail/send
|
||||
|
||||
{
|
||||
"personalizations": [{
|
||||
"to": [{"email": "user@example.com"}],
|
||||
"dynamic_template_data": {
|
||||
"name": "John",
|
||||
"order_id": "12345"
|
||||
}
|
||||
}],
|
||||
"from": {"email": "hello@example.com"},
|
||||
"template_id": "d-xxx"
|
||||
}
|
||||
```
|
||||
|
||||
### Add contact to list
|
||||
|
||||
```bash
|
||||
PUT https://api.sendgrid.com/v3/marketing/contacts
|
||||
|
||||
{
|
||||
"list_ids": ["list-id"],
|
||||
"contacts": [{
|
||||
"email": "user@example.com",
|
||||
"first_name": "John",
|
||||
"last_name": "Doe"
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Search contacts
|
||||
|
||||
```bash
|
||||
POST https://api.sendgrid.com/v3/marketing/contacts/search
|
||||
|
||||
{
|
||||
"query": "email LIKE 'user@%'"
|
||||
}
|
||||
```
|
||||
|
||||
### Get email statistics
|
||||
|
||||
```bash
|
||||
GET https://api.sendgrid.com/v3/stats?start_date=2024-01-01&end_date=2024-01-31
|
||||
|
||||
Authorization: Bearer {api_key}
|
||||
```
|
||||
|
||||
### Get bounces
|
||||
|
||||
```bash
|
||||
GET https://api.sendgrid.com/v3/suppression/bounces
|
||||
|
||||
Authorization: Bearer {api_key}
|
||||
```
|
||||
|
||||
### Get spam reports
|
||||
|
||||
```bash
|
||||
GET https://api.sendgrid.com/v3/suppression/spam_reports
|
||||
|
||||
Authorization: Bearer {api_key}
|
||||
```
|
||||
|
||||
### Validate email
|
||||
|
||||
```bash
|
||||
POST https://api.sendgrid.com/v3/validations/email
|
||||
|
||||
{
|
||||
"email": "user@example.com"
|
||||
}
|
||||
```
|
||||
|
||||
## Webhook Events
|
||||
|
||||
| Event | Description |
|
||||
|-------|-------------|
|
||||
| `processed` | Email accepted |
|
||||
| `delivered` | Email delivered |
|
||||
| `open` | Email opened |
|
||||
| `click` | Link clicked |
|
||||
| `bounce` | Hard/soft bounce |
|
||||
| `dropped` | Email dropped |
|
||||
| `spamreport` | Marked as spam |
|
||||
| `unsubscribe` | Unsubscribed |
|
||||
|
||||
## Node.js SDK
|
||||
|
||||
```javascript
|
||||
const sgMail = require('@sendgrid/mail');
|
||||
sgMail.setApiKey('SG.xxx');
|
||||
|
||||
await sgMail.send({
|
||||
to: 'user@example.com',
|
||||
from: 'hello@example.com',
|
||||
subject: 'Welcome!',
|
||||
html: '<h1>Welcome!</h1>'
|
||||
});
|
||||
```
|
||||
|
||||
## When to Use
|
||||
|
||||
- Transactional email at scale
|
||||
- Marketing email campaigns
|
||||
- Email validation
|
||||
- Deliverability management
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- Free: 100 emails/day
|
||||
- Paid: Varies by plan (up to millions/month)
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- email-sequence
|
||||
- analytics-tracking
|
||||
176
tools/integrations/shopify.md
Normal file
176
tools/integrations/shopify.md
Normal file
@@ -0,0 +1,176 @@
|
||||
# Shopify
|
||||
|
||||
E-commerce platform for online stores and retail.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST Admin API, Storefront API, GraphQL |
|
||||
| MCP | - | Not available |
|
||||
| CLI | ✓ | Shopify CLI for themes and apps |
|
||||
| SDK | ✓ | Official libraries for multiple languages |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: Access Token (Custom App or OAuth)
|
||||
- **Header**: `X-Shopify-Access-Token: {access_token}`
|
||||
- **Base URL**: `https://{shop}.myshopify.com/admin/api/2024-01/`
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Get shop info
|
||||
|
||||
```bash
|
||||
GET https://{shop}.myshopify.com/admin/api/2024-01/shop.json
|
||||
|
||||
X-Shopify-Access-Token: {access_token}
|
||||
```
|
||||
|
||||
### List products
|
||||
|
||||
```bash
|
||||
GET https://{shop}.myshopify.com/admin/api/2024-01/products.json?limit=50
|
||||
|
||||
X-Shopify-Access-Token: {access_token}
|
||||
```
|
||||
|
||||
### Get product
|
||||
|
||||
```bash
|
||||
GET https://{shop}.myshopify.com/admin/api/2024-01/products/{product_id}.json
|
||||
|
||||
X-Shopify-Access-Token: {access_token}
|
||||
```
|
||||
|
||||
### Create product
|
||||
|
||||
```bash
|
||||
POST https://{shop}.myshopify.com/admin/api/2024-01/products.json
|
||||
|
||||
X-Shopify-Access-Token: {access_token}
|
||||
|
||||
{
|
||||
"product": {
|
||||
"title": "Product Name",
|
||||
"body_html": "<p>Description</p>",
|
||||
"vendor": "Brand",
|
||||
"product_type": "Category",
|
||||
"variants": [{
|
||||
"price": "99.00",
|
||||
"sku": "SKU-001"
|
||||
}]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### List orders
|
||||
|
||||
```bash
|
||||
GET https://{shop}.myshopify.com/admin/api/2024-01/orders.json?status=any&limit=50
|
||||
|
||||
X-Shopify-Access-Token: {access_token}
|
||||
```
|
||||
|
||||
### Get order
|
||||
|
||||
```bash
|
||||
GET https://{shop}.myshopify.com/admin/api/2024-01/orders/{order_id}.json
|
||||
|
||||
X-Shopify-Access-Token: {access_token}
|
||||
```
|
||||
|
||||
### List customers
|
||||
|
||||
```bash
|
||||
GET https://{shop}.myshopify.com/admin/api/2024-01/customers.json?limit=50
|
||||
|
||||
X-Shopify-Access-Token: {access_token}
|
||||
```
|
||||
|
||||
### Search customers
|
||||
|
||||
```bash
|
||||
GET https://{shop}.myshopify.com/admin/api/2024-01/customers/search.json?query=email:user@example.com
|
||||
|
||||
X-Shopify-Access-Token: {access_token}
|
||||
```
|
||||
|
||||
### Get analytics
|
||||
|
||||
```bash
|
||||
GET https://{shop}.myshopify.com/admin/api/2024-01/reports.json
|
||||
|
||||
X-Shopify-Access-Token: {access_token}
|
||||
```
|
||||
|
||||
## GraphQL API
|
||||
|
||||
```graphql
|
||||
{
|
||||
products(first: 10) {
|
||||
edges {
|
||||
node {
|
||||
id
|
||||
title
|
||||
totalInventory
|
||||
priceRangeV2 {
|
||||
minVariantPrice {
|
||||
amount
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## CLI Commands
|
||||
|
||||
```bash
|
||||
# Login
|
||||
shopify login --store={shop}
|
||||
|
||||
# Create theme
|
||||
shopify theme init
|
||||
|
||||
# Push theme
|
||||
shopify theme push
|
||||
|
||||
# Preview theme
|
||||
shopify theme dev
|
||||
|
||||
# Create app
|
||||
shopify app create node
|
||||
```
|
||||
|
||||
## Webhook Topics
|
||||
|
||||
| Topic | When |
|
||||
|-------|------|
|
||||
| `orders/create` | New order |
|
||||
| `orders/paid` | Order paid |
|
||||
| `orders/fulfilled` | Order shipped |
|
||||
| `customers/create` | New customer |
|
||||
| `products/update` | Product changed |
|
||||
| `checkouts/create` | Checkout started |
|
||||
|
||||
## When to Use
|
||||
|
||||
- E-commerce store management
|
||||
- Product catalog operations
|
||||
- Order processing
|
||||
- Customer data management
|
||||
- Inventory tracking
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- REST: 2 requests/second
|
||||
- GraphQL: 50 points/second
|
||||
- Bulk operations available
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- analytics-tracking
|
||||
- email-sequence
|
||||
- referral-program
|
||||
148
tools/integrations/stripe.md
Normal file
148
tools/integrations/stripe.md
Normal file
@@ -0,0 +1,148 @@
|
||||
# Stripe
|
||||
|
||||
Payment processing, subscriptions, and billing for internet businesses.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Comprehensive REST API |
|
||||
| MCP | ✓ | Available via Stripe MCP server |
|
||||
| CLI | ✓ | `stripe` CLI for testing and webhooks |
|
||||
| SDK | ✓ | Official SDKs for most languages |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key
|
||||
- **Header**: `Authorization: Bearer sk_live_xxx` or `sk_test_xxx`
|
||||
- **Keys**: Secret key (server), Publishable key (client)
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### List customers
|
||||
|
||||
```bash
|
||||
GET https://api.stripe.com/v1/customers?limit=10
|
||||
```
|
||||
|
||||
### Get customer by email
|
||||
|
||||
```bash
|
||||
GET https://api.stripe.com/v1/customers?email=user@example.com
|
||||
```
|
||||
|
||||
### Get subscription
|
||||
|
||||
```bash
|
||||
GET https://api.stripe.com/v1/subscriptions/{subscription_id}
|
||||
```
|
||||
|
||||
### List subscriptions for customer
|
||||
|
||||
```bash
|
||||
GET https://api.stripe.com/v1/subscriptions?customer={customer_id}
|
||||
```
|
||||
|
||||
### Create checkout session
|
||||
|
||||
```bash
|
||||
POST https://api.stripe.com/v1/checkout/sessions
|
||||
|
||||
customer={customer_id}
|
||||
&line_items[0][price]={price_id}
|
||||
&line_items[0][quantity]=1
|
||||
&mode=subscription
|
||||
&success_url=https://example.com/success
|
||||
&cancel_url=https://example.com/cancel
|
||||
```
|
||||
|
||||
### Create customer portal session
|
||||
|
||||
```bash
|
||||
POST https://api.stripe.com/v1/billing_portal/sessions
|
||||
|
||||
customer={customer_id}
|
||||
&return_url=https://example.com/account
|
||||
```
|
||||
|
||||
### List recent invoices
|
||||
|
||||
```bash
|
||||
GET https://api.stripe.com/v1/invoices?customer={customer_id}&limit=10
|
||||
```
|
||||
|
||||
### Get payment intent
|
||||
|
||||
```bash
|
||||
GET https://api.stripe.com/v1/payment_intents/{payment_intent_id}
|
||||
```
|
||||
|
||||
## Webhook Events
|
||||
|
||||
Key events to handle:
|
||||
|
||||
| Event | When | Action |
|
||||
|-------|------|--------|
|
||||
| `checkout.session.completed` | Successful checkout | Provision access |
|
||||
| `customer.subscription.created` | New subscription | Update user record |
|
||||
| `customer.subscription.updated` | Plan change | Update entitlements |
|
||||
| `customer.subscription.deleted` | Cancellation | Revoke access |
|
||||
| `invoice.payment_failed` | Payment failed | Notify user, retry |
|
||||
| `invoice.paid` | Invoice paid | Confirm payment |
|
||||
|
||||
### Verify webhook signature
|
||||
|
||||
```javascript
|
||||
const event = stripe.webhooks.constructEvent(
|
||||
payload,
|
||||
sig,
|
||||
webhookSecret
|
||||
);
|
||||
```
|
||||
|
||||
## CLI Commands
|
||||
|
||||
```bash
|
||||
# Listen to webhooks locally
|
||||
stripe listen --forward-to localhost:3000/webhooks
|
||||
|
||||
# Trigger test events
|
||||
stripe trigger checkout.session.completed
|
||||
|
||||
# List recent events
|
||||
stripe events list --limit 10
|
||||
|
||||
# Get resource
|
||||
stripe customers retrieve cus_xxx
|
||||
```
|
||||
|
||||
## Key Objects
|
||||
|
||||
- **Customer** - User billing profile
|
||||
- **Subscription** - Recurring billing
|
||||
- **Price** - Pricing configuration
|
||||
- **Product** - What you sell
|
||||
- **Invoice** - Billing document
|
||||
- **PaymentIntent** - One-time payment
|
||||
- **Checkout Session** - Hosted payment page
|
||||
|
||||
## When to Use
|
||||
|
||||
- Processing payments
|
||||
- Managing subscriptions
|
||||
- Creating checkout flows
|
||||
- Handling billing portal
|
||||
- Querying customer data
|
||||
- Revenue analytics
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 100 read requests per second
|
||||
- 100 write requests per second
|
||||
- Higher limits available on request
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- pricing-strategy
|
||||
- referral-program (Stripe-integrated affiliate tools)
|
||||
- analytics-tracking (revenue tracking)
|
||||
161
tools/integrations/tiktok-ads.md
Normal file
161
tools/integrations/tiktok-ads.md
Normal file
@@ -0,0 +1,161 @@
|
||||
# TikTok Ads
|
||||
|
||||
Advertising platform for TikTok's short-form video audience.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Marketing API for campaigns, audiences, reporting |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | ✓ | Python SDK available |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: Access Token
|
||||
- **Header**: `Access-Token: {access_token}`
|
||||
- **Setup**: Create app in TikTok for Business, get access token
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Get advertiser info
|
||||
|
||||
```bash
|
||||
GET https://business-api.tiktok.com/open_api/v1.3/advertiser/info/?advertiser_ids=["{advertiser_id}"]
|
||||
|
||||
Access-Token: {access_token}
|
||||
```
|
||||
|
||||
### Get campaigns
|
||||
|
||||
```bash
|
||||
GET https://business-api.tiktok.com/open_api/v1.3/campaign/get/?advertiser_id={advertiser_id}&page=1&page_size=20
|
||||
|
||||
Access-Token: {access_token}
|
||||
```
|
||||
|
||||
### Get campaign report
|
||||
|
||||
```bash
|
||||
POST https://business-api.tiktok.com/open_api/v1.3/report/integrated/get/
|
||||
|
||||
Access-Token: {access_token}
|
||||
|
||||
{
|
||||
"advertiser_id": "{advertiser_id}",
|
||||
"report_type": "BASIC",
|
||||
"dimensions": ["campaign_id"],
|
||||
"metrics": ["spend", "impressions", "clicks", "conversion"],
|
||||
"data_level": "AUCTION_CAMPAIGN",
|
||||
"start_date": "2024-01-01",
|
||||
"end_date": "2024-01-31"
|
||||
}
|
||||
```
|
||||
|
||||
### Create campaign
|
||||
|
||||
```bash
|
||||
POST https://business-api.tiktok.com/open_api/v1.3/campaign/create/
|
||||
|
||||
Access-Token: {access_token}
|
||||
|
||||
{
|
||||
"advertiser_id": "{advertiser_id}",
|
||||
"campaign_name": "Campaign Name",
|
||||
"objective_type": "CONVERSIONS",
|
||||
"budget_mode": "BUDGET_MODE_DAY",
|
||||
"budget": 100
|
||||
}
|
||||
```
|
||||
|
||||
### Update campaign status
|
||||
|
||||
```bash
|
||||
POST https://business-api.tiktok.com/open_api/v1.3/campaign/status/update/
|
||||
|
||||
Access-Token: {access_token}
|
||||
|
||||
{
|
||||
"advertiser_id": "{advertiser_id}",
|
||||
"campaign_ids": ["{campaign_id}"],
|
||||
"opt_status": "ENABLE"
|
||||
}
|
||||
```
|
||||
|
||||
### Get ad groups
|
||||
|
||||
```bash
|
||||
GET https://business-api.tiktok.com/open_api/v1.3/adgroup/get/?advertiser_id={advertiser_id}&campaign_ids=["{campaign_id}"]
|
||||
|
||||
Access-Token: {access_token}
|
||||
```
|
||||
|
||||
### Get audiences
|
||||
|
||||
```bash
|
||||
GET https://business-api.tiktok.com/open_api/v1.3/dmp/custom_audience/list/?advertiser_id={advertiser_id}
|
||||
|
||||
Access-Token: {access_token}
|
||||
```
|
||||
|
||||
## Key Metrics
|
||||
|
||||
| Metric | Description |
|
||||
|--------|-------------|
|
||||
| `spend` | Amount spent |
|
||||
| `impressions` | Ad impressions |
|
||||
| `clicks` | Clicks |
|
||||
| `ctr` | Click-through rate |
|
||||
| `cpc` | Cost per click |
|
||||
| `cpm` | Cost per 1000 impressions |
|
||||
| `conversion` | Conversions |
|
||||
| `cost_per_conversion` | CPA |
|
||||
| `video_play_actions` | Video views |
|
||||
| `video_watched_6s` | 6s views |
|
||||
|
||||
## Campaign Objectives
|
||||
|
||||
- `REACH` - Brand awareness
|
||||
- `TRAFFIC` - Website traffic
|
||||
- `VIDEO_VIEWS` - Video views
|
||||
- `LEAD_GENERATION` - Lead forms
|
||||
- `CONVERSIONS` - Website conversions
|
||||
- `APP_PROMOTION` - App installs
|
||||
|
||||
## Targeting Options
|
||||
|
||||
### Demographics
|
||||
- Age ranges
|
||||
- Gender
|
||||
- Languages
|
||||
- Locations
|
||||
|
||||
### Interests & Behavior
|
||||
- Interest categories
|
||||
- Video interactions
|
||||
- Creator interactions
|
||||
- Hashtag interactions
|
||||
|
||||
### Custom Audiences
|
||||
- Customer file uploads
|
||||
- Website visitors (pixel)
|
||||
- App activity
|
||||
- Engagement audiences
|
||||
|
||||
## When to Use
|
||||
|
||||
- Reaching younger demographics (18-34)
|
||||
- Video-first advertising
|
||||
- Viral/creative campaigns
|
||||
- App promotion
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 10 requests/second
|
||||
- 100,000 requests/day
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- paid-ads
|
||||
- analytics-tracking
|
||||
144
tools/integrations/tolt.md
Normal file
144
tools/integrations/tolt.md
Normal file
@@ -0,0 +1,144 @@
|
||||
# Tolt
|
||||
|
||||
Affiliate program management for SaaS, with Stripe and Paddle integration.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | REST API for affiliates, referrals, payouts |
|
||||
| MCP | - | Not available |
|
||||
| CLI | - | Not available |
|
||||
| SDK | - | JavaScript snippet for tracking |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: API Key
|
||||
- **Header**: `Authorization: Bearer {api_key}`
|
||||
- **Get key**: Settings > API in Tolt dashboard
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### List affiliates
|
||||
|
||||
```bash
|
||||
GET https://api.tolt.io/v1/affiliates
|
||||
```
|
||||
|
||||
### Get affiliate
|
||||
|
||||
```bash
|
||||
GET https://api.tolt.io/v1/affiliates/{affiliate_id}
|
||||
```
|
||||
|
||||
### Create affiliate
|
||||
|
||||
```bash
|
||||
POST https://api.tolt.io/v1/affiliates
|
||||
|
||||
{
|
||||
"email": "affiliate@example.com",
|
||||
"name": "John Doe"
|
||||
}
|
||||
```
|
||||
|
||||
### List referrals
|
||||
|
||||
```bash
|
||||
GET https://api.tolt.io/v1/referrals?affiliate_id={affiliate_id}
|
||||
```
|
||||
|
||||
### Get referral by customer
|
||||
|
||||
```bash
|
||||
GET https://api.tolt.io/v1/referrals?customer_id={stripe_customer_id}
|
||||
```
|
||||
|
||||
### List commissions
|
||||
|
||||
```bash
|
||||
GET https://api.tolt.io/v1/commissions?affiliate_id={affiliate_id}
|
||||
```
|
||||
|
||||
### Get payout history
|
||||
|
||||
```bash
|
||||
GET https://api.tolt.io/v1/payouts?affiliate_id={affiliate_id}
|
||||
```
|
||||
|
||||
### Update affiliate
|
||||
|
||||
```bash
|
||||
PATCH https://api.tolt.io/v1/affiliates/{affiliate_id}
|
||||
|
||||
{
|
||||
"commission_rate": 30,
|
||||
"payout_method": "paypal",
|
||||
"paypal_email": "affiliate@paypal.com"
|
||||
}
|
||||
```
|
||||
|
||||
## JavaScript Tracking
|
||||
|
||||
### Install snippet
|
||||
|
||||
```html
|
||||
<script src="https://cdn.tolt.io/tolt.js" data-tolt="YOUR_PUBLIC_KEY"></script>
|
||||
```
|
||||
|
||||
### Track signup
|
||||
|
||||
```javascript
|
||||
window.tolt.signup(stripeCustomerId);
|
||||
```
|
||||
|
||||
### Identify existing customer
|
||||
|
||||
```javascript
|
||||
window.tolt.identify(stripeCustomerId);
|
||||
```
|
||||
|
||||
## Webhook Events
|
||||
|
||||
| Event | When |
|
||||
|-------|------|
|
||||
| `affiliate.created` | New affiliate registered |
|
||||
| `affiliate.approved` | Affiliate approved |
|
||||
| `referral.created` | New referral tracked |
|
||||
| `referral.converted` | Referral converted to customer |
|
||||
| `commission.created` | Commission earned |
|
||||
| `payout.completed` | Payout sent |
|
||||
|
||||
## Key Features
|
||||
|
||||
- **Stripe native** - Automatic commission tracking
|
||||
- **Paddle support** - Works with Paddle billing
|
||||
- **Affiliate dashboard** - White-labeled portal
|
||||
- **Payout automation** - PayPal and Wise payouts
|
||||
- **Custom commission tiers** - Different rates per affiliate
|
||||
|
||||
## Key Objects
|
||||
|
||||
- **Affiliate** - Partner in your program
|
||||
- **Referral** - Tracked conversion
|
||||
- **Commission** - Earned affiliate payment
|
||||
- **Payout** - Processed payment to affiliate
|
||||
- **Program** - Campaign configuration
|
||||
|
||||
## When to Use
|
||||
|
||||
- Setting up SaaS affiliate programs
|
||||
- Managing affiliate relationships
|
||||
- Tracking Stripe or Paddle-based referrals
|
||||
- Processing affiliate payouts
|
||||
- Building affiliate dashboards
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 100 requests per minute
|
||||
- Higher limits on enterprise plans
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- referral-program
|
||||
- pricing-strategy
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user