Skip to content
Home › SQL Tools › Best SQL Server Monitoring Tools
Buyer guide

Best SQL Server Monitoring Tools

The free tools built into SQL Server (Query Store, Extended Events, DMVs, Activity Monitor), community scripts, dedicated SQL Server monitors and the platform and cloud options, with what each collects and how it is priced.

Last verified October 2026. Features, editions and pricing change; check each vendor's site before buying.
Short answer

Start with what SQL Server already gives you: Query Store (on by default for new databases from SQL Server 2022) for query and plan history, the system_health Extended Events session for deadlocks and severe errors, and DMVs such as sys.dm_os_wait_stats, with the free First Responder Kit and sp_WhoIsActive scripts on top. When you need continuous history, alerting and an estate view, buy a dedicated monitor: Redgate Monitor if you also look after PostgreSQL, Oracle, MySQL or MongoDB, SolarWinds SQL Sentry or Idera SQL Diagnostic Manager for SQL Server depth, SolarWinds DPA for wait-time analysis across several engines. If developers already live in Datadog, its Database Monitoring links queries to traces. On Azure SQL, try database watcher (preview); on RDS for SQL Server, CloudWatch Database Insights.

How we know: This guide is research-based: built-in features were checked against Microsoft Learn, and product features, supported platforms, licensing and pricing against each vendor's official pages and documentation on 7 October 2026. We have not installed these tools or measured their overhead on a SQL Server instance, and no vendor paid for inclusion.

SQL Server exposes more monitoring data than most engines, and every commercial tool on this page is built on it. Dynamic management views (DMVs) give live and cumulative state: waits, sessions and requests, cached query statistics, file I/O, memory. Query Store, available since SQL Server 2016 and enabled by default in READ_WRITE mode for new databases from SQL Server 2022 (and in Azure SQL Database and Managed Instance), keeps a per-database history of queries, plans, runtime statistics and, from SQL Server 2017, wait statistics, and can force a previous plan. Extended Events is the event tracing framework; its built-in system_health session starts automatically and records deadlock graphs, errors of severity 20 or higher, long lock and latch waits and other diagnostics.

What the built-ins lack is continuous collection across many instances, long retention outside the monitored server, baselines, alert routing and a single view of an estate. That gap is what the dedicated tools sell. For the cross-engine picture see the best database monitoring tools; to tune what you find, see the performance tuning lessons, SQL indexes and the deadlock error 1205 page.

Quick picks

Best free baseline

Built in, on by default for new databases from SQL Server 2022, with plan history and plan forcing.

Best free scripts

MIT and GPLv3 stored procedures for health checks, plan cache analysis, deadlocks and live activity.

Best for mixed estates

Agentless SQL Server monitoring that also covers PostgreSQL, Oracle, MySQL and MongoDB, self-hosted or SaaS.

Best SQL Server depth

SQL Server, Azure SQL and SSAS monitoring with deadlock, blocking, TempDB and job calendar views.

Best for Azure SQL

Managed collection from more than 70 DMVs and catalog views, with no charge per monitored database (preview).

How we chose

We considered SQL Server's built-in tools (Query Store, Extended Events, DMVs and Activity Monitor in SSMS), free community scripts (First Responder Kit, sp_WhoIsActive), dedicated monitors (Redgate Monitor, SolarWinds SQL Sentry, SolarWinds Database Performance Analyzer, Idera SQL Diagnostic Manager, Quest Spotlight on SQL Server Enterprise), observability platforms (Datadog Database Monitoring, New Relic, Dynatrace, Zabbix templates, Prometheus exporters) and the cloud tools for managed SQL Server (Azure SQL database watcher, CloudWatch Database Insights, Cloud SQL Query Insights).

To be listed, a product had to support SQL Server in October 2026 and document what it collects and how it is deployed and licensed. Quest Spotlight on SQL Server Enterprise is still supported by Quest, but we could not read enough of its current product pages to verify its details, so it is not an entry. New Relic and Dynatrace are covered in the hub guide; Zabbix and Prometheus in the open source guide.

