Better Stack
Unclaimed verified 10 aug 2026The AI SRE observability stack
TL;DR
Better Stack is a unified observability platform that integrates logs, metrics, traces, and incident management into a single, developer-friendly interface. It targets engineering teams looking to replace fragmented tools like PagerDuty, Datadog, and Loggly with a cost-effective, AI-native alternative. Its key differentiator is the AI SRE assistant and MCP server, which allow AI agents to query and triage production data directly in natural language.
What Users Actually Pay
No user-reported pricing yet.
Our Take
Better Stack has successfully disrupted the mid-market observability space by positioning itself as the high-performance, low-cost successor to legacy giants. By unifying disparate monitoring pillars (Uptime, Logs, On-call) into a single SQL-powered backend, it eliminates the 'context-switching tax' that plagues traditional DevOps teams. Its pivot toward 'AI SRE' is particularly timely; unlike many competitors who simply bolt on a chatbot, Better Stack’s MCP server and eBPF-based instrumentation provide the structural foundation for truly autonomous incident resolution. While the platform excels at cloud-native monitoring and developer experience, it still has minor gaps compared to Datadog's massive enterprise ecosystem. Specialized modules like Cloud SIEM and deep, code-level profiling for legacy monolithic architectures are where the incumbents still hold an edge. However, for 90% of scaling tech companies, Better Stack offers a vastly superior ROI and a much cleaner operational workflow. Ultimately, Better Stack is best suited for startups and mid-size engineering organizations that value speed and simplicity. The freemium model and 'zero-code' eBPF setup make it a low-risk entry point for teams outgrowing basic uptime monitors. As they continue to expand their OpenTelemetry and APM depth, they are rapidly becoming a credible threat to the observability establishment.
Alternatives
Ranked by Revuo score — paid tiers never affect order.Pros
- + Unified interface combining uptime, logs, and incident management in one place.
- + Blazing-fast SQL-based log querying powered by a ClickHouse-based architecture.
- + Modern, intuitive UI/UX that significantly reduces onboarding time for new engineers.
- + Aggressive, transparent pricing that can be up to 95% cheaper than Datadog.
- + Native MCP server support allowing AI agents to perform root cause analysis directly.
Cons
- - APM and distributed tracing depth is still catching up to enterprise incumbents.
- - Customization of reporting and complex dashboards can be restrictive for legacy needs.
- - AI token usage pricing can be difficult to predict for high-volume incident environments.
- - Mobile app functionality is somewhat limited compared to the desktop experience.
Agent Readiness
72/100Better Stack is a top-tier platform for autonomous AI agents. It provides a robust REST API and a native MCP (Model Context Protocol) server, enabling LLMs like Claude and Cursor to natively query logs, check monitor health, and manage incidents. With built-in nodes for n8n and official support for Terraform, it is built for programmatic control and automated SRE workflows.
Last checked Jul 14, 2026
MCP Integrations
1 server75 tools126 total usesMonitor system availability, manage incident response workflows, and query telemetry data via SQL. Visualize logs, traces, and metrics with custom dashboards and interactive charts. Automate on-call scheduling and status page updates to keep teams informed during outages.
75 tools
telemetry_queryExecute a ClickHouse SQL query to retrieve logs, traces/spans, errors, and metrics from telemetry data. - **IMPORANT**: Use `telemetry_get_query_instructions_tool` to get instructions on how to create the correct query for logs and spans - **IMPORANT**: Use `telemetry_get_errors_query_instructions_tool` to get instructions on how to create the correct query for errors - **IMPORANT**: Use `telemetry_get_metrics_query_instructions_tool` to get instructions on how to create the correct query for metricstelemetry_chartExecute a ClickHouse SQL query and display the result as a line chart. Query instructions (column aliases, time granularity, data access patterns) are in: - `telemetry_get_query_instructions_tool` — logs and spans - `telemetry_get_errors_query_instructions_tool` — errors - `telemetry_get_metrics_query_instructions_tool` — metricsuptime_acknowledge_incident_toolAcknowledge an ongoing incidentuptime_create_incident_comment_toolCreate a comment on an incidentuptime_create_incident_toolCreate a new incident providing a summary of the issue, requester email, and other optional detailsuptime_escalate_incident_toolEscalate an ongoing incident to a user, team, schedule, or policyuptime_get_incident_comments_toolGet comments for an incidentuptime_get_incident_toolGet detailed information about a specific incidentuptime_get_incident_escalation_options_toolGet available escalation options for an incidentuptime_get_incident_timeline_toolGet the timeline of events for an incidentuptime_list_incidents_toolList incidents with filtering and pagination optionsuptime_resolve_incident_toolResolve an ongoing incidentuptime_get_escalation_policy_toolGet detailed information about a specific escalation policyuptime_get_severity_toolGet detailed information about a specific severity (urgency level)uptime_list_escalation_policies_toolList all escalation policies with their steps and configurationuptime_list_severities_toolList all severities (urgency levels) with their notification settingsuptime_get_monitor_availability_toolGet availability (SLA) summary for a specific monitoruptime_get_monitor_toolGet details of a specific monitoruptime_get_monitor_response_times_toolGet response time metrics for a specific monitoruptime_list_monitors_toolList monitors with optional filtering and paginationuptime_get_heartbeat_availability_toolGet availability summary for a specific heartbeatuptime_get_heartbeat_toolGet details of a specific heartbeatuptime_list_heartbeats_toolList all heartbeats with filtering and pagination optionsuptime_get_on_call_toolGet detailed information about a specific on-call calendar or the default calendaruptime_get_on_call_event_toolGet detailed information about a specific on-call eventuptime_get_on_call_rotation_toolGet on-call rotation configuration for a specific calendaruptime_list_on_call_events_toolList all on-call schedule events for a specific calendaruptime_list_on_calls_toolList all on-call calendars for the teamuptime_create_status_page_report_toolCreate a new status page reportuptime_create_status_page_report_update_toolCreate a new status update for an existing status page reportuptime_get_status_page_toolGet details of a specific status pageuptime_get_status_page_resources_toolGet resources (monitors/heartbeats) for a specific status pageuptime_get_status_page_report_update_toolGet details of a specific status page report updateuptime_list_status_page_reports_toolList status reports (incidents/maintenance) for a specific status pageuptime_list_status_pages_toolList all status pages with filtering and pagination optionsuptime_list_status_page_report_updates_toolList status updates for a specific status reporttelemetry_add_chart_to_dashboard_toolAdd a new chart to a dashboard. Use the `section` parameter to organize charts into named sections — sections are auto-created if they don't exist, and charts are auto-positioned within them. **IMPORTANT: Follow this workflow:** 1) Call get_chart_building_instructions first for chart type, unit, and settings reference. 2) If you haven't already verified the query by previewing with `telemetry_chart` (which runs the query and reports errors automatically), test it with `telemetry_query` first. The SQL query should use variables like {{source}}, {{start_time}}, {{end_time}}, and {{time}} for proper integration with dashboard filterstelemetry_add_dashboard_section_toolAdd a section divider to a dashboard. Sections span the full width and help organize charts into groups. Charts and sections at or below the insertion point are shifted down to make roomtelemetry_build_explore_query_toolGenerates a ClickHouse SQL query from natural language for exploring logs and spans data in Better Stack. The query is specifically formatted for use in the Better Stack Explore page UI. **Note**: The generated query uses Better Stack's query syntax and will not work directly in raw ClickHouse.telemetry_build_metric_query_toolGenerates a ClickHouse SQL query from natural language for creating metrics visualizations in Better Stack Dashboards. Returns a query optimized for charts and dashboards that can be directly used in the Dashboard builder UI. **Note**: The generated query uses Better Stack's query syntax and will not work directly in raw ClickHouse.telemetry_create_application_toolCreate a new application in Better Stack. Returns the created application details including ID, ingestion token, ingesting host URL, retention settings, and platform-specific integration documentation links with next steps for configurationtelemetry_create_cloud_connection_toolCreate a secure cloud connection for direct ClickHouse query access to logs, spans, and metrics data. Returns connection credentials (host, port, username, password), sample queries for each data type, and cURL command examples. Connections expire after 1 hour by defaulttelemetry_create_dashboard_toolCreate a new dashboard. Optionally use a template to start with pre-configured charts. Call get_chart_building_instructions for guidance on dashboard structure and layout. Optionally specify a source_id to preconfigure the dashboard with that source. Returns the new dashboard ID which can be used with add_chart_to_dashboard to add chartstelemetry_create_source_toolCreate a new log source in Better Stack. Returns the created source details including ID, ingestion token, ingesting host URL, retention settings, and platform-specific integration documentation links with next steps for configurationtelemetry_edit_chart_toolEdit an existing chart name, query, type, or settings. Only provide the fields you want to change. **IMPORTANT: If changing the query:** If you haven't already verified the new query by previewing with `telemetry_chart` (which runs the query and reports errors automatically), test it with `telemetry_query` first before updating the chart. Call get_chart_building_instructions for chart type and settings reference. Use get_dashboard_details first to find the chart IDtelemetry_export_dashboard_toolExport a dashboard configuration as JSON. Returns the complete dashboard data structure including charts, sections, presets, and settingstelemetry_get_application_details_toolGet comprehensive details of a specific application including its configuration, retention settings, ingestion details, custom bucket settings (if configured)telemetry_get_chart_building_instructions_toolGet comprehensive instructions for building charts and dashboards, including chart types, units, axis settings, column mapping, legend placement, layout tips, and common mistakes. Call this before creating or editing chartstelemetry_get_chart_details_toolGet detailed information about a specific chart including its SQL queries, configuration, and settings. Use get_dashboard_details first to find the chart IDtelemetry_get_dashboard_details_toolGet detailed information about a specific dashboard including its charts, sections, layout, and configuration. Use this to understand a dashboard structure before modifying ittelemetry_get_error_details_toolGet comprehensive details of a specific error including its type, message, call site information, first occurrence, and current state (unhandled, unresolved, ignored, resolved, or reoccurred)telemetry_get_errors_query_instructions_toolGet comprehensive instructions for building SQL ClickHouse queries for error tracking, including both error patterns (metrics) and individual exceptions. Explains when to use each source and provides examples for common use casestelemetry_get_metric_details_toolGet comprehensive details about a specific metric. Returns metric overview (data points, active series, available aggregations), definition (SQL expression or JSON path), example queries for different aggregation functions, and Prometheus tags (for pure metrics). Essential for understanding how to query and use a metrictelemetry_get_metric_query_instructions_toolGet instructions for building SQL ClickHouse queries for metrics, including available metrics, aggregations, and examplestelemetry_get_metrics_and_cardinality_toolGet complete metrics and cardinality for a source. Returns a table of all available metrics (pure and computed) with their names, types, data points count, and active series counttelemetry_get_query_instructions_toolGet instruction for building SQL ClickHouse queries, including fields, aggregations, and examples, that can be used for running queries using direct connections to the ClickHouse proxytelemetry_get_replays_query_instructions_toolGet comprehensive instructions for building SQL ClickHouse queries for session replays. Explains data structure, provides examples for listing replays, finding replays linked to errors, and filtering by user/environmenttelemetry_get_source_details_toolGet comprehensive details of a specific source including its configuration, retention settings, ingestion details, custom bucket settings (if configured)telemetry_get_source_fields_toolGet complete field catalog for a logs or spans source. Returns a table of all queryable fields with their paths and data types. Essential for understanding what fields can be queried for building custom queriestelemetry_import_dashboard_toolImport a dashboard from JSON configuration. Creates a new dashboard with the provided data structuretelemetry_list_applications_toolList all available applications in a paginated table format. Returns application ID, name, platform type, team, status (active/paused), data region, and creation datetelemetry_list_clusters_toolList all available storage clusters for a specific team. Returns a table with cluster IDs, names, and regions. Used primarily for creating cloud connections to query logs and metrics data directly via ClickHousetelemetry_list_dashboard_templates_toolList all available dashboard templates in a paginated table format. Returns template ID, name, description, and other metadatatelemetry_list_dashboards_toolList all available dashboards in a paginated table format. Returns dashboard ID, name, creation date, and last updated datetelemetry_list_data_regions_toolList all available data regions and clusters for application and source creation. Returns a table with region IDs (to use when creating applications or sources), display names, types (Region or Cluster), and geographical locations. Includes usage instructions for both standard regions and custom clusterstelemetry_list_releases_toolList all releases for a specific application in a paginated table format. Returns release reference, environments, first seen, and last seen timestampstelemetry_list_sources_toolList all available sources in a paginated table format. Returns source ID, name, platform type, team, status (active/paused), data region, and creation datetelemetry_list_teams_toolList all available teams in Better Stack Logs. Returns a table with team IDs and names, grouped by organizationtelemetry_move_charts_toolMove one or more charts to new positions on a dashboard. Validates the final layout for overlaps, allowing swaps and complex rearrangements. All moves are applied atomically - if any move is invalid, none are applied. Grid is 12 columns widetelemetry_remove_chart_toolRemove a chart from its dashboard permanently. This action cannot be undone and will also remove any alerts associated with the chart. Use get_dashboard_details first to find the chart IDtelemetry_remove_dashboard_section_toolRemove a section divider from a dashboard permanently. This action cannot be undone. Charts are not affected - only the section header is removed. Use get_dashboard_details first to find the section IDtelemetry_remove_dashboard_toolRemove a dashboard permanently. This action cannot be undonetelemetry_rename_dashboard_toolRename an existing dashboardtelemetry_update_error_state_toolUpdate the state of a specific error (mark as resolved, ignored, or unresolved)better_stack_search_documentation_toolSearch for relevant documentation articles and return their contents
Last checked Aug 3, 2026
Compare With
Reviews
No reviews yet. Be the first to review Better Stack!