All Products
Search
Document Center

ApsaraMQ for MQTT:Billing overview

Last Updated:Apr 13, 2026

ApsaraMQ for MQTT charges are based on the instance edition and the resources consumed during message transmission. Billing methods, billable items, and protocol-level settings all affect your costs.

Instance editions and billing methods

ApsaraMQ for MQTT offers two instance editions: Enterprise Platinum Edition and Basic Edition. Both use the Subscription billing method -- you select resource specifications and pay upfront to activate your instance.

Edition Billing method Description
Enterprise Platinum Edition Subscription Select resource specifications and pay upfront. This method allows you to reserve resources in advance at a discount, ideal for large-traffic, long-term usage.
Basic Edition Subscription Select resource specifications and pay upfront. This method allows you to reserve resources in advance at a discount, ideal for large-traffic, long-term usage.

For feature differences between editions, see Instance editions.

Note

Pay-as-you-go instances are no longer available for purchase. Existing pay-as-you-go instances continue to run normally. For details, see Pay-as-you-go instances (end of sale).

Supported regions

For regions where ApsaraMQ for MQTT is available, see Supported regions.

Billable items

The following diagram shows the billable items for ApsaraMQ for MQTT.

Billable items for ApsaraMQ for MQTT image

For detailed pricing of each item, see Billing of Basic Edition and Enterprise Platinum Edition instances.

Calculation coefficients

The Quality of Service (QoS) level and the cleanSession parameter in the MQTT protocol directly affect how messages are counted for billing.

How message counting works

All messages are billable, including calls to the client API and the cloud API. The system calculates the billed message count using the following formula:

Billed messages = Actual message count x Calculation coefficient

Coefficient reference

QoS and cleanSession combination Coefficient
QoS=0, cleanSession=true 1
QoS=1, cleanSession=true 2
QoS=1, cleanSession=false 5
QoS=2, cleanSession=true 5
Important
  • QoS=2 with cleanSession=false is not supported. If you specify this combination, the coefficient is 5.

  • QoS=0 with cleanSession=false is not supported. If you specify this combination, the coefficient is 1.

For more information about QoS and cleanSession, see Terms.

TPS: The TPS specification of an ApsaraMQ for MQTT cluster, which includes the sum of both production TPS and consumption TPS. When you send or receive messages by using the MQTT protocol, each message is counted as 1 unit (<=4 KB). Each additional 4 KB counts as 1 additional TPS. When both message size and the QoS and cleanSession parameters are used in the calculation, the TPS of a single message is calculated by using the following formula: Max(ceil(message_size/4), 1 * QoS_and_cleanSession_coefficient). For example, if you send 1 message that is 64 KB in size with QoS=1 and cleanSession=true, the TPS is calculated as Max(ceil(64/4), 1*2), which equals 16 TPS.

Data exchange with other Alibaba Cloud services

If you use ApsaraMQ for MQTT V3.x.x to exchange data with other Alibaba Cloud services through rules, those services charge separately based on their own billing policies. ApsaraMQ for MQTT supports data exchange with ApsaraMQ for RocketMQ only. ApsaraMQ for RocketMQ charges topic occupancy fees and API call fees. For details, see ApsaraMQ for RocketMQ billing overview.