Pulse AI
Pulse AI is BetterMeter's proactive analytics intelligence layer. Instead of waiting for you to check dashboards, Pulse automatically detects anomalies, surfaces insights, scores product health, forecasts trends, and delivers daily or weekly briefings.
Pulse chat uses Google Gemini 3.7 Flash through OpenRouter by default. Self-hosted deployments can override it with PULSE_AI_MODEL.
Capabilities
Ask Anything
A chat assistant docked in the dashboard that queries every metric BetterMeter stores for the site you are viewing — traffic, pages, sources, campaigns, visitors, sessions, events, bots, CLI, MCP, API, rankings and AI mentions — and knows which page you are on
Anomaly Detection
Detects traffic spikes, drops, error rate changes, bot surges, and new referrer sources
Proactive Insights
Surfaces trends, growth opportunities, milestones and shifts in campaigns, channels, geography, conversions and engagement — on the dashboard pages they belong to, before you ask
Health Score
Unified 0-100 score (grade A-F) across traffic, engagement, errors, and growth
Forecasting
Extrapolates traffic and usage trends with confidence intervals
Period Comparison
Deep side-by-side analysis of any two time periods with delta metrics
Briefings
Daily or weekly summaries with key metrics, highlights, and action items
Alert Types
Create monitoring alerts that generate notifications when conditions are met:
traffic_spikeAlert when traffic exceeds a thresholdtraffic_dropAlert when traffic drops below a thresholderror_rateAlert when error rate exceeds a thresholdbot_surgeAlert on unusual bot/crawler activity spikesnew_ai_crawlerAlert when a new AI crawler is detectedperformanceAlert on performance degradationAPI Endpoints
GET /api/pulse/insightsAnomalies, trends, opportunities, milestonesGET /api/pulse/healthProduct health score (0-100) with category breakdownGET /api/pulse/briefingDaily or weekly briefing summaryGET /api/pulse/forecastTraffic/usage forecast with confidence intervalsGET /api/pulse/comparePeriod-over-period deep comparisonGET /api/pulse/alertsList monitoring alert rulesPOST /api/pulse/alertsCreate a new alert ruleDELETE /api/pulse/alertsDelete an alert ruleGET /api/pulse/notificationsGet recent notificationsPATCH /api/pulse/notificationsMark notifications as readPOST /api/pulse/chatAsk Pulse a free-form question, including recent linked conversion journeys (SSE stream, or JSON when Accept is not text/event-stream)CLI Commands
pulse insightsGet proactive insights and anomaliespulse healthProduct health score with gradepulse briefingDaily or weekly briefing (-p/--period daily|weekly)pulse forecastTraffic forecast (-m/--metric, -d/--days)pulse compareCompare two periods (-r/--range, --from2, --to2)pulse alertsList monitoring alertspulse alerts:createCreate alert (-t/--type, -n/--name, -c/--condition)pulse alerts:deleteDelete an alert (-i/--id)pulse askAsk a free-form question, including who completed a goal and the actions that led therepulse notificationsRecent notifications (--unread for unread only)MCP Tools
bettermeter_pulse_askbettermeter_pulse_insightsbettermeter_pulse_healthbettermeter_pulse_briefingbettermeter_pulse_forecastbettermeter_pulse_comparebettermeter_pulse_alerts_listbettermeter_pulse_alerts_createbettermeter_pulse_alerts_deletebettermeter_pulse_notifications