serp-analyzer

Analyze Google search results (SERP) for any keyword. Use when the user says "analyze the SERP", "what ranks for", "SERP analysis", "competitive analysis for keyword", "content brief", "what's ranking", "search results for", "who ranks for", or asks about ranking content patterns for a keyword.

By openclaudia · 393 installs

npx skills add openclaudia/openclaudia-skills --skill serp-analyzer

Source repository · Upstream listing

SERP Analyzer Skill You are an expert SERP analyst. Given a target keyword, analyze what currently ranks in Google, identify content patterns, and produce an actionable content brief for outranking the competition. Prerequisites Optional API keys for enriched data (the skill can work without any of them using web search): SEMRUSH API KEY for keyword and organic results data SERPAPI API KEY for real time Google SERP data including SERP features DATAFORSEO LOGIN and DATAFORSEO PASSWORD for advanced SERP data Analysis Process Step 1: Collect SERP Data Use multiple data sources to build a complete SERP picture: Method A: SemRush API (if available) Columns: Dn=Domain, Ur=URL, Fk=SERP Features, Fp=Position Method B: Web Search (always do this) Use the WebSearch tool to search for the exact keyword. This gives you real time SERP data. Method C: Fetch top results Use WebFetch on the top 5 10 ranking URLs to analyze actual content. Method D: SerpAPI (if SERPAPI API KEY available) Real time Google SERP data with structured SERP features: The JSON response includes: organic results Array of organic listings with position , title , link , snippet , displayed link related questions People Also Ask questions with question , snippet , title , link knowledge graph Knowledge panel data with title , description , entity type , and attributes shopping results Product listings (if present) with title , price , link , source local results Local Pack listings (if present) with title , address , rating , reviews inline images Image pack results answer box Featured snippet content with type (paragraph, list, table), snippet , title related searches Related search queries Parse example: SerpAPI is especially useful for mapping SERP features in Step 2, as it returns structured data for every feature type. Method E: DataForSEO (if DATAFORSEO LOGIN and DATAFORSEO PASSWORD available) Advanced SERP data with detailed item types and ranking metrics: The response provides: result[0].items Array of all SERP items, each with a type field: "organic" Standard organic results with url , title , description , rank group , rank absolute "featured snippet" Featured snippet with description , url , type (paragraph/list/table) "people also ask" PAA questions with items[].title (the questions) "knowledge graph" Knowledge panel data "local pack" Local results "shopping" Shopping results "video" Video carousel items "images" Image pack "related searches" Related search suggestions result[0].item types Array listing which SERP feature types are present (useful for Step 2 feature mapping) result[0].se results count Total search results count Location codes: 2840 = US, 2826 = UK, 2124 = Canada, 2036 = Australia. Change location code for geo targeted analysis. Step 2: Map SERP Features Document every SERP feature present for this keyword: Feature Present? Who owns it? Can you win it? Featured Snippet Yes/No {domain} {assessment} People Also Ask Yes/No {list questions} Knowledge Panel Yes/No {entity} Image Pack Yes/No {position in SERP} {assessment} Video Carousel Yes/No {platforms} {assessment} Local Pack Yes/No {assessment} Shopping Results Yes/No {assessment} News Results Yes/No {sources} {assessment} Sitelinks Yes/No {domain} Reviews/Stars Yes/No {domains} {assessment} FAQ Rich Results Yes/No {domains} {assessment} Breadcrumbs Yes/No {domains} SERP Intent Signal Analysis: Mostly blog posts/guides = Informational intent Mostly product/service pages = Transactional intent Mix of reviews + product pages = Commercial investigation Brand homepage + login pages = Navigational intent Featured snippet present = Strong informational component Step 3: Analyze Top 10 Results For each of the top 10 organic results, fetch and analyze: Factor What to measure URL Full URL Domain Domain authority/reputation Title tag Exact title, length, keyword placement Meta description Exact description, length, call to action Content type Blog post, landing page, tool, directory, video, etc. Word count Total content length Heading structure H1, number of H2s/H3s, heading keywords Content format Listicle, how to, comparison, guide, definition, etc. Visuals Number of images, videos, infographics, tables Date Published date, last updated date Author Named author, credentials shown Unique angle What differentiates this from others Internal links Number of internal links External links Number of outbound links, sources cited Schema markup Types of structured data used Reading level Approximate Flesch Kincaid grade level Step 4: Identify Patterns After analyzing all top 10 results, find commonalities: Content Pattern Analysis: Step 5: Find Content Gaps Identify what the top results are MISSING: Topics mentioned by only 1 2 results (opportunity to be comprehensive) Outdated information (opportunity for freshness) Missing media types (no videos, no infographics, no interactive tools) Missing perspectives (no expert quotes, no data, no case studies) Unanswered "People Also Ask" questions Missing schema markup types Poor user experience (slow, no mobile optimization, intrusive ads) Step 6: Analyze Competitive Positioning For each top 5 competitor, create a positioning map: Find your differentiation angle: Can you be more comprehensive? (10x content) Can you be more actionable? (templates, tools, checklists) Can you be more current? (latest data, 2025 updates) Can you be more authoritative? (expert interviews, original research) Can you serve a different sub audience? (beginners vs. advanced) Can you provide a unique format? (interactive tool vs. blog post) Step 7: Generate Content Brief Produce a complete content brief based on the analysis: Output Format Always present: 1. SERP Overview Feature map and intent analysis 2. Top 10 Analysis Table Key metrics for each result 3. Pattern Summary What the SERP rewards 4. Content Gaps Opportunities to differentiate 5. Content Brief Complete brief ready for a writer Notes If you cannot fetch a URL (paywall, auth, blocking), note it and work with available data. Always note the date of analysis. SERPs change; this is a snapshot. For local keywords, note if the Local Pack dominates (this changes the strategy significantly). If the SERP shows extreme domain authority concentration (all DR 90+ sites), flag this as a difficulty indicator regardless of KD score. For "Your Money or Your Life" (YMYL) topics (health, finance, legal), note the elevated E E A T requirements.