With AWS IoT Greengrass, you pay only for what you use. You are charged based on the number of AWS IoT Greengrass Core devices that connect to the AWS IoT Greengrass cloud service in a given month. You will not be charged if an AWS IoT Greengrass Core device does not connect to the cloud service.

Limited-time promotion

As part of a limited-time promotion, you now get AWS IoT Greengrass at no charge for the first 1,000 devices, from December 15, 2020 through December 31, 2021. You will still incur charges for other AWS services you use with your applications running on AWS IoT Greengrass such as AWS IoT Core.

If you are planning to use AWS IoT Greengrass for large fleets of devices, please contact us for additional pricing options. Please also contact us if you are evaluating making an annual commitment.

AWS IoT Greengrass includes two pieces of client software: AWS IoT Greengrass Core, the runtime that provides local AWS Lambda, messaging, device shadows, and security, and the AWS IoT Device SDK, which lets devices interact with AWS IoT Greengrass Core via the local network.

An AWS IoT Greengrass Core is active for the month when it authenticates with AWS. AWS IoT Greengrass Core is uniquely identified by its AWS IoT thing that represents the AWS IoT Greengrass Core device and uses a device certificate to authenticate with AWS IoT. You can locally connect devices to your AWS IoT Greengrass Cores for no additional charge. An AWS IoT Greengrass Core is considered inactive when it does not authenticate with AWS in a given month, even if the device continues to operate locally.

AWS Free Tier

The AWS Free Tier includes the first three AWS IoT Greengrass Core devices that connect during each month, for one year.

Additional Charges

AWS IoT Greengrass opens one or more connections to AWS IoT Core to support operations of deployment, device shadows, and message transfer. These connections are automatically established when internet connection is available. The number of connections is based on the number of AWS IoT Device Shadows that you configure to synchronize with the cloud and the number of AWS IoT Core MQTT topics that you configure to send messages to AWS IoT Greengrass Cores. You will incur charges for the total AWS IoT Core connection minutes based on these connections. See additional details on number of connections.

You may also incur additional charges with AWS IoT Greengrass if your applications utilize other AWS services or transfers data. For example, if AWS IoT Greengrass transmits data to or from Amazon Simple Storage Service (Amazon S3), you will be billed for the read/write requests and the data stored in Amazon S3.

For details on AWS service pricing, see the pricing section of the relevant AWS service detail pages. Links to pricing for some of the commonly used services are listed below.

AWS IoT Core (includes pricing for connectivity, messaging, and device shadow operations)

Amazon Kinesis (includes pricing for data streaming, throughput capacity, and data retention)

Amazon S3 (includes pricing for storage, requests, and data transfer)

Amazon DynamoDB (includes pricing for data storage, throughput capacity, and data transfer)

Except as otherwise noted, our prices are exclusive of applicable taxes and duties, including VAT and applicable sales tax. For customers with a Japanese billing address, use of AWS is subject to Japanese Consumption Tax.

Pricing Examples

Example 1 - The following example assumes there are 3 AWS IoT Greengrass Core devices that are active for 11 months:

  • Device A - An AWS IoT Greengrass Core device is powered on in January and powered down at the end of November. When the device is powered on, it downloads new Lambda functions when they are available and continuously synchronizes its state via device shadows.
  • Device B - An AWS IoT Greengrass Core device sits inactive on a warehouse shelf in January, but is sold and powered on in February. When the device is powered on, it uses local Lambdas to summarize 1-second metrics into 5-minute metrics and uploads the 5-minute metrics to AWS IoT or Amazon Kinesis.
  • Device C - An AWS IoT Greengrass Core is powered on in January and stays powered on all year. It has no internet connectivity for the month of December, so it never interacts with the cloud in December.

AWS IoT Greengrass Charges

Monthly AWS IoT Greengrass charges = Number of Active AWS IoT Greengrass Cores * Monthly price per AWS IoT Greengrass Core

Charge for Device A = 1 device * $0.16 per device per month = $0.16
Charge for Device B = 1 device * $0.16 per device per month = $0.16
Charge for Device C = 1 device * $0.16 per device per month = $0.16

AWS IoT Greengrass charges for total activity period = Monthly AWS IoT Greengrass charges * Activity period (months)