The order is not a ranking: the built-in baseline comes first, then free scripts, dedicated monitors, a platform option and cloud tools. Prices are quoted only where the vendor publishes them, as one dated example.

At a glance

ToolTypeEnginesDeploymentPricing modelMain trade-off
Query StoreBuilt inSQL Server 2016+, Azure SQL, Fabric SQL databasePer database, inside the engineIncludedPer database; no estate view or alert routing
Extended EventsBuilt inSQL Server, Azure SQL Managed Instance (Azure SQL Database: own sessions)Inside the engineIncludedRaw events; analysis is up to you
DMVsBuilt inSQL Server, Azure SQLInside the engineIncludedMostly cumulative or point in time; no history
Activity Monitor (SSMS)Built inSQL ServerWindows client (SSMS)FreeLive view only; no history or alerts
First Responder Kit and sp_WhoIsActiveFree scriptsSQL Server, RDS; partial on Azure SQL DatabaseStored procedures you installFree (MIT; GPLv3)On-demand diagnosis, not monitoring
Redgate MonitorDedicated monitorSQL Server, PostgreSQL, Oracle, MySQL, MongoDBSelf-hosted (agentless) or SaaSPer server licence, subscriptionNo public prices
SolarWinds SQL SentryDedicated monitorSQL Server, Azure SQL, SSASSelf-hosted, agentless; Windows service plus SQL Server repositoryPer monitored target, subscriptionRepository and services to maintain
SolarWinds DPADedicated monitor (wait-time analysis)SQL Server, Oracle, MySQL, MariaDB, PostgreSQL, Db2 and othersSelf-hosted, agentlessPer instance, subscriptionLess SQL Server estate detail than SQL Sentry (editorial)
Idera SQL Diagnostic ManagerDedicated monitorSQL Server, Azure SQL, RDS for SQL ServerSelf-hosted, agentlessPer instance, subscriptionSQL Server only; no public prices
Datadog Database MonitoringObservability platform moduleSQL Server and seven other enginesSaaS; Datadog AgentPer database host per monthFewer DBA estate features; SaaS only
Azure SQL database watcherCloud-native (preview)Azure SQL Database, Azure SQL Managed InstanceAzure managedWatcher free; pay for data storePreview; Azure SQL only
CloudWatch Database InsightsCloud-nativeRDS for SQL Server and other RDS and Aurora enginesAWS managedStandard free to 7 days; Advanced paidAWS only; plans need Advanced

Query Store

Free (built in) SQL Server 2016 and later, Azure SQL Database, Azure SQL Managed Instance, Fabric SQL database Best for: Finding regressed queries and forcing a known good plan

Query Store captures a history of queries, their plans, runtime statistics and (from SQL Server 2017) wait statistics per database, aggregated in time windows. Microsoft states it is enabled by default in READ_WRITE mode for new databases from SQL Server 2022 and for new Azure SQL Database and Managed Instance databases, but not on SQL Server 2016 to 2019. SSMS has built-in reports such as Regressed Queries and Query Wait Statistics, and you can force a previous plan without changing code. SQL Server 2025 adds Query Store for secondary replicas.

Query it directly from its catalog views (example in the closing section), or let a monitoring tool read it.

Limitations
  • Per database: there is no cross-instance view, and it cannot be enabled for master or tempdb.
  • No alerting; you must look at it or have a tool read it.
  • Needs sizing and capture settings tuned to the workload, as Microsoft's best practice guidance describes.

Official site

Extended Events and the system_health session

Free (built in) SQL Server, Azure SQL Managed Instance; Azure SQL Database with your own sessions Best for: Deadlock graphs, errors and targeted event capture

Extended Events is SQL Server's tracing framework. The system_health session starts with the engine and records, among other things, every detected deadlock with its graph, sessions hitting errors of severity 20 or higher or memory errors, lock waits over 30 seconds and latch waits over 15 seconds. It writes to a ring buffer and to event files (5 MB by 4 files, or 100 MB by 10 files on Standard and Enterprise). You can create your own sessions for slow queries or specific waits, and view the data in SSMS.

Azure SQL Database has no built-in system_health session; you create sessions that write to Azure Storage. See the error 1205 deadlock page for working with deadlock graphs.

