search-analytics

REVIEW · 51
Registry indexed

Collect and analyze Google Search Console organic search data in a local SQLite database. Stores clicks, impressions, click-through rates (CTR), average ranking positions, and landing pages so you can run SQL queries or view performance reports. Activate when analyzing Google Sea

Verified installs0
Stars16
Version1.0.0
Quality59/100 · Promising
Trust51/100 · Do not auto-install
Audit70/100 · Needs review

Supply asset profile

Research and knowledge work

Deep research, source comparison, literature review, RAG, knowledge search, and reports.

Browse track

Scenario

Research agents

I need my agent to research a topic, compare sources, and produce a concise report.

Agent fit

Claude Code + CLI + Codex

Codex, Claude Code, Cursor, CLI, or custom agents.

Install

Ready

npx skills add danicat/skills --skill search-analytics

Maintenance

fresh

Pushed today

Risk

Needs review

Dependency or permission surface needs review

GitHub quality

16

59/100 Quality · 59/100 Trust

Coverage tags

ResearchResearch agentsagent-skill

Review notes

Dependency or permission surface needs review · Permission surface may require sandboxing

Agent adoption scorecard

Trust, audit, and install readiness at a glance

These scores combine public repository metadata, OpenAgentSkill review signals, maintenance freshness, and install readiness. They are a shortlist signal, not a replacement for human review.

Quality

Promising
59

Useful candidate, but compare it with alternatives before adopting.

Trust

Do not auto-install
51

Trust Score v5 found insufficient evidence for agent installation. Treat this as discovery material, not an executable recommendation.

Audit

Needs review
70

A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.

OpenAgentSkill Trust Score v5

Sandbox only

Choose a stronger alternative or inspect the source manually before any install attempt.

CodexClaude CodeCursorOpenAgentSkill CLI

Stars

16 GitHub stars

Repo activity

16 stars, 3 forks

Maintenance

Pushed today

License

Apache-2.0

Install

npx skills add danicat/skills --skill search-analytics

Install safety

standard package or runtime install path

Permission surface

secrets or environment access, shell or command execution

Agent outcomes

No agent outcome data yet

Docs

Usable metadata, review docs

Risk summary

Review before production

  • No critical security risks identified; OAuth flow is standard and local.
  • Low GitHub adoption signal
  • Quality score needs review
  • Permission surface needs review: secrets or environment access, shell or command execution

Install readiness

Install path available

  • Install path is available
  • Repository evidence is available
  • License is declared
  • No Agent Proven outcome evidence yet

Agent-readable metadata

Machine-readable decision data for this skill.

Use this block or the embedded JSON to decide whether an agent should install this skill, choose an alternative, or ask for human review first.

Open JSON

Suited tasks

  • Database and SQL workflows
  • Claude Code teams
  • builders willing to evaluate younger projects
  • Understand table relationships

Suited agents

CodexClaude CodeCursorOpenAgentSkill CLICLI

Install decision

Command
npx skills add danicat/skills --skill search-analytics
Policy
block
Human review
yes

Trust and risk

Trust
51/100
Audit
70/100
Risk level
Needs review

Outcome loop

Endpoint
/api/agent/outcome
Event ID
resolve
Outcomes
5

Install command

npx skills add danicat/skills --skill search-analytics

Do not use when

  • teams that need a vendor-supported SLA
  • production agents without a repository review
  • Low GitHub adoption signal
  • No critical security risks identified; OAuth flow is standard and local.
  • No OpenAgentSkill engagement data yet

Agent safety v2

30/100 · Avoid automatic install

Blocked for auto-installblock

This skill should not be selected by an agent without explicit human security review.

Do not auto-install. Inspect the source, dependencies, and permission surface first.

Resolve via API

high

Shell or command execution

Skill metadata references terminal, CLI, shell, subprocess, or command execution workflows.

medium

Network access

Skill likely fetches remote pages, APIs, repositories, or external services.

high

Secrets or environment access

Skill metadata references credentials, tokens, environment variables, or secret-bearing workflows.

medium

Database access

Skill may inspect schemas, query databases, or work with persistent stores.

  • High-risk permission hints: Shell or command execution, Secrets or environment access
  • Dependency or permission surface needs review

Install targets

Install this skill in your agent workflow

Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.

skill install

