Agent skill

SEO Gaps To Social Campaign

by seranking in seranking/seo-skills

Turn SE Ranking search-opportunity insights into a ready-to-publish social campaign in Planable.

MITAuto-check passedMarketing & SEO

Install SEO Gaps To Social Campaign

skills CLI
$ npx skills add seranking/seo-skills --skill seo-gaps-to-social-campaign -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install seranking/seo-skills seo-gaps-to-social-campaign --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/seo-gaps-to-social-campaign .claude/skills/seo-gaps-to-social-campaign && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
seo-gaps-to-social-campaign
GitHub stars
161
Token cost
~2.7k tokens
SKILL.md length
1,450 words
Files
1
Skills in repo
32
Repo updated
First seen
Licence
MIT

At a glance

Turn SE Ranking search-opportunity insights into a ready-to-publish social campaign in Planable.

  • Works in 6 steps: Scope the campaign → Discover opportunities in SE Ranking → Cluster into themes, then into angles → …
  • The user wants to convert SEO research into social content — keyword gaps
  • SKILL.md covers Prerequisites, Connector health check, Process and Content pointers: writing for…, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

SEO Gaps To Social Campaign is an agent skill from seranking/seo-skills. Turn SE Ranking search-opportunity insights into a ready-to-publish social campaign in Planable. Use this skill whenever the user wants to convert SEO research into social content — keyword gaps, competitor wins, ranking losses, question keywords, or new topic opportunities — and have the posts drafted and scheduled in Planable. Trigger on things like "what should we post based on our SEO data", "turn these keyword gaps into posts", "our competitor is ranking for X, make social content about it", "repurpose our…

Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Marketing & SEO, covering Keyword research, Social media posts and Content repurposing. The repository describes itself as: Claude SEO Skills — production Claude Agent Skills for the SE Ranking MCP server. Content briefs, AI Search share of voice, audits, backlink gaps, keyword clusters, schema… The licence is MIT.

When your agent uses it

  • The user wants to convert SEO research into social content — keyword gaps
  • Competitor wins
  • Question keywords
  • New topic opportunities — and have the posts drafted and scheduled in Planable

Example prompts

  • “what should we post based on our SEO data”
  • “turn these keyword gaps into posts”
  • “our competitor is ranking for X, make social content about it”
  • “/seo-gaps-to-social-campaign”

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Scope the campaign
  2. Discover opportunities in SE Ranking
  3. Cluster into themes, then into angles
  4. Draft the posts
  5. Create the drafts in Planable
  6. Confirm and hand off

What it can do on your machine

Read from SKILL.md and the folder at commit fd6d140. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • seranking.com
    • help.planable.io

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

SEO Gaps To Social Campaign loads about 2.7k tokens when it runs. Until then it costs about 196 tokens; SKILL.md has 1,450 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~196
When it runs · the whole SKILL.md, loaded when a task matches
~2.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from seranking/seo-skills at commit fd6d140, republished under its MIT licence (© seranking). 1,450 words, ~2,729 tokens.