Limitations
  • Data is raw XML events; turning it into trends or alerts is your job.
  • system_health files roll over, so older events are lost unless you copy them.
  • Badly scoped custom sessions can capture far more than intended (editorial).

Official site

DMVs and Activity Monitor

Free (built in) SQL Server, Azure SQL; Activity Monitor in SSMS on Windows Best for: Live troubleshooting and ad hoc queries

Dynamic management views such as sys.dm_os_wait_stats, sys.dm_exec_requests, sys.dm_exec_sessions and sys.dm_exec_query_stats are the raw material of every monitor. sys.dm_os_wait_stats, for example, is cumulative since the last restart or since it was cleared with DBCC SQLPERF, and needs VIEW SERVER PERFORMANCE STATE on SQL Server 2022 and later (VIEW SERVER STATE on earlier versions).

Activity Monitor in SSMS (Ctrl+Alt+A) presents some of them as Overview, Processes, Resource Waits, Data File I/O, Recent Expensive Queries and Active Expensive Queries panes. It needs VIEW SERVER STATE and shows only what is happening while it is open.

Limitations
  • Cumulative counters need snapshots and differences to show what changed.
  • Nothing is kept after a restart, and there is no alerting.
  • Activity Monitor is a live view in a Windows client only.

Official site

First Responder Kit and sp_WhoIsActive

Free (open source) SQL Server on Windows and Linux, Amazon RDS; limited on Azure SQL Database Best for: Fast diagnosis during an incident

The SQL Server First Responder Kit (MIT licence) is a set of stored procedures: sp_Blitz for health checks, sp_BlitzFirst for what is happening now, sp_BlitzCache for expensive plans in cache, sp_BlitzIndex for index analysis, sp_BlitzWho for running queries and sp_BlitzLock for deadlocks. It supports the SQL Server versions Microsoft supports, on Windows and Linux and on Amazon RDS, with limited support for Azure SQL Database.

sp_WhoIsActive (GPLv3) is a single procedure that shows active sessions with their SQL, waits, blocking and resource use. Both are on-demand tools: some teams schedule them to log to tables, which turns them into a basic home-made monitor.

Limitations
  • Not monitoring: no continuous collection, dashboards or alerts unless you build them.
  • Installed into your instances, which some change-control policies restrict.
  • Community support only.

Official site

Redgate Monitor

Paid (per server subscription); 14-day trial Self-hosted or SaaS Best for: SQL Server estates that also include other engines

Redgate Monitor (formerly SQL Monitor; 14.34.0 when checked) lists SQL Server, PostgreSQL, Oracle, MySQL and MongoDB support and comes in Standard and Enterprise editions, self-hosted or SaaS. Self-hosted, it is agentless: a Base Monitor connects through WMI or SSH and T-SQL and writes to a SQL Server or PostgreSQL with TimescaleDB repository. It covers performance and query analysis, alerting (with Splunk, ServiceNow and webhook integrations) and estate information such as versions, patches, disk use and backups.

Licensing is per server, with one licence covering five Azure SQL databases according to Redgate; prices are by quote. See Redgate Monitor vs SQL Sentry, Redgate Monitor vs SolarWinds DPA and Redgate alternatives.

Limitations
  • No public prices.
  • Self-hosted needs a Base Monitor host and repository database.
  • Non-SQL Server engines may not have every SQL Server feature; check in a trial (editorial).

Official site

SolarWinds SQL Sentry

Paid (subscription, per monitored target); 14-day trial Self-hosted (Windows) Best for: DBAs who want deep SQL Server, Azure SQL and SSAS detail

SolarWinds SQL Sentry (from the SentryOne acquisition) monitors SQL Server (version 2026.3 supports SQL Server 2017 to 2025), SQL Server on Amazon RDS and EC2, Azure SQL Database, Azure SQL Managed Instance and Analysis Services. SolarWinds lists deadlock analysis, blocking, TempDB monitoring, query and index analysis, an event calendar for jobs and storage forecasting.

