Plausible Analytics
Privacy-focused, open-source web analytics with a simple API for stats queries without cookies or personal data collection.
Capabilities
| Integration | Available | Notes |
|---|---|---|
| API | ✓ | Stats v2 Query, Sites Provisioning, Goals, Shared Links |
| MCP | - | Not available |
| CLI | ✓ | plausible.js |
| SDK | - | REST API only |
Authentication
- Type: Bearer Token
- Header:
Authorization: Bearer {api_key} - Get key: https://plausible.io/settings > API Keys
- Note: Sites API requires Enterprise plan
Common Agent Operations
Stats Query (v2)
bash
POST https://plausible.io/api/v2/query
{
"site_id": "example.com",
"metrics": ["visitors", "pageviews", "bounce_rate", "visit_duration"],
"date_range": "30d"
}Top Pages
bash
POST https://plausible.io/api/v2/query
{
"site_id": "example.com",
"metrics": ["visitors", "pageviews"],
"date_range": "30d",
"dimensions": ["event:page"]
}Traffic Sources
bash
POST https://plausible.io/api/v2/query
{
"site_id": "example.com",
"metrics": ["visitors", "bounce_rate"],
"date_range": "30d",
"dimensions": ["visit:source"]
}Time Series
bash
POST https://plausible.io/api/v2/query
{
"site_id": "example.com",
"metrics": ["visitors", "pageviews"],
"date_range": "30d",
"dimensions": ["time:day"]
}Breakdown by Country
bash
POST https://plausible.io/api/v2/query
{
"site_id": "example.com",
"metrics": ["visitors", "percentage"],
"date_range": "30d",
"dimensions": ["visit:country"]
}Filtered Query (specific page)
bash
POST https://plausible.io/api/v2/query
{
"site_id": "example.com",
"metrics": ["visitors", "pageviews", "bounce_rate"],
"date_range": "30d",
"filters": [["is", "event:page", ["/pricing"]]]
}Realtime Visitors (v1)
bash
GET https://plausible.io/api/v1/stats/realtime/visitors?site_id=example.comList Sites
bash
GET https://plausible.io/api/v1/sitesKey Metrics
Available Metrics
visitors- Unique visitorsvisits- Total visits (sessions)pageviews- Total page viewsviews_per_visit- Pages per sessionbounce_rate- Bounce rate percentagevisit_duration- Average session duration (seconds)events- Total eventsconversion_rate- Goal conversion ratetime_on_page- Average time on pagescroll_depth- Average scroll depthpercentage- Share of total
Available Dimensions
event:page- Page pathevent:goal- Goal namevisit:source- Traffic sourcevisit:referrer- Referrer URLvisit:channel- Traffic channelvisit:utm_source,visit:utm_medium,visit:utm_campaign- UTM paramsvisit:device- Device typevisit:browser- Browser namevisit:os- Operating systemvisit:country,visit:region,visit:city- Locationvisit:entry_page,visit:exit_page- Entry/exit pagestime,time:day,time:week,time:month- Time periods
Parameters
Stats Query (v2)
site_id(required) - Domain registered in Plausiblemetrics(required) - Array of metrics to returndate_range(required) - Time period: "day", "7d", "30d", "month", "6mo", "12mo", "year", or custom ["2024-01-01", "2024-01-31"]dimensions- Array of dimensions to group byfilters- Array of filter conditions:[operator, dimension, values]order_by- Array of sort specs:[[metric, "desc"]]pagination-{ "limit": 100, "offset": 0 }
Filter Operators
is/is_not- Exact matchcontains/contains_not- Substring matchmatches/matches_not- Wildcard match
When to Use
- Privacy-first web analytics without cookies
- Simple, lightweight traffic analysis
- UTM campaign performance tracking
- Goal and conversion tracking
- Geographic and device breakdown
- GDPR/CCPA-compliant analytics alternative to GA4
Rate Limits
- 600 requests/hour per API key
- All requests must be over HTTPS
Relevant Skills
- analytics-tracking
- content-strategy
- programmatic-seo
- page-cro
- utm-tracking