The only agent that thinks for itself

Autonomous Monitoring with self-learning AI built-in, operating independently across your entire stack.

Unlimited Metrics & Logs
Machine learning & MCP
5% CPU, 150MB RAM
3GB disk, >1 year retention
800+ integrations, zero config
Dashboards, alerts out of the box
> Discover Netdata Agents
Centralized metrics streaming and storage

Aggregate metrics from multiple agents into centralized Parent nodes for unified monitoring across your infrastructure.

Stream from unlimited agents
Long-term data retention
High availability clustering
Data replication & backup
Scalable architecture
Enterprise-grade security
> Learn about Parents
Fully managed cloud platform

Access your monitoring data from anywhere with our SaaS platform. No infrastructure to manage, automatic updates, and global availability.

Zero infrastructure management
99.9% uptime SLA
Global data centers
Automatic updates & patches
Enterprise SSO & RBAC
SOC2 & ISO certified
> Explore Netdata Cloud
Deploy Netdata Cloud in your infrastructure

Run the full Netdata Cloud platform on-premises for complete data sovereignty and compliance with your security policies.

Complete data sovereignty
Air-gapped deployment
Custom compliance controls
Private network integration
Dedicated support team
Kubernetes & Docker support
> Learn about Cloud On-Premises
Powerful, intuitive monitoring interface

Modern, responsive UI built for real-time troubleshooting with customizable dashboards and advanced visualization capabilities.

Real-time chart updates
Customizable dashboards
Dark & light themes
Advanced filtering & search
Responsive on all devices
Collaboration features
> Explore Netdata UI
Monitor on the go

Native iOS and Android apps bring full monitoring capabilities to your mobile device with real-time alerts and notifications.

iOS & Android apps
Push notifications
Touch-optimized interface
Offline data access
Biometric authentication
Widget support
> Download apps

Best energy efficiency

True real-time per-second

100% automated zero config

Centralized observability

Multi-year retention

High availability built-in

Zero maintenance

Always up-to-date

Enterprise security

Complete data control

Air-gap ready

Compliance certified

Millisecond responsiveness

Infinite zoom & pan

Works on any device

Native performance

Instant alerts

Monitor anywhere

80% Faster Incident Resolution
AI-powered troubleshooting from detection, to root cause and blast radius identification, to reporting.
True Real-Time and Simple, even at Scale
Linearly and infinitely scalable full-stack observability, that can be deployed even mid-crisis.
90% Cost Reduction, Full Fidelity
Instead of centralizing the data, Netdata distributes the code, eliminating pipelines and complexity.
Control Without Surrender
SOC 2 Type 2 certified with every metric kept on your infrastructure.
Integrations

800+ collectors and notification channels, auto-discovered and ready out of the box.

800+ data collectors
Auto-discovery & zero config
Cloud, infra, app protocols
Notifications out of the box
> Explore integrations
Real Results
46% Cost Reduction

Reduced monitoring costs by 46% while cutting staff overhead by 67%.

— Leonardo Antunez, Codyas

Zero Pipeline

No data shipping. No central storage costs. Query at the edge.

From Our Users
"Out-of-the-Box"

So many out-of-the-box features! I mostly don't have to develop anything.

— Simon Beginn, LANCOM Systems

No Query Language

Point-and-click troubleshooting. No PromQL, no LogQL, no learning curve.

Enterprise Ready
67% Less Staff, 46% Cost Cut

Enterprise efficiency without enterprise complexity—real ROI from day one.

— Leonardo Antunez, Codyas

SOC 2 Type 2 Certified

Zero data egress. Only metadata reaches the cloud. Your metrics stay on your infrastructure.

Full Coverage
800+ Collectors

Auto-discovered and configured. No manual setup required.

Any Notification Channel

Slack, PagerDuty, Teams, email, webhooks—all built-in.

From Our Users
"A Rare Unicorn"

Netdata gives more than you invest in it. A rare unicorn that obeys the Pareto rule.

— Eduard Porquet Mateu, TMB Barcelona

99% Downtime Reduction

Reduced website downtime by 99% and cloud bill by 30% using Netdata alerts.

— Falkland Islands Government

Real Savings
30% Cloud Cost Reduction

Optimized resource allocation based on Netdata alerts cut cloud spending by 30%.

— Falkland Islands Government

46% Cost Cut

Reduced monitoring staff by 67% while cutting operational costs by 46%.

— Codyas

Real Coverage
"Plugin for Everything"

