StatsD logo

StatsD

StatsD is the network daemon and UDP-based line protocol for application metrics, originally written at Etsy and now maintained at github.com/statsd/statsd. A StatsD client emits short text packets — counters, gauges, timers, histograms, sets, and meters — to a daemon that aggregates them in memory and flushes derived series to a backend such as Graphite, InfluxDB, Datadog, CloudWatch, or any of 30+ third-party sinks. The wire format is the canonical contract; dozens of language clients and several alternative servers (DogStatsD, Telegraf, gostatsd, brubeck, statsite, Veneur, bioyino) speak it with small, well-documented dialect extensions for tags, histograms, events, and service checks.

3 APIs 1 Capabilities 0 Features
AggregationDaemonDogStatsDLine ProtocolMetricsObservabilityOpen SourceStatsDTCPUDPWire Protocol

StatsD publishes 3 APIs on the APIs.io network: Wire Protocol, Admin Interface, and DogStatsD Wire Protocol. Tagged areas include Aggregation, Daemon, DogStatsD, Line Protocol, and Metrics.

The StatsD catalog on APIs.io includes 1 machine-runnable capability, 2 event-driven AsyncAPI specifications, 1 JSON-LD context, and 1 Spectral governance ruleset.

StatsD’s developer surface includes GitHub presence, changelog, SDKs, and 47 more developer resources.

APIs

StatsD Wire Protocol

The StatsD wire protocol is a UTF-8, line-oriented, UDP-by-default packet format used to push application metrics from clients to a StatsD daemon. Each line takes the form `buck...

StatsD Admin Interface

The StatsD admin/management interface is a plain-text TCP service exposed on port 8126 (default), used to inspect daemon state and clear in-memory aggregates. Supported commands...

DogStatsD Wire Protocol

DogStatsD is the Datadog Agent's StatsD-compatible ingestion protocol. It is a strict superset of the StatsD wire format that adds first-class tag syntax (`|#k:v,k:v`), histogra...

Capabilities

StatsD Admin Interface

StatsD Admin Interface — Naftiko capability covering the daemon's plain-text management TCP interface (default port 8126). Inspect counters, gauges, and timers, dump configurati...

Run with Naftiko

Event Specifications

DogStatsD Wire Protocol

The DogStatsD wire protocol — Datadog's StatsD-compatible ingestion format. A strict superset of vanilla StatsD that adds first-class tag syntax (`|#k:v,k:v`), histogram (`|h`) ...

ASYNCAPI

StatsD Wire Protocol

The StatsD wire protocol: a UTF-8, line-oriented, UDP-by-default text format used by application code to push metrics to a StatsD daemon for in-memory aggregation. Each datagram...

ASYNCAPI

Semantic Vocabularies

Statsd Context

0 classes · 8 properties

JSON-LD

API Governance Rules

StatsD API Rules

7 rules · 1 errors 4 warnings 2 info

SPECTRAL

Resources

👥
GitHub
GitHub
🔗
License
License
📄
ChangeLog
ChangeLog
🔗
ContributorGuide
ContributorGuide
🔗
Wiki
Wiki
🔗
ProtocolSpec
ProtocolSpec
🔗
PackageRegistry
PackageRegistry
🔗
Issues
Issues
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
AlternativeServer
AlternativeServer
🔗
Backend
Backend
🔗
Backend
Backend
🔗
Backend
Backend
🔗
Backend
Backend
🔗
Backend
Backend
🔗
Backend
Backend
🔗
Backend
Backend
🔗
Backend
Backend
🔗
Backend
Backend

Sources

Raw ↑
aid: statsd
name: StatsD
description: >-
  StatsD is the network daemon and UDP-based line protocol for application
  metrics, originally written at Etsy and now maintained at github.com/statsd/statsd.
  A StatsD client emits short text packets — counters, gauges, timers,
  histograms, sets, and meters — to a daemon that aggregates them in memory and
  flushes derived series to a backend such as Graphite, InfluxDB, Datadog,
  CloudWatch, or any of 30+ third-party sinks. The wire format is the canonical
  contract; dozens of language clients and several alternative servers
  (DogStatsD, Telegraf, gostatsd, brubeck, statsite, Veneur, bioyino) speak it
  with small, well-documented dialect extensions for tags, histograms, events,
  and service checks.