OpenAgentSkill CLI

Resolve policy, run the source installer safely, and report a verified install receipt.

$ npx --yes https://github.com/Leon-Drq/openagentskill/releases/download/cli-v0.2.1/openagentskill-0.2.1.tgz install danicat-search-analytics

Agent resolve plan

Let an agent verify fit before installing.

The Resolve API returns the selected skill, alternatives, safety policy, audit notes, install target, and copy-paste prompt an agent can follow without scraping this page.

Open text plan

Agent should check

  • Task fit and alternatives from Resolve API.
  • Audit score, trust score, and safety policy warnings.
  • Install target compatibility for Codex, Claude Code, Cursor, or CLI.

Copy prompt

Task: Use search-analytics in this workspace.
Resolve first: https://www.openagentskill.com/api/agent/resolve?task=Use%20search-analytics%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Review install handoff: https://www.openagentskill.com/api/skills/danicat-search-analytics/install
Install command: npx skills add danicat/skills --skill search-analytics
Before running it, summarize audit warnings, required permissions, and the fallback skill if install is risky.

Agent handoff

Give an agent the install path, not another directory page.

Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.

Open install API

Agent prompt

Use search-analytics for this task. Review https://www.openagentskill.com/api/skills/danicat-search-analytics/install, then install with: npx skills add danicat/skills --skill search-analytics

Registry metadata

Agent-readable profile for automatic skill selection.

This page exposes the same decision, trust, audit, use-case, and install signals through the Registry API, so agents can rank this skill without scraping the UI.

Open manifest

Agent fit

58/100

Database and SQL

Platforms

Claude Code

Audit report

Needs review · 70/100

A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.

View audit reportView eval report

Agent decision cockpit

Fallback candidate for Database and SQL

Prototype with this skill first; keep a fallback candidate ready.

58
Readiness
Prototype
Stage

Role in stack

Fallback candidate

Primary fit

Database and SQL

Trust label

Prototype first

Install path

Command ready

Use when

  • Database and SQL workflows
  • Claude Code teams
  • builders willing to evaluate younger projects

Evidence

  • recent repository activity
  • install command or GitHub repo available
  • 59/100 quality profile

review first

  • Low GitHub adoption signal
  • No critical security risks identified; OAuth flow is standard and local.
  • No OpenAgentSkill engagement data yet

Implementation path

  1. 1Install it in a sandbox agent and run one Database and SQL task end to end.
  2. 2Compare output quality, latency, and failure behavior against at least one alternative.
  3. 3Promote it into production only after reviewing repository permissions, license, and maintenance signals.

Trust profile

Do not auto-install

Trust Score v5 found insufficient evidence for agent installation. Treat this as discovery material, not an executable recommendation.

51
OpenAgentSkill Trust Score

GitHub adoption

FIX

16 GitHub stars

Stars/forks activity

FIX

16 stars, 3 forks; issue activity unavailable in current metadata

Recent maintenance

PASS

Pushed today

License clarity

PASS

Apache-2.0

Good signals

  • AI review approved
  • Install path is available
  • Repository evidence is available
  • Recently maintained repository
  • Install command has no obvious high-risk pattern
  • Outcome loop is ready but needs first real agent run

Review before install

  • No critical security risks identified; OAuth flow is standard and local.
  • Low GitHub adoption signal
  • Quality score needs review
  • Permission surface needs review: secrets or environment access, shell or command execution
  • GitHub adoption: 16 GitHub stars
  • Stars/forks activity: 16 stars, 3 forks; issue activity unavailable in current metadata
  • Dependency/runtime risk: command execution surface, credential or environment access
  • Permission surface: secrets or environment access, shell or command execution
  • No real agent outcome reports yet
  • Human review required before unattended installation

Recommended action

Choose a stronger alternative or inspect the source manually before any install attempt.

Quality profile

Promising candidate for agent workflows

Useful candidate, but compare it with alternatives before adopting.

59
GitHub stars
16
Freshness
Today
Install ready
Yes
License
Apache-2.0
Review before install: Low GitHub adoption signal · No critical security risks identified; OAuth flow is standard and local.

Workflow fit

Use this skill in these scenarios

Workflow fit

Add it to a complete workflow

Alternative shortlist

Compare before you install

Similar skills that may fit this task.

Compare all

Overview

