We Audited Every GA4 Skill on ClawHub. Here's What the Source Code Revealed.
By BytesAgain | 2026-04-29
The 6,304-download champion isn't the only game in town. The 119-download unknown might be better.

The Setup
We ran a six-dimension source-code audit of 23 GA4-related skills on ClawHub. Not a description-skim. Not a download-count ranking. We installed every skill with working code, read every source file, compared architectures, and scored each one on code quality, feature coverage, authentication, output quality, extensibility, and community adoption.
Six had real code. Seven were documentation-only templates. Two were clones.
The Real Leaderboard
| # | Skill | Score | Downloads | β | Type | Key Differentiator |
|---|---|---|---|---|---|---|
| 1 | ga4-analytics |
89 | 6,304 | 11 | TypeScript Platform | Only skill integrating GA4 + Search Console + Indexing API |
| 2 | google-analytics-ga4 |
88 | 119 | 0 | Python Class | Only skill with realtime + historical + metadata modes |
| 3 | native-google-analytics |
72 | 760 | 18 | Pure REST | Zero SDK dependencies β calls the API directly with urllib |
| 4 | ga4 |
66 | 3,812 | 1 | SDK Wrapper | Solid OAuth flow, but no realtime, no GSC |
| 5 | ga4-data-api |
58 | 217 | 0 | SDK Wrapper | Good install script, weakest query capabilities |
Yes, the second-best GA4 skill on the platform has 119 downloads and zero stars.
The Hidden Gem
google-analytics-ga4 is the only GA4 skill on ClawHub that supports all three query modes:
- Realtime β
--action realtimewith configurable minute-range windows (0-30 minutes) - Historical β
--action historicalwith pagination, filtering, and offset - Metadata β
--action metadatalisting every available dimension and metric
It outputs Markdown tables by default β no JSON parsing, no manual formatting. It has a separate openclaw_ga.py wrapper providing clean subcommand syntax. Its ga_query.py is a 280-line GoogleAnalyticsQuery class with proper error handling, response normalization, and totals aggregation.
Built by whosc. One version ever published. 119 downloads. Zero stars.
Why? The SKILL.md description buries the lead. It doesn't mention "realtime" anywhere prominent. The author built the most functionally complete GA4 tool on ClawHub β and forgot to market it.
Lesson #1: Code quality has almost zero correlation with downloads on ClawHub.
The Clone Problem
skill-ga4-analytics (390 downloads, zero2ai-hub) is an exact copy of ga4-analytics (adamkristopher).
We ran diff -rq on both source trees:
Files src/index.ts differ
The difference? One line in the reindexUrls() function:
- results.push({ url, status: 'submitted', ...result })
+ results.push({ ...result, url, status: 'submitted' })
405 lines. 10 files. 9 npm dependencies. Identical architecture, identical feature set, identical orchestration functions. Different author, different slug, different year β same code.
390 downloads for a copy-paste.
Lesson #2: The clone detection bar on ClawHub is extremely low.
Three Architectural Patterns
1. The TypeScript Platform (ga4-analytics)
scripts/src/
βββ index.ts (405 lines) β 15 orchestration functions
βββ api/reports.ts β 8 pre-built GA4 queries
βββ api/realtime.ts β 4 realtime dimensions
βββ api/searchConsole.ts β 6 GSC queries
βββ api/indexing.ts β URL re-indexing
βββ core/client.ts β Singleton: GA4+GSC+Indexing clients
βββ core/storage.ts β Auto-save JSON results
βββ config/settings.ts β .env driven
Heavy: 7 npm packages. Requires Node β₯18. But it's a complete data platform β site overview, traffic analysis, content performance, user behavior, date comparison, live snapshot, keyword analysis, SEO page performance, URL re-indexing, index status checking. All auto-saved with timestamps.
2. The Zero-Dependency REST (native-google-analytics)
# 175 lines. No pip install needed.
import urllib.request
url = f"https://analyticsdata.googleapis.com/v1beta/properties/{property_id}:runReport"
req = urllib.request.Request(url, data=payload, headers={"Authorization": f"Bearer {access_token}"})
The cleanest code in the category. 18 stars β highest of any GA4 skill. Developer love in its purest form: zero dependencies, calls the API directly, works on any Python 3.x installation.
3. The SDK Wrapper (ga4, ga4-data-api)
Standard google-analytics-data pip package with OAuth InstalledAppFlow. Functional but adds 50MB+ of virtual environment overhead. No realtime. No Search Console. No Indexing API. These are data extraction tools, not analysis platforms.
What Nobody Built Yet
| Missing Feature | Current State | Opportunity |
|---|---|---|
| Chart/Graph Output | 0/6 skills provide visualizations | First skill with matplotlib/plotly charts |
| Scheduled Reports | 0/6 skills have cron integration | "Email me my GA4 report every Monday at 9am" |
| Notification Push | 0/6 skills connect to messaging | Telegram/Slack/Discord webhook integration |
| Token Auto-Refresh | OAuth skills require manual re-auth | Service Account + automatic token refresh |
| Competitive Benchmarking | 0/6 skills compare against norms | "Your bounce rate vs industry average" |
| Zero-Deps + Service Account | native-ga has zero deps but uses OAuth; ga4-analytics has Service Account but needs Node |
Python + Service Account + urllib = ultimate combo |
Lesson #3: The GA4 skill market is a land grab. First mover on any of these gaps wins.
The Overrated
ga4 has 3,812 downloads β second highest in the category β but scores only 66. It does one thing (historical report queries) competently. No realtime. No GSC. No Indexing. No auto-save. No orchestration.
Why the downloads? It has the best slug. ga4 is what everyone searches. Slug = distribution. Same lesson as domain names: the generic name gets the traffic regardless of quality.
Recommendations
If you're choosing a GA4 skill:
- Most complete:
ga4-analyticsβ TypeScript, GA4+GSC+Indexing, auto-save, production-grade - Hidden gem:
google-analytics-ga4β realtime+historical+metadata, Markdown output, 119 downloads is criminal - Cleanest code:
native-google-analyticsβ zero deps, pure REST, 18β community approval - Avoid:
skill-ga4-analyticsβ it's a clone, use the original
If you're building something:
- Don't compete on features β
ga4-analyticsalready integrates GA4+GSC+Indexing. You can't beat that on breadth. - Compete on output β nobody has charts. Nobody has scheduled reports. Nobody has notifications.
- Compete on simplicity β a single Python file with zero deps + Service Account auth beats every SDK wrapper.
- Compete on the slug β if you can claim a generic, do it early.
Methodology: 6-dimension weighted scoring (Code Quality 20%, Feature Coverage 20%, Authentication 15%, Output Quality 15%, Extensibility 15%, Maintenance Heat 15%). All source code read and compared. Built with bytesagain-competitive-analysis.