Its documentation describes an agentless design: monitoring services (one for roughly 50 to 100 targets) poll the servers and write to a SQL Server repository, read through a Windows client or optional portal. It is licensed per monitored target; from 2024.4 the Database Self Hosted licence can be shared with DPA. See SQL Sentry vs SolarWinds DPA and SQL Sentry alternatives.

Limitations
  • SQL Server family only.
  • Windows monitoring services and a SQL Server repository to size and maintain.
  • No public prices.

Official site

SolarWinds Database Performance Analyzer

Paid (subscription, per instance); 14-day trial Self-hosted Best for: Wait-time analysis when SQL Server sits beside Oracle or other engines

DPA focuses on wait-time analysis: which statements wait, on what, and for how long. Beyond SQL Server and Azure SQL it supports Oracle, MySQL, MariaDB, PostgreSQL, SAP HANA, IBM Db2 and SAP ASE, agentlessly, with anomaly detection, tuning advisors and VMware correlation. Licences (Database Self-Hosted, and a DBaaS variant for services such as Azure SQL Database) float between instances.

See Datadog vs SolarWinds DPA and SolarWinds DPA alternatives.

Limitations
  • No public prices.
  • Less SQL Server estate detail (jobs, inventory) than SQL Server specialists (editorial).
  • Overlaps with SQL Sentry, so SolarWinds customers need to choose between them.

Official site

Idera SQL Diagnostic Manager

Paid (per instance subscription); 14-day trial Self-hosted (Windows) Best for: Agentless SQL Server monitoring with a customer-owned repository

Idera describes SQL Diagnostic Manager as agentless monitoring for SQL Server on premises, Azure SQL Database and Managed Instance, Amazon RDS for SQL Server, Google Cloud and VMware or Hyper-V hosts. It lists adaptive baselines, wait statistics by dimension, deadlock visualisation, live sessions, forecasting and query tuning. Pricing is per instance on subscription with no per-gigabyte ingest fees, and the customer owns the monitoring repository.

Limitations
  • SQL Server only.
  • No public prices.
  • Self-hosted infrastructure to maintain.

Official site

Datadog Database Monitoring

Paid (per database host) SaaS; Datadog Agent Best for: Developer and SRE teams already using Datadog APM

Datadog Database Monitoring supports self-hosted SQL Server and managed services such as Amazon RDS and Azure, collecting normalised query metrics, query samples and explain plans through the Datadog Agent, alongside seven other engines. As listed on Datadog's pricing list on 7 October 2026, it costs USD 70 per database host per month billed annually (USD 84 on demand).

See Datadog vs Redgate Monitor and database monitoring vs APM.

Limitations
  • SaaS only.
  • Fewer SQL Server DBA features (Agent jobs, backups, estate inventory) than dedicated monitors (editorial).
  • Cost is per host on top of other Datadog products.

Official site

Azure SQL database watcher

Watcher free; pay for the data store Azure Best for: Azure SQL Database and Managed Instance

Database watcher, in preview when checked, collects from more than 70 DMVs and catalog views into Azure Data Explorer or Real-Time Analytics in Fabric, with estate and per-resource dashboards (top queries, waits, sessions, index metadata, SQL Agent jobs on Managed Instance, backups) and Azure Monitor alert templates. Microsoft charges nothing for the watcher, dashboards or per monitored database; you pay for the data store and alerts. Up to 100 targets per watcher.

See Azure SQL Database vs SQL Server.

Limitations
  • Preview, with no SLA.
  • Does not monitor SQL Server on your own machines or VMs.
  • Alerts are not available with a free Azure Data Explorer cluster or a Fabric data store.

Official site

Amazon CloudWatch Database Insights

Standard mode free (7 days); Advanced mode paid AWS Best for: Amazon RDS for SQL Server

Database Insights replaced Performance Insights, which AWS states reached end of life on 31 July 2026. For RDS for SQL Server it shows database load by waits, SQL, hosts and users; Standard mode is on by default with 7 days free, and Advanced mode adds per-query statistics, execution plan analysis for RDS for SQL Server, slow query analysis and fleet views. Google offers a similar free tool, Query Insights, for Cloud SQL for SQL Server.