Netdata has agent capacity or a plugin for everything, including Windows and Kubernetes.

— Eduard Porquet Mateu, TMB Barcelona

"Out-of-the-Box"

So many out-of-the-box features! I mostly don't have to develop anything.

— Simon Beginn, LANCOM Systems

Real Speed
Troubleshooting in 30 Seconds

From 2-3 minutes to 30 seconds—instant visibility into any node issue.

— Matthew Artist, Nodecraft

20% Downtime Reduction

20% less downtime and 40% budget optimization from out-of-the-box monitoring.

— Simon Beginn, LANCOM Systems

Pay per Node. Unlimited Everything Else.

One price per node. Unlimited metrics, logs, users, and retention. No per-GB surprises.

Free tier—forever
No metric limits or caps
Retention you control
Cancel anytime
> See pricing plans
What's Your Monitoring Really Costing You?

Most teams overpay by 40-60%. Let's find out why.

Expose hidden metric charges
Calculate tool consolidation
Customers report 30-67% savings
Results in under 60 seconds
> See what you're really paying
Your Infrastructure Is Unique. Let's Talk.

Because monitoring 10 nodes is different from monitoring 10,000.

On-prem & air-gapped deployment
Volume pricing & agreements
Architecture review for your scale
Compliance & security support
> Start a conversation
Monitoring That Sells Itself

Deploy in minutes. Impress clients in hours. Earn recurring revenue for years.

30-second live demos close deals
Zero config = zero support burden
Competitive margins & deal protection
Response in 48 hours
> Apply to partner
Per-Second Metrics at Homelab Prices

Same engine, same dashboards, same ML. Just priced for tinkerers.

Community: Free forever · 5 nodes · non-commercial
Homelab: $90/yr · unlimited nodes · fair usage
> Start monitoring your lab—free
$1,000 Per Referral. Unlimited Referrals.

Your colleagues get 10% off. You get 10% commission. Everyone wins.

10% of subscriptions, up to $1,000 each
Track earnings inside Netdata Cloud
PayPal/Venmo payouts in 3-4 weeks
No caps, no complexity
> Get your referral link
Cost Proof
40% Budget Optimization

"Netdata's significant positive impact" — LANCOM Systems

Calculate Your Savings

Compare vs Datadog, Grafana, Dynatrace

Savings Proof
46% Cost Reduction

"Cut costs by 46%, staff by 67%" — Codyas

30% Cloud Bill Savings

"Reduced cloud bill by 30%" — Falkland Islands Gov

Enterprise Proof
"Better Than Combined Alternatives"

"Better observability with Netdata than combining other tools." — TMB Barcelona

Real Engineers, <24h Response

DPA, SLAs, on-prem, volume pricing

Why Partners Win
Demo Live Infrastructure

One command, 30 seconds, real data—no sandbox needed

Zero Tickets, High Margins

Auto-config + per-node pricing = predictable profit

Homelab Ready
"Absolutely Incredible"

"We tested every monitoring system under the sun." — Benjamin Gabler, CEO Rocket.Net

76k+ GitHub Stars

3rd most starred monitoring project

Worth Recommending
Product That Delivers

Customers report 40-67% cost cuts, 99% downtime reduction

Zero Risk to Your Rep

Free tier lets them try before they buy

Never Fight Fires Alone

Docs, community, and expert help—pick your path to resolution.

Learn.netdata.cloud docs
Discord, Forums, GitHub
Premium support available
> Get answers now
60 Seconds to First Dashboard

One command to install. Zero config. 850+ integrations documented.

Linux, Windows, K8s, Docker
Auto-discovers your stack
> Start monitoring now
See Netdata in Action

Watch real-time monitoring in action—demos, tutorials, and engineering deep dives.

Product demos and walkthroughs
Real infrastructure, not staged
> Start with the 3-minute tour
Level Up Your Monitoring
Real problems. Real solutions. 112+ guides from basic monitoring to AI observability.
76,000+ Engineers Strong
615+ contributors. 1.5M daily downloads. One mission: simplify observability.
Per-Second. 90% Cheaper. Data Stays Home.
Side-by-side comparisons: costs, real-time granularity, and data sovereignty for every major tool.

See why teams switch from Datadog, Prometheus, Grafana, and more.

