From matomo-analytics
Cross-reference page views with event usage to calculate feature adoption rates. Use this when the user wants to know how many visitors used a specific feature (event) on a set of pages matching a URL pattern.
npx claudepluginhub lucaspretti/claude-plugins --plugin matomo-analyticsThis skill uses the workspace's default tool permissions.
Analyze page views and events for specific URL patterns, then cross-reference them to calculate usage rates. This answers questions like "how many people used feature X on pages Y".
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Analyzes competition with Porter's Five Forces, Blue Ocean Strategy, and positioning maps to identify differentiation opportunities and market positioning for startups and pitches.
Analyze page views and events for specific URL patterns, then cross-reference them to calculate usage rates. This answers questions like "how many people used feature X on pages Y".
Ask the user for (or infer from context):
guidelines-epc|guidelines-pct)Toggle Show Modifications)desktop, mobile, smartphone, tablet, or phablet if the user asks about a specific device slice (e.g. "how many mobile users toggled X")Call matomo_search_pages with:
siteId: the site IDurlPattern: the URL patternperiod: range when the user gave start/end dates, otherwise month for long windows and day for short onesdate: comma-separated start,end range when period=range (e.g. 2026-02-01,2026-02-28)device: pass through if the user asked for a device sliceSum up nb_visits (unique visitors) and nb_hits (page views) across all matching pages. Keep monthly totals if the range spans multiple months.
Call matomo_search_events with:
siteId: the site IDfilterPattern: the event filterdimension: name (to see specific event values like on/off toggles)period, date, device: same as aboveSum up nb_events across all matching events. Keep monthly totals.
usage_rate = (total_events / total_page_views) * 100
If both on/off event variants exist (e.g. "Toggle Show Modifications On" and "Toggle Show Modifications Off"), report them separately and combined.
Provide a summary with:
Key figures:
Monthly breakdown table:
| Month | Page Views | Unique Visitors | Events | Usage Rate |
|---|---|---|---|---|
| ... | ... | ... | ... | ... |
| Total | ... | ... | ... | ...% |
Observations:
If a device-filtered call comes back with all-zero metrics while the same
query without device returns normal numbers, the Matomo server is refusing
to aggregate the segment for this API token (it lacks process_new_segment
or the segment isn't pre-archived). Do not claim "no mobile traffic" — that's
almost never the real answer.
Try these in order:
matomo_count_visits_by_segment. It uses the Live API
under the hood (no archiving required) and accepts the same device
shortcut plus an optional urlPattern for the page filter. For per-URL
mobile slicing:
{siteId, period, date, device: "mobile", urlPattern: "bulletin/download"}
Returns {visits, byDevice, byCountryTop10, actionHitsOnPattern}.
For per-language breakdown, call matomo_get_last_visits with the same
segment and iterate actionDetails[].url client-side (strip ISO lang
prefix with regex /^/([a-z]{2})/...).matomo_list_segments to find saved segments on the instance.
Any segment with auto_archive=1 is pre-archived and will always return
real numbers when you reference its definition string in segment.process_new_segment on the token or pre-archive common segments.