--- name: search-analytics description: > Collect and analyze Google Search Console organic search data in a local SQLite database. Stores clicks, impressions, click-through rates (CTR), average ranking positions, and landing pages so you can run SQL queries or view performance reports. Activate when analyzing Google Search traffic, tracking keyword rankings, finding SEO content optimization opportunities, or querying Search Console data with SQL. license: Apache-2.0 metadata: category: analytics tags: "google-search, analytics, seo, geo, optimization" author: Daniela Petruzalek (daniela@danicat.dev) version: "0.2.0" catalog: https://skills.danicat.dev ---

# Google Search Console SQLite Ingestion & SQL Analytics

The `search-analytics` skill ingests Google Search Console performance metrics into a local SQLite analytics database (`search_analytics.db` or `$XDG_DATA_HOME/search-analytics/analytics.db`) without data loss, preserving all raw JSON payloads, handling API quotas via 25,000 batch chunks, and providing direct SQL querying over indexed search traffic.

## Available scripts - `scripts/search_analytics.py`: Automated sync, reporting, and OAuth CLI for Google Search Console. Executed via `uv run scripts/search_analytics.py` (requires Google Cloud OAuth credentials). - `scripts/test_search_analytics.py`: Unit and regression test suite validating schema, query extraction, and CLI flags.

---

## ⚡ Quick Start & Primary Actions

All operations are driven via the bundled Python script in `scripts/search_analytics.py`:

```bash # 1. Authenticate with Google OAuth 2.0 uv run scripts/search_analytics.py auth --port 8080

# 2. Incremental Sync (Updates newest days + 3-day latency overlap) uv run scripts/search_analytics.py sync --db path/to/database.db

# 3. Full Historical Backfill (Ingests up to 16 months of granular daily data) uv run scripts/search_analytics.py sync --full --db path/to/database.db

# 4. Run Pre-Built SQL Reports uv run scripts/search_analytics.py report overview --db path/to/database.db uv run scripts/search_analytics.py report top-queries --db path/to/database.db uv run scripts/search_analytics.py report top-pages --db path/to/database.db uv run scripts/search_analytics.py report countries --db path/to/database.db uv run scripts/search_analytics.py report devices --db path/to/database.db uv run scripts/search_analytics.py report timing --db path/to/database.db uv run scripts/search_analytics.py report milestone-impact --db path/to/database.db

# 5. Run Ad-Hoc SQL Query uv run scripts/search_analytics.py query "SELECT query, SUM(clicks), SUM(impressions) FROM search_performance GROUP BY query ORDER BY SUM(clicks) DESC LIMIT 10" --db path/to/database.db ```

If `--db` is omitted, the script defaults to `search_analytics.db` in the current working directory.

---

## 🗄️ Database Schema & Relational Structure

The database maintains 6 relational tables and 7 high-performance analytical views. Detailed DDL and schema definitions are in [`references/schema.md`](references/schema.md).

### Tables

1. **`daily_site_performance`**: Unfiltered property-level daily totals (`dimensions: ['date']`). Matches 100% of property clicks/impressions in the Search Console web interface and 28-day Achievement badges. - Key columns: `id` (PK), `site_url`, `date`, `search_type`, `clicks`, `impressions`, `ctr`, `position`, `raw_json`, `synced_at`. 2. **`search_performance`**: Granular keyword-level performance partitioned by query, page, country, and device. - Key columns: `id` (PK), `site_url`, `date`, `query`, `page`, `country`, `device`, `search_appearance`, `search_type`, `clicks`, `impressions`, `ctr`, `position`, `raw_json`, `synced_at`. 3. **`properties`**: Verified Search Console web properties. - Key columns: `site_url` (PK), `permission_level`, `raw_json`, `synced_at`. 4. **`sitemaps`**: Submitted XML sitemaps, error counts, and indexed URL counts. - Key columns: `site_url`, `path` (PK), `type`, `last_downloaded`, `last_submitted`, `errors`, `warnings`, `indexed_count`, `raw_json`, `synced_at`. 5. **`site_milestones`**: Release milestones and publication launches for cohort impact analysis. - Key columns: `commit_hash` (PK), `event_date`, `title`, `description`, `category`, `scope`, `author`, `created_at`. 6. **`sync_history`**: Audit log of backfill and incremental sync operations. - Key columns: `id` (PK), `site_url`, `sync_type`, `start_date`, `end_date`, `rows_synced`, `status`, `error_message`, `started_at`, `completed_at`.