> Browse all comparisons
Edge-Native Observability, Born Open Source
Per-second visibility, ML on every metric, and data that never leaves your infrastructure.
Founded in 2016
615+ contributors worldwide
Remote-first, engineering-driven
Open source first
> Read our story
Promises We Publish—and Prove
12 principles backed by open code, independent validation, and measurable outcomes.
Open source, peer-reviewed
Zero config, instant value
Data sovereignty by design
Aligned pricing, no surprises
> See all 12 principles
Edge-Native, AI-Ready, 100% Open
76k+ stars. Full ML, AI, and automation—GPLv3+, not premium add-ons.
76,000+ GitHub stars
GPLv3+ licensed forever
ML on every metric, included
Zero vendor lock-in
> Explore our open source
Build Real-Time Observability for the World
Remote-first team shipping per-second monitoring with ML on every metric.
Remote-first, fully distributed
Open source (76k+ stars)
Challenging technical problems
Your code on millions of systems
> See open roles
Talk to a Netdata Human in <24 Hours
Sales, partnerships, press, or professional services—real engineers, fast answers.
Discuss your observability needs
Pricing and volume discounts
Partnership opportunities
Media and press inquiries
> Book a conversation
Your Data. Your Rules.
On-prem data, cloud control plane, transparent terms.
Trust & Scale
76,000+ GitHub Stars

One of the most popular open-source monitoring projects

SOC 2 Type 2 Certified

Enterprise-grade security and compliance

Data Sovereignty

Your metrics stay on your infrastructure

Validated
University of Amsterdam

"Most energy-efficient monitoring solution" — ICSOC 2023, peer-reviewed

ADASTEC (Autonomous Driving)

"Doesn't miss alerts—mission-critical trust for safety software"

Community Stats
615+ Contributors

Global community improving monitoring for everyone

1.5M+ Downloads/Day

Trusted by teams worldwide

GPLv3+ Licensed

Free forever, fully open source agent

Why Join?
Remote-First

Work from anywhere, async-friendly culture

Impact at Scale

Your work helps millions of systems

Compliance
SOC 2 Type 2

Audited security controls

GDPR Ready

Data stays on your infrastructure

MS SQL Server icon

MS SQL Server

MS SQL Server

Plugin: windows.plugin Module: PerflibMSSQL

Overview

This collector monitors Microsoft SQL Server statistics.

It queries different SQL objects per instance from Perflib in order to gather the metrics.

This collector is only supported on the following platforms:

  • windows

This collector only supports collecting metrics from a single instance of this integration.

Default Behavior

Auto-Detection

The collector automatically discovers and monitors standard SQL Server metrics without additional setup. However, for transaction-level metrics, the size of all the data files, and the wait stats in the database you must:

  • Complete the “Configure SQL Server for Monitoring” steps in the Setup -> Prerequisites section.
  • Configure a database connection (see Setup → Configuration → Examples).

Limits

The default configuration for this integration does not impose any limits on data collection.

Performance Impact

The default configuration for this integration is not expected to impose a significant performance impact on the system.

Setup

Prerequisites

Configure SQL Server for Monitoring

For each SQL Server instance you want to monitor, complete the following steps:

  1. Create Monitoring User

    Create an SQL Server user with the necessary permissions to collect monitoring data:

    USE master;
    CREATE LOGIN netdata_user WITH PASSWORD = '1ReallyStrongPasswordShouldBeInsertedHere';
    CREATE USER netdata_user FOR LOGIN netdata_user;
    GRANT CONNECT SQL TO netdata_user;
    GRANT VIEW SERVER STATE TO netdata_user;
    GO
    
  2. Enable Query Store

    Enable the Query Store and grant access to the monitoring user on all relevant databases:

    DECLARE @dbname NVARCHAR(max)
    DECLARE nd_user_cursor CURSOR FOR SELECT name
                        FROM master.dbo.sysdatabases
                        WHERE name NOT IN ('master')
    
    OPEN nd_user_cursor
    FETCH NEXT FROM nd_user_cursor INTO @dbname
    WHILE @@FETCH_STATUS = 0
    BEGIN
      EXECUTE ("USE "+ @dbname+"; CREATE USER netdata_user FOR LOGIN netdata_user; ALTER DATABASE "+@dbname+" SET QUERY_STORE = ON ( QUERY_CAPTURE_MODE = ALL, DATA_FLUSH_INTERVAL_SECONDS               =    900 )");
      FETCH next FROM nd_user_cursor INTO @dbname;
    END
    CLOSE nd_user_cursor
    DEALLOCATE nd_user_cursor
    GO
    
  3. Enable Query Job status

    Connect to your database and grant SELECT permission to netdata_user:

