SkillHub

matomo

v1.0.1

Query, analyze, and manage Matomo Analytics with API integration, custom reports, and goal tracking.

Sourced from ClawHub, Authored by Iván

Installation

Please help me install the skill `matomo` from SkillHub official store. npx skills add ivangdavila/matomo

Setup

On first use, read setup.md for integration guidelines. The skill stores configuration in ~/matomo/.

When to Use

User needs to query Matomo analytics, generate reports, track goals, or manage their self-hosted analytics. Agent handles API queries, data analysis, visitor insights, and conversion tracking.

Architecture

Memory lives in ~/matomo/. See memory-template.md for structure.

~/matomo/
├── memory.md         # Sites, credentials ref, preferences
├── reports/          # Saved report templates
└── queries/          # Reusable API query templates

Quick Reference

Topic File
Setup process setup.md
Memory template memory-template.md
API reference api.md
Report templates reports.md

Core Rules

1. Never Expose Credentials

  • Token is stored in system keychain or env var, never in memory files
  • Refer to credentials by reference name only
  • If user pastes token in chat, warn and suggest secure storage

2. Use Reporting API for Reads

# Base pattern
curl -s "https://{matomo_url}/index.php?module=API&method={method}&idSite={site_id}&period={period}&date={date}&format=json&token_auth={token}"

Common methods: - VisitsSummary.get — visitors, visits, pageviews - Actions.getPageUrls — top pages - Referrers.getWebsites — traffic sources - Goals.get — conversion data

3. Understand Date Ranges

Period Date Format Example
day YYYY-MM-DD 2025-01-15
week YYYY-MM-DD Week containing that date
month YYYY-MM 2025-01
year YYYY 2025
range YYYY-MM-DD,YYYY-MM-DD 2025-01-01,2025-01-31

Special dates: today, yesterday, last7, last30, lastMonth, lastYear

4. Handle Multi-Site Setups

  • Always confirm which site before querying
  • Store site list in memory.md with idSite mappings
  • Default to most-used site if configured

5. Format Data for Humans

  • Round percentages to 1 decimal
  • Use K/M suffixes for large numbers
  • Compare periods when context helps (vs last week/month)
  • Highlight significant changes (>10% delta)

6. Respect Rate Limits

  • Batch related queries into single date range when possible
  • Cache recent results in memory for follow-up questions
  • Avoid querying same data repeatedly in conversation

7. Use Segments for Deeper Insights

Segments filter data by visitor attributes. Add &segment= to any query:

# Mobile visitors only
&segment=deviceType==smartphone

# From specific country
&segment=countryCode==US

# Returning visitors who converted
&segment=visitorType==returning;goalConversionsSome>0

# Combine with AND (;) or OR (,)
&segment=browserCode==CH;operatingSystemCode==WIN

Common segment dimensions: - deviceType — smartphone, tablet, desktop - browserCode — CH (Chrome), FF (Firefox), SF (Safari) - countryCode — ISO 2-letter code - visitorType — new, returning - referrerType — direct, search, website, campaign

Matomo Traps

  • Wrong idSite → querying wrong property, misleading data. Always confirm site first.
  • Forgetting token_auth → 403 or empty response. Token required for all non-public methods.
  • date vs period mismatch → confusing results. period=range requires date=start,end format.
  • Expecting GA terminology → Matomo uses "visits" not "sessions", "actions" not "events". Translate mentally.
  • Ignoring segments → missing the real insight. Segments filter data by visitor attributes.

External Endpoints

Endpoint Data Sent Purpose
{user_matomo_url}/index.php API method, site ID, date range, auth token Query analytics data

No other data is sent externally. All requests go to user's own Matomo instance.

Security & Privacy

Data that leaves your machine: - API queries sent to user's Matomo instance only - Auth token included in requests (user-controlled)

Data that stays local: - Site configurations in ~/matomo/ - Report templates - No data sent to third parties

This skill does NOT: - Store auth tokens in plain text - Send data to any service except user's Matomo - Access files outside ~/matomo/

Install with clawhub install <slug> if user confirms: - analytics — general analytics patterns - umami — privacy-focused analytics - api — REST API integration

Feedback

  • If useful: clawhub star matomo
  • Stay updated: clawhub sync