---

## 📊 Analytical SQL Views

| View Name | Description | Key Columns | | :--- | :--- | :--- | | `v_search_performance` | Granular performance with computed calendar dimensions | `date`, `year_month`, `day_of_week`, `query`, `page`, `country`, `device`, `clicks`, `impressions`, `ctr_pct`, `avg_position` | | `v_daily_summary` | Daily aggregated traffic metrics per site | `date`, `distinct_queries`, `distinct_pages`, `total_clicks`, `total_impressions`, `avg_ctr_pct`, `avg_position` | | `v_top_queries` | Aggregated search term rankings & click share | `query`, `active_days`, `total_clicks`, `total_impressions`, `avg_ctr_pct`, `avg_position` | | `v_top_pages` | Aggregated landing page performance & query breadth | `page`, `ranking_queries`, `active_days`, `total_clicks`, `total_impressions`, `avg_ctr_pct`, `avg_position` | | `v_country_breakdown` | Geographic traffic distribution | `country`, `total_clicks`, `total_impressions`, `avg_ctr_pct`, `avg_position` | | `v_device_breakdown` | Desktop vs. Mobile vs. Tablet comparison | `device`, `total_clicks`, `total_impressions`, `avg_ctr_pct`, `avg_position` | | `v_milestone_impact` | Pre vs. Post milestone search traffic cohort impact | `milestone_title`, `milestone_date`, `cohort`, `days_tracked`, `total_clicks`, `total_impressions`, `avg_ctr_pct` |

---

## 🔍 Common SQL Analytics Recipes

Pre-tested SQL query recipes are documented in [`references/queries.md`](references/queries.md).

### 1. High-Opportunity Search Queries (Rank 1-10, Low CTR) ```sql SELECT query, page, ROUND(SUM(impressions), 0) AS imps, ROUND(SUM(clicks), 0) AS clks, ROUND((SUM(clicks)/SUM(impressions))*100, 2) AS ctr_pct, ROUND(AVG(position), 1) AS avg_rank FROM search_performance WHERE position <= 10 GROUP BY query, page HAVING SUM(impressions) >= 500 AND ctr_pct < 3.0 ORDER BY imps DESC LIMIT 15; ```

### 2. Keyword Cannibalization Detection ```sql SELECT query, COUNT(DISTINCT page) AS competing_pages, GROUP_CONCAT(DISTINCT page) AS pages, ROUND(SUM(clicks), 0) AS total_clicks, ROUND(SUM(impressions), 0) AS total_impressions FROM search_performance WHERE query != '' GROUP BY query HAVING COUNT(DISTINCT page) > 1 ORDER BY total_impressions DESC LIMIT 10; ```

---

## ⚠️ Critical Architecture: Property-Level Totals vs. Keyword-Level Breakdown

When querying and analyzing Search Console data, note the two distinct API behaviors and database tables:

1. **Unfiltered Property-Level Totals (`daily_site_performance`):** - Querying the GSC API with `dimensions: ['date']` (and `aggregationType: 'byProperty'`) returns **100% of property search traffic**, including all rare and long-tail queries. - This data is ingested into `daily_site_performance` and powers `v_daily_summary`. It directly matches the Search Console Web UI Performance graphs, Total Clicks cards, and 28-day Achievement badges (e.g. *700 clicks in 28 days*). 2. **Granular Keyword-Level Breakdown (`search_performance`):** - When querying the GSC API with `dimensions: ['query', 'page', 'country', 'device']`, Google automatically applies **anonymized query filtering** to protect searcher privacy, stripping out rare/unique queries. - On technical and developer blogs, long-tail anonymized queries often represent 50%–70% of total search traffic. Therefore, `search_performance` should be used for keyword rankings and page distributions, while `daily_site_performance` (or `v_daily_summary`) must be used for aggregate traffic totals. 3. **Cross-Engine Reconciliation with Google Analytics 4:** - GA4 records landing sessions under `session_default_channel_group = 'Organic Search'` across all search engines (Google, Bing, DuckDuckGo, etc.) without privacy filtering. - GA4 Organic Search traffic naturally aligns with Search Console property-level totals (`daily_site_performance`), rather than the query-filtered `search_performance` table.