Charge for Device A = $0.16 per month * 11 months = $1.76
Charge for Device B = $0.16 per month * 11 months = $1.76
Charge for Device C = $0.16 per month * 11 months = $1.76

Total AWS IoT Greengrass charges = AWS IoT Greengrass active period charges for Device A + AWS IoT Greengrass active period charges for Device B + AWS IoT Greengrass active period charges for Device C = $1.76 + $1.76 + $1.76 = $5.28

AWS IoT Core Charges

In this example, AWS IoT Greengrass establishes two connections (one for deployment agent and one for subscriptions) for each device. (Note: AWS IoT Core has a limit of 50 subscriptions per connection and as device A, B and C, each do not require more than 50 subscriptions, AWS IoT Greengrass establishes only one connection to support overall subscription-based operations).
Number of connection minutes = Number of connections * Activity period (minutes)
Where, Activity period for each device over 11 months = 11 months * 730 hours per month * 60 minutes per hour = 481,800 minutes

Connection minutes for Device A = 2 connections * 481,800 minutes = 963,600 minutes
Connection minutes for Device B = 2 connections * 481,800 minutes = 963,600 minutes
Connection minutes for Device C = 2 connections * 481,800 minutes = 963,600 minutes

Charges for connection minutes = Number of connection minutes * $0.08 per million connection minutes = Number of connection minutes * $0.08/1,000,000 connection minutes. See additional AWS IoT Core connectivity pricing details.

Charges for connection minutes for Device A = 963,600 minutes * $0.08/1,000,000 minutes = $0.08
Charges for connection minutes for Device B = 963,600 minutes * $0.08/1,000,000 minutes = $0.08
Charges for connection minutes for Device C = 963,600 minutes * $0.08/1,000,000 minutes = $0.08

Device B also uses local Lambdas to aggregate metrics every second and upload the collected metrics every five minutes to AWS IoT.
Charges for sending messages to cloud = Number of messages * $1 per million messages. See additional AWS IoT Core messaging pricing details.
Where, Number of messages sent by Device B in 11 months = 11 months * 730 hours per month * 12 messages per hour = 96,360 messages

Charges for sending messages for Device B = 96,360 messages * $1/1,000,000 messages = $0.10

Total AWS IoT Core charges = AWS IoT Core connection minute charges for Device A + AWS IoT Core connection minute charges for Device B + AWS IoT Core connection minute charges for Device C + AWS IoT Core messaging charges for Device B = $0.08 + $0.08 + $0.08 + $0.10 = $0.34

AWS IoT Greengrass and AWS IoT Core Charges
Total AWS IoT Greengrass charges + Total AWS IoT Core charges = $5.28 + $0.34 = $5.62

Example 2 – An AWS IoT Greengrass Core (Device A) is destroyed at the end of January, and AWS IoT Greengrass Core (Device B) is powered on in February to replace it. This counts as 1 active device in January and 1 active device in February.

AWS IoT Greengrass Charges
Monthly AWS IoT Greengrass charges = Number of Active AWS IoT Greengrass Cores * Monthly price per AWS IoT Greengrass Core

Charge for Device A = 1 device * $0.16 per device per month = $0.16
Charge for Device B = 1 device * $0.16 per device per month = $0.16

AWS IoT Greengrass charges for total activity period = Monthly AWS IoT Greengrass charges * Activity period (months)

Total charge for Device A = $0.16 per month * 1 month = $0.16
Total charge for Device B = $0.16 per month * 1 month = $0.16

Total AWS IoT Greengrass charges = AWS IoT Greengrass active period charges for Device A + AWS IoT Greengrass active period charges for Device B = $0.16 + $0.16 = $0.32

AWS IoT Core Charges

In this example, AWS IoT Greengrass establishes two connections (one for deployment agent and one for subscriptions) for each device. (Note: IoT Core has a limit of 50 subscriptions per connection and as device A and device B do not require more than 50 subscriptions, AWS IoT Greengrass establishes only one connection to support overall subscription-based operations).

Number of connection minutes = Number of connections * Activity period (minutes) Where, Activity period for each device over one month = 730 hours per month * 60 minutes per hour = 43,800 minutes

Connection minutes for Device A = 2 * 43,800 minutes = 87,600 minutes
Connection minutes for Device B = 2 * 43,800 minutes = 87,600 minutes

