agentleFS
Synter-Media-AISynter-Media-AI/free-skills/skills/keyword-research/SKILL.md

keyword-research

Skill4 starsChanged 6 months agoMITView on GitHub

Finds low-competition, high-intent keywords using Google Keyword Planner and adds them to campaigns. Use when asked to find keywords, expand campaigns, or improve PPC targeting.

55 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use link-prospecting, seo-project-setup and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • JwuthriSkill

    link-prospecting

    Find link prospects, discover contact paths, and draft outreach from SERPs and backlink signals.

    Also in 11 projects that use this

  • JwuthriSkill

    seo-project-setup

    Set up a durable local SEO workspace with project context, notes, goals, positioning, preferences, MCP checks, and Search Console data intake.

    Also in 11 projects that use this

  • appeekySkill

    app-marketing-context

    When the user wants to create or update their app marketing context document. Also use when the user mentions "app context", "marketing brief", "app positioning", or when starting any ASO or app marketing project. This is the foundation skill — all other skills check for this context first.

    Also in 6 projects that use this

  • appeekySkill

    metadata-optimization

    When the user wants to optimize App Store metadata — title, subtitle, keyword field, or description. Also use when the user mentions "optimize my title", "ASO metadata", "keyword field", "character limits", "app description", or "write my subtitle". For keyword discovery, see keyword-research. For full ASO audits, see aso-audit.

    Also in 6 projects that use this

  • liangdabiaoSkill

    review-analysis

    对亚马逊商品评论进行深度分析,自动识别产品痛点、分析退货原因,生成改进建议和客服回复模板。Invoke when user uses /review-analysis command with a product ASIN.

    Also in 5 projects that use this

  • akii-technologies-ltdSkill

    keyword-clustering

    Cluster and organize keywords into topical groups for SEO. Use when the user asks to "cluster keywords", "group keywords", "organize keywords", "keyword mapping", "topic clusters", "keyword grouping", "build a content plan", "pillar pages", "topical authority", "semantic clustering", or pastes a list of keywords.

    Also in 12 projects that use this

  • +5 more from Jwuthri

The file

We split this skill into the rules it gives an agent

10 rules. 0 are common, 7 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 50 edited versions we read keep these.

  • 7

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Run scripts/research-keywords.py with seed keywords:

    line 21
  2. Very specific:

    Run scripts/add-keywords.py to add keywords:

    line 35
  3. Very specific:

    Run scripts/keyword-report.py to see all keywords across campaigns:

    line 46
  4. Distinctive:

    Default filters for finding opportunities:

    line 54
  5. Distinctive:

    When adding keywords, map them to appropriate ad groups:

    line 64
  6. Distinctive:

    EXACT: Use for high-volume, proven keywords

    line 77
  7. Distinctive:

    BROAD: Use sparingly, only for discovery with Smart Bidding

    line 78
  8. Distinctive:

    Research first: - Always run keyword research before adding

    line 82
  9. Distinctive:

    Group by intent: - Add keywords to ad groups with matching intent

    line 83
  10. Distinctive:

    Check for conflicts: - Don't add keywords that match negative keyword lists

    line 86

“Common” is measured: kept by at least 6 in 10 of the 50 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Keyword Research Skill

Discovers low-competition, high-intent keywords for your campaigns using Google Ads Keyword Planner, then adds them to the appropriate ad groups.

Capabilities

  1. Find keyword opportunities - Query Google Keyword Planner with seed keywords
  2. Score & filter keywords - Identify low-competition, high-value opportunities
  3. Add to campaigns - Automatically add keywords to relevant ad groups
  4. Competitive analysis - Analyze competitor domains for keyword gaps

Workflow

Step 1: Research Keywords

Run scripts/research-keywords.py with seed keywords:

python3 scripts/research-keywords.py \
  --seeds "ppc management,google ads automation,facebook ads management" \
  --max-competition 50 \
  --min-volume 100 \
  --max-cpc 25

This outputs a ranked list of keyword opportunities.

Step 2: Add Keywords to Campaigns

Run scripts/add-keywords.py to add keywords:

python3 scripts/add-keywords.py \
  --keywords "ppc management tools,marketing automation for agencies" \
  --ad-group "Your Campaign - Ad Group 1" \
  --match-type PHRASE

Step 3: Create Keyword Report

Run scripts/keyword-report.py to see all keywords across campaigns:

python3 scripts/keyword-report.py

Filtering Criteria

Default filters for finding opportunities:

CriteriaDefaultDescription
Competition Index< 50%Low competition keywords
Search Volume> 100Enough traffic to be worthwhile
CPC Range$1-25Valuable but not prohibitively expensive

Keyword Categories

When adding keywords, map them to appropriate ad groups:

CategoryTarget Ad Groups
PPC ToolsJTBD - PPC Audit, JTBD - Budget Optimizer
AutomationJTBD - Creative Generator, ProductHunt
AgencyJTBD - Website Analysis, Trial Campaign
Cross-ChannelProductHunt, Trial Campaign
CompetitorsJTBD - Optmyzr Alternative

Match Types

  • PHRASE (default): Best for new keywords, balances reach and relevance
  • EXACT: Use for high-volume, proven keywords
  • BROAD: Use sparingly, only for discovery with Smart Bidding

Best Practices

  1. Research first - Always run keyword research before adding
  2. Group by intent - Add keywords to ad groups with matching intent
  3. Start with PHRASE - Upgrade to EXACT after seeing performance
  4. Monitor quality score - New keywords should get 6+ quality score
  5. Check for conflicts - Don't add keywords that match negative keyword lists

Environment Requirements

Requires environment variables:

  • DATABASE_URL
  • GOOGLE_ADS_DEVELOPER_TOKEN

Account IDs

  • MCC Login Customer ID: 7431593382

About this skill

Part of the Synter free skills collection — open-source agent skills for advertising, PPC, and marketing automation.

Want this skill (and 40+ more) running on autopilot against your live ad accounts? Try Synter — AI Agent Media Buyers that connect to Google, Meta, LinkedIn, TikTok, Reddit, Amazon, and 7+ more platforms.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.