---

## 📚 Progressive Disclosure & References

- **Full DDL Schema Reference**: [`references/schema.md`](references/schema.md) — Complete SQL table definitions, column types, constraints, and views. - **SQL Query Cookbook**: [`references/queries.md`](references/queries.md) — Tested SQL recipes for CTR decay curves, keyword cannibalization, and MoM trends. - **OAuth Setup Guide**: [`references/setup_oauth.md`](references/setup_oauth.md) — Step-by-step GCP project, API enablement, and credential setup.

Technical details

Version
1.0.0
License
Apache-2.0
Last updated
Aug 24, 2026
Published
Aug 24, 2026

Decision snapshot

Fallback candidate

58
Ready
Prototype
Stage

recent repository activity

Audit

Install review

Install and adoption review

70
Needs review
Security
68/100
Maintenance
100/100
Install
92/100
Open full auditView eval report

Agent-proven evidence

Agent-proven evidence

Outcome reports after resolve, review, install, and one narrow run.

0
Proven
Needs first agent runAuto-install: review firstLast: Unknown
Success rate
Recent failure
Outcomes
0
Output quality
Failed
0
Not relevant
0
Installs
0
Risk blocked
0
Setup needed
0
Production
0

No agent outcome data yet. The first agent run can report success, setup needs, risk blocks, failure, or not-relevant through /api/agent/outcome.

Install

Add to agent workflow

Free and open source. Review the report before installing into production agents.

Growth loop

Share kit

X

Scenario-led draft for search-analytics, ready for a manual X post.

Curator note
search-analytics: Collect and analyze Google Search Console organic search data in a local SQLite database. Sto...

16 stars

https://www.openagentskill.com/skills/danicat-search-analytics?ref=x
Open X draft
Optional reply with install command
Listing + install path for search-analytics:
https://www.openagentskill.com/skills/danicat-search-analytics?ref=x

Install: npx skills add danicat/skills --skill search-analytics

Listing source

Registry indexed

Claimable

This listing was indexed from public sources and is not marked official until a maintainer claim is approved.

Creator
danicat
Indexed by
OpenAgentSkill community index

Attribution links to the public repository or creator profile. Creators can claim the listing to update ownership signals.

Claim this skill

Owner claim

Claim this skill listing

This Registry indexed listing is attributed to danicat but is not marked official yet. Claim it to add a verified owner signal and make future launch, install, and audit updates easier to trust.

Creator backlink kit

Add the evidence badges to your README

Show the canonical listing, current trust and audit signals, and real Agent-Proven evidence where developers evaluate the repository.

[![Listed on OpenAgentSkill](https://www.openagentskill.com/api/badge/danicat-search-analytics?metric=listed&label=Listed)](https://www.openagentskill.com/skills/danicat-search-analytics)
[![OpenAgentSkill Trust](https://www.openagentskill.com/api/badge/danicat-search-analytics?metric=trust&label=Trust)](https://www.openagentskill.com/skills/danicat-search-analytics)
[![OpenAgentSkill Audit](https://www.openagentskill.com/api/badge/danicat-search-analytics?metric=audit&label=Audit)](https://www.openagentskill.com/skills/danicat-search-analytics/audit)
[![Agent Proven](https://www.openagentskill.com/api/badge/danicat-search-analytics?metric=proven&label=Agent%20Proven)](https://www.openagentskill.com/skills/danicat-search-analytics)

Author

D

danicat

@danicat

Platform fit

Health signals

GitHub stars
16
Quality score
32/100
Last GitHub push
Aug 23, 2026
Framework hints
Unknown
OpenAgentSkill views
0
Install copies
0
Outbound clicks
0

Community signal

Share whether this skill looks useful for your agent workflow. Aggregated feedback improves rankings over time.

Trust & safety

Do not auto-install

51
  • GitHub adoption16 GitHub starsFIX
  • Stars/forks activity16 stars, 3 forks; issue activity unavailable in current metadataFIX
  • Recent maintenancePushed todayPASS
  • License clarityApache-2.0PASS
  • README/SKILL.md completenessPublic metadata needs stronger README/SKILL.md contextINFO
  • Dependency/runtime riskcommand execution surface, credential or environment accessFIX