Download SKILL.mdSave it as .claude/skills/seo-gaps-to-social-campaign/SKILL.md (or your agent's skills folder).
name
seo-gaps-to-social-campaign
description
Turn SE Ranking search-opportunity insights into a ready-to-publish social campaign in Planable. Use this skill whenever the user wants to convert SEO research into social content — keyword gaps, competitor wins, ranking losses, question keywords, or new topic opportunities — and have the posts drafted and scheduled in Planable. Trigger on things like "what should we post based on our SEO data", "turn these keyword gaps into posts", "our competitor is ranking for X, make social content about it", "repurpose our ranking opportunities into a campaign", "build a social campaign from search demand", or "fill the calendar based on what people are searching". Always activate when SE Ranking research is the starting point and Planable is the destination.

SEO gaps → social campaign

Connect SE Ranking (where the demand and the gaps live) to Planable (where content gets made, approved, and published). The goal is a focused social campaign whose every post is grounded in real search demand — not a generic brainstorm.

Prerequisites

  • SE Ranking MCP connected (Data API for research; a project is optional but unlocks ranking-loss detection).
  • Planable MCP connected, with the destination workspace and at least one connected page.
  • The user provides: target domain, market/country (default us), the Planable workspace, and ideally 1–3 competitor domains. Number of posts defaults to 6 if unspecified.

Connector health check

Before doing anything else, verify both MCPs are reachable:

Only continue to the process steps below once both calls return a successful response.

Process

1. Scope the campaign

Confirm: target domain, country, competitors (optional), the Planable workspace + which platforms, how many posts, and any campaign window. If the workspace is ambiguous, call list_workspaces and let the user pick — do not guess.

2. Discover opportunities in SE Ranking

Work sequentially (respect the Data API limit of ~10 requests/second). Save raw results as you go.

  • DATA_getDomainOverviewWorldwide + DATA_getDomainKeywords — the target's current footprint and best existing keywords. The target's own strong/striking-distance keywords are often the most on-brand campaign fuel, so mine these first.
  • DATA_getDomainCompetitors — confirm the real organic competitors (sort by shared keywords; take the top 3–5). Note: this call returns the full set and may be written to a file — read and parse it.
  • DATA_getDomainKeywordsComparison — the core gap list: keywords competitors rank for that the target does not. Filter to keep it useful (e.g. informational/commercial intent, volume > a sensible floor, difficulty the domain can realistically win). Then judge relevance, not just the numbers — competitor gap lists are noisy and surface off-brand junk (glossary entries, follower-farming terms like "free followers", unrelated blog tangents). Discard anything that isn't a topic the target could credibly post about; a high-volume term the brand has no business addressing is not an opportunity. If a strict filter returns almost nothing, loosen one threshold or try another competitor rather than forcing a campaign out of junk.
  • DATA_getRelatedKeywords + DATA_getKeywordQuestions — expansion terms and real questions people ask. Question keywords are gold for social hooks — they map directly to post openers. These endpoints often return only a handful of rows per seed, so query several seeds (3–5 core topics) and aggregate rather than trusting one; a seed returning 1–2 questions is normal, not a sign there's no demand.
  • DATA_getSerpResults for the 2–4 strongest themes — read the intent and the SERP features so the social angle matches what searchers actually want.
  • Ranking losses (if a project exists): call PROJECT_getPositionHistory (type avg_pos or visibility) to find terms that slipped. A recovering or slipping keyword is a strong "we have something to say" social trigger. If there is no project, skip this and rely on the gap analysis above.
3. Cluster into themes, then into angles

Group the keywords/questions into 3–6 content themes. For each theme, write a one-line rationale tied to the data (volume, gap size, intent, or a ranking move). Then translate each theme into concrete social angles — a question keyword becomes a hook, a comparison term becomes a carousel, a how-to becomes a tips post.

Surface the themes to the user before drafting, so they can steer.

4. Draft the posts

Write platform-appropriate copy for each post (see length/format norms below). Vary hooks and formats across the batch — don't repeat one structure. Keep each post traceable to its source keyword/question so the user understands the "why".

PlatformLengthNotes
LinkedIn~3,000 charsProfessional, can be long-form, line breaks
Instagram~2,200 charsVisual-first; hashtags at end or first comment; requires media
Facebookshorter performs betterConversational
X/Twitter280 charsPunchy
TikTok~2,200 charsCasual, trend-aware

Show all drafts in a preview before creating anything, unless the user said "just create them".

5. Create the drafts in Planable

list_pages(workspaceId) to get page IDs for the requested platforms. Then:

  • Same content across platforms → create_grouped_post(workspaceId, pageIds[], text, scheduledAt?, labels?). Caveat: a grouped post shares one text across every page, so grouping platforms with very different limits (e.g. Facebook + X) forces the shared copy under the strictest one (X's 280 chars). When copy should differ in length or tone per platform, use separate create_post calls instead.
  • Per-platform copy → create_post(workspaceId, pageId, text, scheduledAt?, labels?, firstComment?) once per page.
  • Scheduling — ask before creating. Don't guess dates or leave everything undated by default. Ask how the user wants the batch dated and offer: spread evenly across a window (e.g. the next 7 days, one post per slot at a sensible hour), a fixed cadence/interval (e.g. every weekday at 10:00, laid out from a start date they give), manual dates per post, or no dates yet (undated drafts to place on the calendar later). Convert each chosen time to ISO 8601 and pass it as scheduledAt. Keep posts as proposed drafts — don't set publishAtScheduledDate — so nothing auto-publishes; only set it true if the user explicitly wants auto-publishing. Scheduled times are treated as UTC, so confirm the timezone or state that times are UTC.
  • If the user wants the batch tagged, call list_labels (or create_label) and pass the label UUIDs. A campaign label (e.g. "SEO-driven") makes later reporting easy.
Show full SKILL.md (520 more words)Show less
6. Confirm and hand off

Report how many drafts were created, in which workspace/pages, the proposed schedule, and any validationErrors (e.g. Instagram needs media — flag it). Offer to set up rank/AI tracking for the targeted terms, or to report on the campaign later (the seo-ai-social-report skill).

Content pointers: writing for keywords & AI visibility gaps

Keep these in mind when creating social content meant to target a specific keyword or close an AI-visibility gap:

  • Target one intent per post. Pick a single keyword or question and answer that one thing clearly. Posts that try to cover everything rank and get cited for nothing.
  • Lead with the answer. Put the takeaway in the first line, then support it. Skimmers and AI engines both extract the clearest, most self-contained statement — don't bury it.
  • Write the way people actually ask. Phrase hooks, captions, and headers as real questions and plain-language answers. AI prompts are conversational, so natural phrasing beats keyword-stuffing.
  • Make claims quotable on their own. AI tools lift snippets out of context, so each key sentence should stand alone — one idea, declarative, no "as mentioned above."
  • Be specific. Numbers, concrete examples, named steps, clear definitions. Specificity is what gets cited and what sets you apart from generic content competitors already own.
  • Fill the gap, don't echo it. If a competitor already owns a topic, find the sub-question or angle they're missing instead of repeating what's already ranking.
  • Stay consistent across surfaces. Use the same terms and claims on social, your site, and your profiles so AI builds one coherent picture of what your brand is the answer for.
  • Keep it human. It still has to read like a good post — optimizing for keywords or AI shouldn't make the writing robotic.

Output

  1. A short content plan the user can scan: theme → source keyword/question (with volume/difficulty) → platform → angle.
  2. The created drafts summary with Planable links.
  3. Optional: save a campaign-brief.md to the outputs folder if the user wants something to circulate.

Tips

  • Never invent search volume or difficulty. If SE Ranking returns null, mark it unknown rather than guessing — the credibility of the plan depends on it.
  • Relevance beats volume. A 320-volume question your brand can answer brilliantly will outperform a 50k-volume term that has nothing to do with the product.
  • Match intent to platform: informational questions → educational posts; commercial/comparison terms → proof, demos, comparisons.
  • Posts are created as drafts. They will not publish until approved/scheduled in Planable. Say this explicitly so nothing goes live unexpectedly.

Edge cases & limits

  • Ranking-loss detection needs an SE Ranking project with position history. Without one, the campaign is built from competitor gap analysis (still strong, just not loss-driven).
  • No SE Ranking Content Editor via MCP. This skill drafts the social copy directly; it does not produce a Content-Editor optimization score. If the user needs website/blog copy scored, that step stays in the SE Ranking UI.
  • Instagram/visual platforms require media. Text-only drafts will flag a validation error; offer to attach a public image URL via mediaUrls, or note that media must be added in Planable before publishing.
  • This skill creates social drafts only — publishing happens in Planable after approval.

© seranking, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/seo-gaps-to-social-campaign of seranking/seo-skills.

Open the folder on GitHubat commit fd6d140

Compare with similar skills

SEO Gaps To Social Campaign next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

SEO Gaps To Social Campaign compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
SEO Gaps To Social Campaign this skillseranking/seo-skills161—~2.7kAutomated safety check: PassMIT
Social SEOsocial-media-skills/skills134—~2kAutomated safety check: PassMIT
Content Brief Authoringrampstackco/claude-skills945—~5.6kAutomated safety check: PassMIT
SEO DataforseoAgriciDaniel/codex-seo7992 repos~4.6kAutomated safety check: PassMIT
Competitor GapRyze-AI-Adgent/open-seo-mcp-skills4.7k—~560Automated safety check: PassMIT
Geo DifficultyOpenClaudia/openclaudia-skills713—~694Automated safety check: PassMIT

Similar skills

  • Social SEO

    social-media-skills/skills

    A skill your agent uses to make social content discoverable through SEARCH across social platforms — the social-SEO / keyword-discovery skill.

    134 GitHub stars~2k tokensUpdated 9 days ago
    Marketing & SEOAuto-check passed
  • Content Brief Authoring

    rampstackco/claude-skills

    How to author a content brief that actually guides a writer (human or AI) to produce a piece that ranks, converts, or both.

    945 GitHub stars~5.6k tokensUpdated 4 days ago
    Marketing & SEOAuto-check passed
  • SEO Dataforseo

    AgriciDaniel/codex-seo

    Live SEO data via DataForSEO MCP server. An agent skill from AgriciDaniel/codex-seo.

    799 GitHub starsUsed in 2 repos~4.6k tokens
    Marketing & SEOAuto-check passed
  • Competitor Gap

    Ryze-AI-Adgent/open-seo-mcp-skills

    Find keywords a competitor ranks for that the user's site doesn't — the content gap, prioritized by volume and winnability.

    4.7k GitHub stars~560 tokensUpdated 17 days ago
    Marketing & SEOAuto-check passed
  • Geo Difficulty

    OpenClaudia/openclaudia-skills

    Score how hard a keyword is to rank for in the AI-search era — page-level URL Rating of real competitors (not just domain DR), Ahrefs keyword difficulty, and whether a given site already ranks or is…

    713 GitHub stars~694 tokensUpdated today
    Marketing & SEOAuto-check passed
  • Keyword Research

    Ryze-AI-Adgent/open-seo-mcp-skills

    Keyword research from a seed topic — ideas, real Google volume/CPC, intent, difficulty, clustered into a plan.

    4.7k GitHub stars~581 tokensUpdated 17 days ago
    Marketing & SEOAuto-check passed

More from seranking/seo-skills

All 32 skills in this repo
  • SEO Google

    seranking/seo-skills

    Direct access to Google's own SEO data via Search Console (Search Analytics, URL Inspection, Sitemaps), PageSpeed Insights v5, CrUX field data with 25-week history, Indexing API v3, GA4 organic…

    161 GitHub stars~4.8k tokensUpdated 3 mo ago
    Auto-check passed
  • SEO API

    seranking/seo-skills

    SE Ranking API integration architect. An agent skill from seranking/seo-skills.

    161 GitHub stars~4.1k tokensUpdated 3 mo ago
    Auto-check passed
  • SEO Content Audit

    seranking/seo-skills

    E-E-A-T + CITE quality audit for an EXISTING piece of content.

    161 GitHub stars~3k tokensUpdated 3 mo ago
    Auto-check passed
  • SEO Content Brief

    seranking/seo-skills

    Generate a writer-ready SEO content brief from a target domain and topic.

    161 GitHub stars~2.5k tokensUpdated 3 mo ago
    Auto-check passed
  • SEO Drift

    seranking/seo-skills

    Capture an SEO baseline snapshot for a domain or URL, then on later runs compare the current state and surface regressions.

    161 GitHub stars~3.4k tokensUpdated 3 mo ago
    Auto-check passed
  • SEO Firecrawl

    seranking/seo-skills

    Ad-hoc web scraping, site mapping, and full-site crawling via Firecrawl MCP.

    161 GitHub stars~2.3k tokensUpdated 3 mo ago
    Auto-check passed

Questions about SEO Gaps To Social Campaign

What does SEO Gaps To Social Campaign do?

Turn SE Ranking search-opportunity insights into a ready-to-publish social campaign in Planable. SEO Gaps To Social Campaign is an agent skill from seranking/seo-skills. Turn SE Ranking search-opportunity insights into a ready-to-publish social campaign in Planable.

When should I use SEO Gaps To Social Campaign?

SEO Gaps To Social Campaign fits situations like: the user wants to convert SEO research into social content — keyword gaps; competitor wins; question keywords; new topic opportunities — and have the posts drafted and scheduled in Planable.

How do I install SEO Gaps To Social Campaign in Claude Code?

Run `npx skills add seranking/seo-skills --skill seo-gaps-to-social-campaign -a claude-code`. Or copy the skill folder (skills/seo-gaps-to-social-campaign in seranking/seo-skills) into .claude/skills/seo-gaps-to-social-campaign in your project. Claude Code loads it when a task matches its description.

How do I install SEO Gaps To Social Campaign in Codex?

Run `npx skills add seranking/seo-skills --skill seo-gaps-to-social-campaign -a codex`. Or copy the skill folder (skills/seo-gaps-to-social-campaign in seranking/seo-skills) into .agents/skills/seo-gaps-to-social-campaign in your project. Codex loads it when a task matches its description.

Can I use SEO Gaps To Social Campaign in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add seranking/seo-skills --skill seo-gaps-to-social-campaign -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/seo-gaps-to-social-campaign, .gemini/skills/seo-gaps-to-social-campaign, .github/skills/seo-gaps-to-social-campaign and .opencode/skills/seo-gaps-to-social-campaign in your project.

What does SEO Gaps To Social Campaign need to run?

SKILL.md names no scripts, command-line tools or credentials: SEO Gaps To Social Campaign is instructions for the agent only.

Does SEO Gaps To Social Campaign access the network?

SKILL.md names 2 domains. As links in the text: seranking.com and help.planable.io. This is read from the text; nothing was executed.

Is SEO Gaps To Social Campaign safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does SEO Gaps To Social Campaign use?

SEO Gaps To Social Campaign is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does SEO Gaps To Social Campaign use?

About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to SEO Gaps To Social Campaign?

Skills that share tags, products or a category with SEO Gaps To Social Campaign: Social SEO (social-media-skills/skills, 134 stars), Content Brief Authoring (rampstackco/claude-skills, 945 stars), SEO Dataforseo (AgriciDaniel/codex-seo, 799 stars) and Competitor Gap (Ryze-AI-Adgent/open-seo-mcp-skills, 4.7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains SEO Gaps To Social Campaign?

seranking (a GitHub organization) maintains it in seranking/seo-skills, which has 161 GitHub stars. The repository holds 32 skills in this directory. The repository was last updated on June 25, 2026.

Source: seranking/seo-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.