Choose the right IoT Hub tier and size for your solution
Every IoT solution is different, so Azure IoT Hub offers several options based on pricing and scale. This article is meant to help you evaluate your IoT Hub needs. For pricing information about IoT Hub tiers, see Azure IoT Hub pricing.
To decide which IoT Hub tier is right for your solution, ask yourself two questions:
What features do I plan to use?
Azure IoT Hub offers two tiers, basic and standard, that differ in the features that they support. If your IoT solution is based around collecting data from devices and analyzing it centrally, then the basic tier is probably right for you. If you want to use more advanced configurations to control IoT devices remotely or distribute some of your workloads onto the devices themselves, then you should consider the standard tier.
For a detailed breakdown of which features are included in each tier, continue to Basic and standard tiers.
How much data do I plan to move daily?
Each IoT Hub tier is available in three sizes, based around how much data throughput they can handle in a day. These sizes are numerically identified as 1, 2, and 3. The size determines the baseline daily message limit, and then you can scale out an IoT hub by adding units. For example, each unit of a level 1 IoT hub can handle 400,000 messages a day. A level 1 IoT hub with five units can handle 2,000,000 messages a day. Or, go up to a level 2 hub where each unit has a 6,000,000 messages daily limit.
For more details about determining your message requirements and limits, continue to Tier editions and units.
Choose your features: basic and standard tiers
The basic tier of IoT Hub enables a subset of available features and is intended for IoT solutions that only need uni-directional communication from devices to the cloud. The standard tier of IoT Hub enables all features, and is meant for IoT solutions that want to make use of the bi-directional communication capabilities. The basic tier enables a subset of the features and is intended for IoT solutions that only need uni-directional communication from devices to the cloud.
Both tiers offer the same security and authentication features.
Capability | Basic tier | Standard tier |
---|---|---|
Device-to-cloud telemetry | Yes | Yes |
Per-device identity | Yes | Yes |
Message routing, message enrichments, and Event Grid integration | Yes | Yes |
HTTP, AMQP, and MQTT protocols | Yes | Yes |
Device Provisioning Service | Yes | Yes |
Monitoring and diagnostics | Yes | Yes |
Cloud-to-device messaging | Yes | |
Device twins, module twins, and device management | Yes | |
Device streams (preview) | Yes | |
Azure IoT Edge | Yes | |
IoT Plug and Play | Yes |
IoT Hub also offers a free tier that is meant for testing and evaluation. It has all the capabilities of the standard tier, but includes limited messaging allowances. You can't upgrade from the free tier to either the basic or standard tier.
IoT Hub REST APIs
The difference in supported capabilities between the basic and standard tiers of IoT Hub means that some API calls don't work with basic tier IoT hubs. The following table shows which APIs are available:
API | Basic tier | Standard tier |
---|---|---|
Create or update device, Get device, Delete device | Yes | Yes |
Create or update module, Get module, Delete module | Yes | Yes |
Get registry statistics | Yes | Yes |
Get services statistics | Yes | Yes |
Query IoT Hub | Yes | Yes |
Create file upload SAS URI | Yes | Yes |
Receive device bound notification | Yes | Yes |
Send device event | Yes | Yes |
Send module event | AMQP and MQTT only | AMQP and MQTT only |
Update file upload status | Yes | Yes |
Bulk device operation | Yes, except for IoT Edge capabilities | Yes |
Create import export job, Get import export job, Cancel import export job | Yes | Yes |
Get device twin, Update device twin | Yes | |
Get module twin, Update module twin | Yes | |
Invoke device method | Yes | |
Abandon device bound notification | Yes | |
Complete device bound notification | Yes | |
Create job, Get job, Cancel job | Yes | |
Query jobs | Yes |
Partitions
Azure IoT hubs contain many core components from Azure Event Hubs, including partitions. Event streams for IoT hubs are populated with incoming telemetry data that is reported by various IoT devices. The partitioning of the event stream is used to reduce contentions that occur when concurrently reading and writing to event streams.
The partition limit is chosen when an IoT hub is created, and can't be changed. The maximum limit of device-to-cloud partitions for basic tier and standard tier IoT hubs is 32. Most IoT hubs only need four partitions. For more information on determining the partitions, see the How many partitions do I need? question in the FAQ for Azure Event Hubs.
Upgrade tiers
After you create your IoT hub, you can upgrade from the basic tier to the standard tier without interrupting your existing operations. You can't downgrade from standard tier to basic tier. For more information, see How to upgrade your IoT hub.
The partition configuration remains unchanged when you migrate from basic tier to standard tier.
Note
The free tier does not support upgrading to basic or standard tier.
Choose your size: editions and units
Once you've chosen the tier that provides the best features for your solution, determine the size that provides the best data capacity for your solution.
Each IoT Hub tier is available in three sizes, based around how much data throughput they can handle in any given day. These sizes are numerically identified as 1, 2, and 3.
A tier-size pair is represented as an edition. A basic tier IoT hub of size 2 is represented by the edition B2. Similarly, a standard tier IoT hub of size 3 is represented by the edition S3. For more information, includig pricing details, see IoT Hub edition
Once you choose an edition for your IoT hub, you can multiple its messaging capacity by increasing the number of units.
Each IoT hub can only be one edition. For example, you can create an IoT hub with multiple units of S1. However, you can't create an IoT hub with a mix of units from different editions, such as S1 and B3 or S1 and S2.
The following table shows the capacity for device-to-cloud messages for each size.
Size | Messages per day per unit | Data per day per unit |
---|---|---|
1 | 400,000 | 1.5 GB |
2 | 6,000,000 | 22.8 GB |
3 | 300,000,000 | 1144.4 GB |
You can purchase up to 200 units for a size 1 or 2 IoT hub, or up to 10 units for a size 3 IoT hub. Your daily message limit and throttling limits are based on the combined capacity of all units. For example, buying one unit of size 2 gives you the same daily message limit as fifteen units of size 1.
For more information on the capacity and limits of each IoT Hub edition, see IoT Hub quotas and throttling.
Upgrade or downgrade editions
After you create your IoT hub, without interrupting your existing operations, you can:
- Change the number of units available within its edition (for example, upgrading from one to three units of B1)
- Upgrade or downgrade between editions within its tier (for example, upgrading from B1 to B2)
For more information, see How to upgrade your IoT hub.
Auto-scale
If you're approaching the allowed message limit on your IoT hub, you can use these steps to automatically scale to increment an IoT Hub unit in the same IoT Hub tier.
Next steps
For more information about IoT Hub capabilities and performance details, see Azure IoT Hub pricing or IoT Hub quotas and throttling.
To change your IoT Hub tier, follow the steps in How to upgrade your IoT hub.
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for