type: Index
image: https://kinlane-productions.s3.amazonaws.com/apis-json/apis-json-logo.jpg
tags:
- Aggregation
- Daemon
- DogStatsD
- Line Protocol
- Metrics
- Observability
- Open Source
- StatsD
- TCP
- UDP
- Wire Protocol
url: https://raw.githubusercontent.com/api-evangelist/statsd/refs/heads/main/apis.yml
created: '2024-01-01'
modified: '2026-05-23'
specificationVersion: '0.19'
apis:
- aid: statsd:statsd-wire-protocol
  name: StatsD Wire Protocol
  description: >-
    The StatsD wire protocol is a UTF-8, line-oriented, UDP-by-default packet
    format used to push application metrics from clients to a StatsD daemon.
    Each line takes the form `bucket:value|type[|@sample_rate]`, where `type`
    is one of `c` (counter), `g` (gauge, with optional `+`/`-` for delta), `ms`
    (timer), `h` (histogram), `s` (set), or `m` (meter, in some dialects).
    Multiple metrics may share a packet when separated by `\n`. The protocol
    is connectionless on UDP (port 8125) and connection-oriented on TCP, where
    each metric MUST be terminated by `\n`. The wire format is the canonical
    contract between StatsD, its tag-aware dialects (DogStatsD, InfluxDB,
    SignalFx), and the wider ecosystem of clients and servers.
  humanURL: https://github.com/statsd/statsd/blob/master/docs/metric_types.md
  tags:
  - Counters
  - Gauges
  - Histograms
  - Line Protocol
  - Meters
  - Metrics
  - Sets
  - Timers
  - UDP
  - Wire Protocol
  properties:
  - type: Documentation
    url: https://github.com/statsd/statsd/blob/master/docs/metric_types.md
  - type: ProtocolSpec
    url: https://github.com/b/statsd_spec
  - type: GitHubRepository
    url: https://github.com/statsd/statsd
  - type: AsyncAPI
    url: asyncapi/statsd-wire-protocol-asyncapi.yml
  - type: JSONSchema
    url: json-schema/statsd-metric-line-schema.json
  - type: JSONSchema
    url: json-schema/statsd-metric-instance-schema.json
  - type: JSONStructure
    url: json-structure/statsd-metric-instance-structure.json
  - type: JSONLD
    url: json-ld/statsd-context.jsonld
  - type: Vocabulary
    url: vocabulary/statsd-vocabulary.yml
- aid: statsd:statsd-admin-interface
  name: StatsD Admin Interface
  description: >-
    The StatsD admin/management interface is a plain-text TCP service exposed
    on port 8126 (default), used to inspect daemon state and clear in-memory
    aggregates. Supported commands are `stats`, `counters`, `gauges`, `timers`,
    `delcounters`, `delgauges`, `deltimers`, `health [up|down]`, `config`, and
    `quit`. Each command is line-terminated; the daemon responds with one or
    more lines of plain text and the command name as a terminator (`END`).
    Wildcards (`*`) are supported on the delete commands. The interface is
    intended for telnet/netcat-style operator use and for tooling that wants to
    snapshot counters or toggle health checks.
  humanURL: https://github.com/statsd/statsd/blob/master/docs/admin_interface.md
  tags:
  - Admin
  - Health Check
  - Management
  - Operator
  - TCP
  properties:
  - type: Documentation
    url: https://github.com/statsd/statsd/blob/master/docs/admin_interface.md
  - type: OpenAPI
    url: openapi/statsd-admin-interface-openapi.yml
  - type: NaftikoCapability
    url: capabilities/statsd-admin.yaml
  - type: Spectral
    url: rules/statsd-admin-interface-rules.yml
  - type: Examples
    url: examples/statsd-admin-stats-example.json