Limitations
  • AWS only.
  • Execution plans require Advanced mode.
  • Less SQL Server-specific depth than a dedicated monitor (editorial).

Official site

Start with the baseline queries

Before buying a tool, run the queries it would run. This T-SQL (SQL Server 2016 and later, Azure SQL) lists the top cumulative waits since the last restart, excluding a few idle waits. Treat it as a starting point: real scripts filter many more benign wait types, and you compare two snapshots to see what changed.

-- T-SQL: top waits since restart (needs VIEW SERVER PERFORMANCE STATE on 2022+)
SELECT TOP (10)
       wait_type,
       waiting_tasks_count,
       wait_time_ms,
       signal_wait_time_ms
FROM sys.dm_os_wait_stats
WHERE waiting_tasks_count > 0
  AND wait_type NOT IN (N'SLEEP_TASK', N'LAZYWRITER_SLEEP', N'BROKER_TASK_STOP',
                        N'XE_TIMER_EVENT', N'REQUEST_FOR_DEADLOCK_SEARCH',
                        N'SQLTRACE_INCREMENTAL_FLUSH_SLEEP', N'CHECKPOINT_QUEUE')
ORDER BY wait_time_ms DESC;

And this one reads Query Store in the current database for the plans with the highest average duration (avg_duration is in microseconds, and each row covers one plan in one collection interval):

-- T-SQL: slowest plans recorded by Query Store
SELECT TOP (10)
       q.query_id,
       p.plan_id,
       rs.count_executions,
       rs.avg_duration,
       qt.query_sql_text
FROM sys.query_store_runtime_stats AS rs
JOIN sys.query_store_plan AS p ON p.plan_id = rs.plan_id
JOIN sys.query_store_query AS q ON q.query_id = p.query_id
JOIN sys.query_store_query_text AS qt ON qt.query_text_id = q.query_text_id
ORDER BY rs.avg_duration DESC;

If a handful of instances and these queries (plus the First Responder Kit) answer your questions, you may not need a product. Buy one when you need history kept off the server, baselines and alerts that wake the right person, and an estate view: Redgate Monitor for mixed engines and SaaS choice, SQL Sentry or SQL Diagnostic Manager for SQL Server depth, DPA for wait analysis across engines, Datadog when application traces matter most. Trial on your busiest instance and ask each vendor what its collection queries do.

Frequently asked questions

Is Query Store enabled by default?

For new databases from SQL Server 2022 (16.x), yes, in READ_WRITE mode, and for new Azure SQL Database and Managed Instance databases. On SQL Server 2016, 2017 and 2019 you enable it with ALTER DATABASE ... SET QUERY_STORE = ON. It cannot be enabled for master or tempdb.

What is the best free SQL Server monitoring tool?

The built-in set: Query Store, the system_health Extended Events session and DMVs, with the free First Responder Kit (MIT) and sp_WhoIsActive (GPLv3) for diagnosis. For continuous free monitoring, Zabbix has official SQL Server templates and Prometheus can use sql_exporter. See open source database monitoring tools.

Is SQL Sentry the same as SolarWinds DPA?

No. Both are SolarWinds products. SQL Sentry is SQL Server specific (including Azure SQL and SSAS); DPA does wait-time analysis across many engines. Since 2024.4 they share a licence type, so one key can be split between them. See SQL Sentry vs SolarWinds DPA.

Does Activity Monitor keep history?

No. Activity Monitor in SSMS shows live data while it is open (processes, resource waits, file I/O and expensive queries). For history use Query Store or a monitoring tool.

How do I find deadlocks in SQL Server?

The system_health Extended Events session records detected deadlocks with their graphs by default. Most monitoring tools read and display them. See the error 1205 page for causes and fixes.

What do I use to monitor Azure SQL Database?

Query Store is on by default, and Microsoft offers database watcher (in preview) for estate dashboards. Commercial monitors such as SQL Sentry, Redgate Monitor, DPA, SQL Diagnostic Manager and Datadog also support Azure SQL.

Sources

Checked October 2026.

How we research these guides: our editorial method.

Compare your options

Browse the full tools directory or the head to head comparisons.