USE msdb;
GO
GRANT SELECT ON SCHEMA::[dbo] TO netdata_user;
GO
  1. Enable Query replication stored procedure

    Connect to your database and add netdata_user to replmonitor:

USE distribution;
GO
EXEC sp_addrolemember 'replmonitor', 'netdata_user';
GO
  1. Configure SQL Server Network Settings

    Enable SQL Server to accept TCP connections:

  • Open SQL Server Configuration Manager
  • Expand SQL Server Network Configuration
  • Select Protocols for <instance name> in the console panel
  • Double-click the TCP protocol in the details panel and set Enabled to Yes
  • Go to the IP Address tab and locate the IPAII section:
    • Clear any value from the TCP Dynamic Ports field
    • Enter a port number in the TCP Port field (default is 1433)
  • Select SQL Server Services and restart your SQL Server instance
  1. Configure SQL Server Authentication (Optional)

    If you’re using SQL Server authentication (rather than Windows authentication):

  • Open SQL Server Management Studio
  • Right-click your server and select Properties
  • Select Security in the left panel
  • Choose SQL Server and Windows Authentication mode under Server authentication
  • Click OK
  • Right-click your server and select Restart

Configuration

Options

These options allow the collector to connect to your MSSQL instance and collect transaction data from it.

OptionDescriptionDefaultRequired
update everyData collection frequency.10no
driverODBC driver used to connect to the SQL Server.SQL Serverno
instanceInstance nameemptyyes
serverServer address or instance name.emptyyes
addressAlternative to server; supports named pipes if the server supports them.emptyyes
uidSQL Server user identifier.emptyyes
pwdPassword for the specified user.emptyyes
additional instancesNumber of additional SQL Server instances to monitor.0no
windows authenticationSet to yes to use Windows credentials instead of SQL Server authentication.nono
expressSet to yes when running SQL Express version.nono
collect transactionsRun queries to collect information from the server’s transactions.yesno
collect waitsRun queries to collect information from the server’s lock waits.yesno
collect lock metricsRun queries to collect information from the server’s overall locks.yesno
collect replicationRun queries to collect information from the server’s replication.yesno
collect jobsRun queries to collect information from the server’s jobs.yesno
collect buffer statsRun queries to collect information from the server’s buffer statistics.yesno
collect database sizeRun queries to collect information from the server’s database size.yesno
collect user connectionsRun queries to collect information from the server’s connection.yesno

via File

The configuration file name for this integration is netdata.conf. Configuration for this specific integration is located in the [plugin:windows:PerflibMSSQL] section within that file.

The file format is a modified INI syntax. The general structure is:

[section1]
    option1 = some value
    option2 = some other value

[section2]
    option3 = some third value

You can edit the configuration file using the edit-config script from the Netdata config directory.

cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
sudo ./edit-config netdata.conf
Examples
Single Instance

An example configuration with one instance.

[plugin:windows:PerflibMSSQL]
   driver = SQL Server
   instance = Dev
   server = 127.0.0.1\\Dev, 1433
   uid = netdata_user
   pwd = 1ReallyStrongPasswordShouldBeInsertedHere
   express = no
Multiple Instances

An example configuration with two instances.

[plugin:windows:PerflibMSSQL]
  driver = SQL Server
  server = 127.0.0.1\\Dev, 1433
  instance = Dev
  uid = netdata_user
  pwd = 1ReallyStrongPasswordShouldBeInsertedHere
  additional instances = 1
  express = no
[plugin:windows:PerflibMSSQL1]
  driver = SQL Server
  server = 127.0.0.1\\Production, 1434
  instance = Production
  uid = netdata_user
  pwd = AnotherReallyStrongPasswordShouldBeInsertedHere2
  express = no

Metrics

Metrics grouped by scope.

The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.

Per MSSQL instance

These metrics refer to the Microsoft SQL Servers instances defined on host.

Labels:

LabelDescription
mssql_instanceThe instance name.

Metrics:

MetricDimensionsUnit
mssql.instance_user_connectionsuserconnections
mssql.instance_sessions_connectionssessionconnections
mssql.instance_sqlstats_batch_requestsbatchrequests/s
mssql.instance_sql_errorserrorserrors/s
mssql.instance_sqlstats_sql_compilationscompilationscompilations/s
mssql.instance_sqlstats_sql_recompilationsrecompilesrecompiles/s
mssql.instance_sqlstats_auto_parameterization_attemptsfailedattempts/s
mssql.instance_sqlstats_safe_auto_parameterization_attemptssafeattempts/s
mssql.instance_accessmethods_page_splitspagesplits/s
mssql.instance_cache_hit_ratiohit_ratiopercentage
mssql.instance_bufman_iopsread, writtenpages/s
mssql.instance_bufman_checkpoint_pageslogpages/s
mssql.instance_bufman_page_life_expectancylife_expectancyseconds
mssql.instance_bufman_lazy_writewriteswrites/s
mssql.instance_bufman_page_lookupslookupslookups/s
mssql.instance_memmgr_server_memorymemorybytes
mssql.database_readonlywritable, readonlystatus
mssql.database_stateonline, restoring, recovering, recovering_pending, suspect, offlinestatus
mssql.instance_memmgr_connection_memory_bytesmemorybytes
mssql.instance_memmgr_pending_memory_grantspendingprocesses
mssql.instance_memmgr_external_benefit_of_memorybenefitbytes
mssql.instance_blocked_processesblockedprocesses

Per MSSQL Jobs

These metrics refer to the Microsoft SQL Servers jobs on host.

Labels:

LabelDescription
mssql_instanceThe instance name.
job_nameThe job name.

Metrics:

MetricDimensionsUnit
mssql.instance_jobs_statusenabled, disabledjobs

Per MSSQL Resource Locks

Monitors SQL Server resource locks by type. SQL Server uses locks to manage concurrent access to database resources during transactions, preventing conflicts when multiple users access the same data simultaneously. This metric tracks locks on different resource types like rows, pages, tables, and databases.

Labels:

LabelDescription
mssql_instanceThe SQL Server instance name (e.g., ‘MSSQLSERVER’ for default instance or named instance like ‘INSTANCE01’).
resourceThe specific resource type being locked (e.g., ‘Database’, ‘Table’, ‘Page’, ‘Row’, ‘Key’, ‘Extent’, ‘RID’, ‘Application’, ‘Metadata’, ‘Allocation_Unit’).

Metrics:

MetricDimensionsUnit
mssql.instance_resource_deadlockslocksdeadlock/s
mssql.instance_resource_lock_waitslockslock/s

Per MSSQL Waits

These metrics refer to the Microsoft SQL Server instances defined on the host and their associated wait events.

Labels:

LabelDescription
mssql_instanceThe instance name.
wait_typeA wait defined in https://learn.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-os-wait-stats-transact-sql?view=sql-server-ver16#WaitTypes.
wait_categoryWait categories are groupings of specific wait types that indicate the reason a SQL Server worker is waiting.

Metrics:

MetricDimensionsUnit
mssql.instance_total_wait_timedurationms
mssql.instance_resource_wait_timedurationms
mssql.instance_signal_wait_timedurationms
mssql.instance_max_wait_timedurationms
mssql.instance_waitswaitswaits/s

Per Database

These metrics refer to Microsoft SQL Server databases.

Labels:

LabelDescription
mssql_instanceThe instance name.
databaseThe database name.

Metrics:

MetricDimensionsUnit
mssql.database_active_transactionsactivetransactions
mssql.database_transactionstransactionstransactions/s
mssql.database_write_transactionswritetransactions/s
mssql.database_lockwaitlocklocks/s
mssql.database_deadlocksdeadlocksdeadlocks/s
mssql.database_lock_timeoutstimeoutstimeouts/s
mssql.database_lock_requestsrequestsrequests/s
mssql.database_backup_restore_operationsbackupoperations/s
mssql.database_log_flusheslogflushes/s
mssql.database_log_flushedflushedbytes/s
mssql.database_data_files_sizesizebytes

Per MSSQL Replication

These metrics refer to the Microsoft SQL Servers replication on host.

Labels:

LabelDescription
mssql_instanceThe instance name.
publisherThe SQL server publisher name.
databaseThe database being replicated.
publicationThe publication name.

Metrics:

MetricDimensionsUnit
mssql.replication_statusstarted, succeeded, in_progress, idle, retrying, failedstatus
mssql.replication_warningexpiration, latency, merge expiration, fast duration, low duration, fast run speed, low run speedstatus
mssql.replication_avg_latencylatencyseconds
mssql.replication_subscriptionsubscriptionsubscription
mssql.replication_agent_runningagentsagents
mssql.replication_synchronizationsecondsseconds

Alerts

There are no alerts configured by default for this integration.

The observability platform companies need to succeed

Sign up for free

Want a personalised demo of Netdata for your use case?

Book a Demo