- aid: statsd:dogstatsd-wire-protocol
  name: DogStatsD Wire Protocol
  description: >-
    DogStatsD is the Datadog Agent's StatsD-compatible ingestion protocol. It
    is a strict superset of the StatsD wire format that adds first-class tag
    syntax (`|#k:v,k:v`), histogram (`|h`) and distribution (`|d`) metric
    types, events (`_e{title.len,text.len}:title|text|...`), service checks
    (`_sc|name|status|...`), and Unix Domain Socket transport in addition to
    UDP/8125. Wide adoption beyond Datadog itself — Stripe Veneur, Atlassian
    gostatsd, Telegraf, and Shopify's statsd-instrument all speak DogStatsD —
    has made it the de facto modern dialect of the StatsD line protocol.
  humanURL: https://github.com/statsd/statsd/blob/master/docs/metric_types.md
  tags:
  - Datadog
  - Distributions
  - DogStatsD
  - Events
  - Histograms
  - Service Checks
  - Tags
  - Unix Domain Socket
  - Wire Protocol
  properties:
  - type: Documentation
    url: https://github.com/statsd/statsd/blob/master/docs/metric_types.md
  - type: AsyncAPI
    url: asyncapi/dogstatsd-wire-protocol-asyncapi.yml
  - type: JSONSchema
    url: json-schema/dogstatsd-event-schema.json
  - type: JSONSchema
    url: json-schema/dogstatsd-service-check-schema.json
  - type: Examples
    url: examples/dogstatsd-tagged-counter-example.json
  - type: Examples
    url: examples/dogstatsd-distribution-example.json
  - type: Examples
    url: examples/dogstatsd-event-example.json
  - type: Examples
    url: examples/dogstatsd-service-check-example.json
common:
- type: GitHub
  url: https://github.com/statsd/statsd
- type: License
  url: https://github.com/statsd/statsd/blob/master/LICENSE
- type: ChangeLog
  url: https://github.com/statsd/statsd/blob/master/CHANGELOG.md
- type: ContributorGuide
  url: https://github.com/statsd/statsd/blob/master/CONTRIBUTING.md
- type: Wiki
  url: https://github.com/statsd/statsd/wiki
- type: ProtocolSpec
  url: https://github.com/b/statsd_spec
- type: PackageRegistry
  url: https://www.npmjs.com/package/statsd
- type: Issues
  url: https://github.com/statsd/statsd/issues
- type: SDK
  name: node-statsd-client (Node.js)
  url: https://github.com/msiebuhr/node-statsd-client
- type: SDK
  name: pystatsd (Python)
  url: https://github.com/jsocol/pystatsd
- type: SDK
  name: Py-Statsd (Python)
  url: https://github.com/sivy/py-statsd
- type: SDK
  name: python-statsd (Python)
  url: https://github.com/WoLpH/python-statsd
- type: SDK
  name: Django-Statsd (Python)
  url: https://github.com/WoLpH/django-statsd
- type: SDK
  name: statsd-instrument (Ruby, Shopify)
  url: https://github.com/Shopify/statsd-instrument
- type: SDK
  name: reinh/statsd (Ruby)
  url: https://github.com/reinh/statsd
- type: SDK
  name: java-statsd-client (Java)
  url: https://github.com/youdevise/java-statsd-client
- type: SDK
  name: statsd-netty (Java)
  url: https://github.com/flozano/statsd-netty
- type: SDK
  name: go-statsd (Go)
  url: https://github.com/smira/go-statsd
- type: SDK
  name: go-statsd-client (Go)
  url: https://github.com/cactus/go-statsd-client
- type: SDK
  name: quipo/statsd (Go)
  url: https://github.com/quipo/statsd
- type: SDK
  name: thephpleague/statsd (PHP)
  url: https://github.com/thephpleague/statsd
