Skip to content

Feature Comparison

This page lists features supported across different deployment types in detail.

Core / Enterprise Features

FeaturesSelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
MQTT 5.0 BrokerComplete MQTT 5.0 protocol implementation
MQTT over QUICGlobally pioneering support
In development for Cloud
MQTT Add-onsShared subscription
Exclusive subscription
Delayed publish
Auto-subscription
Topic rewrite
More customization options
Multi-protocol GatewaysMore industry device access
Multi-tenancyHigher system flexibility and utilization
Cluster LinkingSeamless connection of devices and application data
Message QueueUnified architecture for data transmission and analysis
Stream ProcessingHigher reliability and disaster recovery capabilities
(Coming soon)
Data Persistence✅ Built-in RocksDB backend or external databasesN/AN/AImproved stability and reliability
Schema RegistrySchema Registry ensures data consistency and compatibility
Message CodecFlexible message format conversion for:
JSON, Avro, Protobuf, Custom codec (HTTP/gRPC)
Schema ValidationEnsuring integrity and legality of messages
Rule EngineSQL-based built-in Rule Engine and real-time data processing
Flow DesignerEasy orchestration of data integration
File Transfer✅ In product roadmapUnified platform data transmission
Kafka IntegrationStream MQTT Data into Apache Kafka
Enterprise Data Integrations✅ 40+✅ 40+Accelerate business development and delivery speed
TroubleshootingLog Trace
Slow Subscriptions
Cloud-Native & K8sN/AN/AReduce system deployment and management costs
Edge ComputingReduce data transmission latency and costs
Neuron
NanoMQ

Scalability and Performance

Scalability / PerformanceSelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
ScalabilityUp to 100 nodes cluster
Up to 100 million MQTT connections per cluster
1000 auto scale1000 - unlimitedReaching 100M MQTT connections with EMQX 5.0
AvailabilityCore-Replica clusterMasterless clusterMasterless cluster
ReliabilityData persistence in RocksDB with highly available replicationSession persistenceSession persistenceHighly Reliable MQTT Data Persistence Based on RocksDB
Performance5M+ MQTT messages per second1000 MQTT messages per second5M+ MQTT messages per second
Latency1~5 millisecond1~5 millisecond1~5 millisecond
SLAN/A99.9% uptimeUp to 99.99% uptime

Clustering Architecture

Clustering ArchitectureSelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
Nodes of Cluster100+confidentialconfidentialLarge-scale clusters
Elastic and resilient scaling at runtimeHigher system stability and resource utilization
Autoscaling
Consistency
TransactionEnsuring the atomicity and reliability of data operations
Network Split RecoveryCluster failure automatic repair
Node Evacuation & Cluster RebalanceN/AN/ANon-stop cluster maintenance
Autocluster DiscoveriesN/AN/Astatic: Discovery based on a static node list
mcast: Discovery with UDP multicast mode
dns: Discovery based on DNS records
etcd: Discovery via etcd
k8s: Discovery via Kubernetes service
Zero Downtime / Hot UpgradesN/AN/AImmediate repair of system vulnerabilities
Hot PatchN/AN/AEnsuring stable system operation
Overload ProtectionN/AN/AImproving system management efficiency
Multi-cluster ManagementN/AN/AEnhancing system stability
Cluster MetricsN/AN/A

MQTT and Connectivity

MQTT & ConnectivitySelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
MQTT 3.x
MQTT 5.0
MQTT Retainer
MQTT over TCP
MQTT over TLS
MQTT over WebSocket
MQTT over QUICEMQX is now the only MQTT broker in the world that supports QUIC transport.
LB (Proxy Protocol)Proxy protocol v1, v2
LB (Custom)GmSSL
Smooth connection migration
IPv6 Support
Multi-protocol Gateway
MQTT-SN
STOMP
CoAP
LwM2M
ExProto
OCPP
JT/808
GB/T 32960

Security

SecuritySelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
TLS/SSLProtect data transmission security: TLS 1.1, 1.2, 1.3
QUICEnhance efficiency of weak network and mobile network data transmission
OCSP StaplingProvide more flexible security practices
Flapping Detect✅ In product roadmapDetect and intercept frequent online and offline connections
Audit LogsSupport audit tracing for important operations
Dashboard SSOSecure and simplified authentication processes
Dashboard / REST API RBACMinimize permissions to ensure system security

Authentication and Authorization