Charges for connection minutes = Number of connection minutes * $0.08 per million connection minutes = Number of connection minutes * $0.08/1,000,000 connection minutes. See additional AWS IoT Core connectivity pricing details.

Charges for connection minutes for Device A = 87,600 minutes * $0.08/1,000,000 = $0.01
Charges for connection minutes for Device B = 87,600 minutes * $0.08/1,000,000 = $0.01

Device B also uses local Lambdas to aggregate metrics every second and upload the collected metrics every 5-minute to AWS IoT.
Charges for sending messages to cloud = Number of messages * $1 per million messages. See additional AWS IoT Core messaging pricing details.
Where, Number of messages sent by Device B in one month = 1 month * 730 hours per month * 12 messages per hour = 8,760 messages

Charges for sending messages for Device B = 8,760 messages * $1/1,000,000 messages = $0.01

Total AWS IoT Core charges = AWS IoT Core connection minute charges Device A + AWS IoT Core connection minute charges Device B + AWS IoT Core messaging charges Device B = $0.01 + $0.01 + $0.01 = $0.03

AWS IoT Greengrass and AWS IoT Core Charges
Total AWS IoT Greengrass charges + Total AWS IoT Core charges = $0.32+ $0.03 = $0.35

Example 3 - One AWS IoT Greengrass Core Device A interacts with 120 AWS IoT Greengrass-aware devices via the local network to process events from these devices and send updates to the cloud. Only Device A is counted as an AWS IoT Greengrass core device and is charged. The device is active for 12 months. The 120 AWS IoT Greengrass-aware-devices are configured to regularly sync their shadows with the cloud through AWS IoT Core. There are also two subscriptions that enable two AWS IoT Greengrass-aware devices to receive messages from the cloud (IoT/topic/1→ AWS IoT Greengrass-aware-device1 and IoT/topic/2→ AWS IoT Greengrass-aware-device2).

AWS IoT Greengrass Charges
Monthly AWS IoT Greengrass charge = Number of Active AWS IoT Greengrass Cores * Monthly price per AWS IoT Greengrass Core

Charge for Device A = 1 device * $0.16 per device per month = $0.16

AWS IoT Greengrass charges for total activity period = Monthly AWS IoT Greengrass charges * Activity period (months)

Total AWS IoT Greengrass charges for Device A = $0.16 per month * 12 months = $1.92

AWS IoT Core Charges
In this example, AWS IoT Greengrass establishes one connection to support the AWS IoT Greengrass deployment agent. In addition, AWS IoT Greengrass establishes connections to support subscriptions for device A based on:

Number of connections due to subscriptions = (subscriptions due to devices syncing shadows to AWS IoT Core + subscriptions for MQTT topics with cloud as source + subscriptions due to 2 shadows needed to support certificate generation workflow) / Maximum number of subscriptions per connection

Number of connections due to subscriptions from and through Device A = (120 AWS IoT Greengrass aware devices + 2 connections for MQTT topics with cloud as source + 2 connections for subscriptions for shadow updates)/ 50 subscriptions per connection = 2.48 = rounded up to 3 connections.

Number of connections = connections for deployment agent + connections due to subscriptions

Number of connections for Device A = 1 + 3 = 4 connections

Number of connection minutes = Number of connections * Activity period (minutes)
Where, Activity period = 12 months * 730 hours per month * 60 minutes per hour = 525,600 minutes

Number of connection minutes for Device A = 4 connections * 525,600 minutes = 2,102,400 minutes

Charges for connection minutes = Number of connection minutes * $0.08 per million connection minutes. See additional AWS IoT Core connectivity pricing details.

Charges for connection minutes for Device A = 2,102,400 minutes * $0.08/1,000,000 = $ 0.17

AWS IoT Greengrass and AWS IoT Core Charges
Total AWS IoT Greengrass charges + Total AWS IoT Core charges = $1.92 + $ 0.17 = $2.09

Additional pricing resources

AWS Pricing Calculator

Easily calculate your monthly costs with AWS

Economics Resource Center

Additional resources for switching to AWS

Learn more about getting started with AWS IoT Greengrass

Visit the getting started page
Ready to get started?
Sign up
Have more questions?
Contact us