- type: SDK
  name: statsd-php (PHP)
  url: https://github.com/domnikl/statsd-php
- type: SDK
  name: JustEat.StatsD (.NET)
  url: https://github.com/justeat/JustEat.StatsD
- type: SDK
  name: graphite-client (.NET)
  url: https://github.com/peschuster/graphite-client
- type: SDK
  name: Net::Statsd (Perl)
  url: https://github.com/cosimo/perl5-net-statsd
- type: SDK
  name: Etsy::StatsD (Perl)
  url: https://github.com/sanbeg/Etsy-Statsd
- type: SDK
  name: Metrics::Any::Adapter::Statsd (Perl)
  url: https://metacpan.org/pod/Metrics::Any::Adapter::Statsd
- type: SDK
  name: datadogpy (Python — DogStatsD)
  url: https://github.com/DataDog/datadogpy
- type: AlternativeServer
  name: DogStatsD (Datadog Agent — Go)
  url: https://docs.datadoghq.com/developers/dogstatsd/
- type: AlternativeServer
  name: Telegraf StatsD input plugin (Go)
  url: https://github.com/influxdata/telegraf/tree/master/plugins/inputs/statsd
- type: AlternativeServer
  name: Stripe Veneur (Go — archived 2025-04)
  url: https://github.com/stripe/veneur
- type: AlternativeServer
  name: Atlassian gostatsd (Go)
  url: https://github.com/atlassian/gostatsd
- type: AlternativeServer
  name: GitHub brubeck (C)
  url: https://github.com/github/brubeck
- type: AlternativeServer
  name: statsite (C)
  url: https://github.com/armon/statsite
- type: AlternativeServer
  name: statsd-c (C)
  url: https://github.com/jbuchbinder/statsd-c
- type: AlternativeServer
  name: statsdcc (C++ — Wayfair)
  url: https://github.com/wayfair/statsdcc
- type: AlternativeServer
  name: bioyino (Rust — Avito)
  url: https://github.com/avito-tech/bioyino
- type: AlternativeServer
  name: bitly statsdaemon (Go)
  url: https://github.com/bitly/statsdaemon
- type: AlternativeServer
  name: vimeo statsdaemon (Go)
  url: https://github.com/vimeo/statsdaemon
- type: AlternativeServer
  name: gographite (Go)
  url: https://github.com/amir/gographite
- type: AlternativeServer
  name: netdata (C)
  url: https://github.com/netdata/netdata
- type: Backend
  name: Graphite (bundled)
  url: https://github.com/statsd/statsd/blob/master/docs/graphite.md
- type: Backend
  name: Console (bundled)
  url: https://github.com/statsd/statsd/blob/master/docs/backend.md
- type: Backend
  name: Repeater (bundled)
  url: https://github.com/statsd/statsd/blob/master/docs/backend.md
- type: Backend
  name: AWS CloudWatch
  url: https://github.com/camitz/aws-cloudwatch-statsd-backend
- type: Backend
  name: InfluxDB
  url: https://github.com/bernd/statsd-influxdb-backend
- type: Backend
  name: Datadog
  url: https://github.com/DataDog/statsd-datadog-backend
- type: Backend
  name: OpenTSDB
  url: https://github.com/emurphy/statsd-opentsdb-backend
- type: Backend
  name: Stackdriver
  url: https://github.com/jjneely/statsd-stackdriver-backend
- type: Backend
  name: Elasticsearch
  url: https://github.com/markkimsal/statsd-elasticsearch-backend
- type: Integrations
  name: Graphite
  url: https://graphiteapp.org/
- type: Integrations
  name: Datadog
  url: https://www.datadoghq.com/
- type: Integrations
  name: InfluxDB
  url: https://www.influxdata.com/
- type: Integrations
  name: CloudWatch
  url: https://aws.amazon.com/cloudwatch/
- type: Integrations
  name: SignalFx
  url: https://www.splunk.com/en_us/products/observability.html