Authentication / AuthorizationSelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
Username / PasswordPassword-Based Authentication
JWTJWT Authentication
MQTT 5.0 Enhanced AuthenticationN/AN/AMQTT 5.0 Enhanced Authentication
LDAP Authentication✅ In product roadmap
PSK AuthenticationEnable PSK Authentication
X.509 Certificates✅ Managed by EMQX Cloud
Fine-grained Access Control
Authentication Database Backends
ACL Database Backends

Data Integration

As EMQX evolves, it supports an expanding range of data integrations, including but not limited to those listed below.

Data IntegrationSelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)
MQTT Bridge
Webhook / HTTP Server
Aliyun Tablestore
Apache Kafka / Confluent
Apache IoTDB
Apache Pulsar
AWS Kinesis
AWS S3
Azure Event Hubs
Azure Blob Storage
Cassandra
ClickHouse
Couchbase
DynamoDB
Elasticsearch
GCP PubSub
GreptimeDB
HStreamDB
InfluxDB
Microsoft SQL Server
MongoDB
MySQL
OpenTSDB
Oracle Database
PostgreSQL
RabbitMQ
Redis
RocketMQ
Snowflake
Syskeeper
TDengine
TimeScaleDB

Rule Engine

Rule EngineSelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
Schema RegistryEnsure data format consistency
JSON Codec
Avro Codec
Protobuf Codec
Sparkplug B Codec
JSON Schema Validation
Avro Validation
ProtoBuf Validation
Built-in FunctionsFunctions available in SQL statements, rich built-in libraries, support custom extensions
jq FunctionsEfficient JSON data processing
Event TriggerClient events, event-driven business development
Schema Validation
Message Transformation

Extensibility

ExtensibilitySelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
HooksN/AN/AHooks
PluginsN/AN/APlugins
Plugin Hot LoadingN/AN/A
Plugin Hot ConfigurationN/AN/A
GatewaysN/AN/A
ExHooks / gRPCN/AN/A

Operability

OperabilitySelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
DashboardEMQX dashboard is feature-rich.
Configs can be hot updated through the dashboard.
Configuration✅ HOCONN/AN/AThe HOCON format is simple and concise.
HTTP API
CLI
Config Hot UpdatesN/AN/A
Operational Auditing

Observability

ObservabilitySelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
DashboardMonitor clusters in real time with an elegant dashboard
MetricsNode metrics
Grafana
Prometheus
Datadog
OpenTelemetry
Cluster MetricsN/AN/A
Alarm Alerts
Slow Subscription Monitoring
Topic Monitoring
Client Monitoring
Log Trace

Cloud Native and K8S

Cloud Native & K8sSelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
DockerN/AN/Aemqx - Official Image | Docker Hub
Docker
Kubernetes OperatorN/AN/AEMQX Kubernetes Operator
TerraformN/AN/AEMQX Terraform

Cloud Platform Availability

Cloud PlatformSelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
AWS MarketplaceAWS Marketplace: EMQX Platform (Pay as you go)
Azure MarketplaceAzure Marketplace: EMQX Platform
GCP MarketplaceGCP Marketplace
AWS
Azure
GCP

MQTT Tools and SDKs

MQTT Tools & SDKsSelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
MQTT Desktop ClientMQTT X - The best tool for learning MQTT.
MQTTX: Your All-in-one MQTT Client Toolbox
MQTT CLIMQTTX CLI: A Powerful and Easy-to-use MQTT CLI Tool
MQTT Web ToolFeature-rich and Easy-to-use.
MQTTX Web: Easy-to-use MQTT Websocket Client Tool
MQTT BenchmarkGitHub - emqx/emqtt-bench: Lightweight MQTT benchmark tool written in Erlang
MQTT & JMeter✅ JMeter PluginGitHub - emqx/mqtt-jmeter: MQTT JMeter Plugin
MQTT SDK for C✅ NanoSDKGitHub - nanomq/NanoSDK: MQTT 5.0-compliant SDK with QUIC support in NNG flavor
MQTT Erlang SDKGitHub - emqx/emqtt: Erlang MQTT 5.0 Client
MQTT iOS SDKGitHub - emqx/CocoaMQTT: MQTT 5.0 client library for iOS and macOS written in Swift
GitHub - emqx/swift-mqtt: An MQTT Client over TCP and QUIC protocol
MQTT QUIC ClientGitHub - emqx/quic: QUIC protocol for Erlang & Elixir

Support Services

Support ServicesSelf-Hosted (Enterprise)MQTT as a Service (Serverless)MQTT as a Service (Dedicated Flex)Notes and Links
Technical Support5×8, 7×24 Global Support5×8 Global Support5×8, 7×24 Global Support
Architecture Consulting
Project Integration
Custom Development