With Amazon Personalize, you pay only for what you use, and there are no minimum fees and no upfront commitments. You are charged based on the amount of data processed and stored, the compute hours used to train your models, and for the throughput of recommendations.
You are charged per GB of data uploaded to Amazon Personalize. This includes real-time data streamed to Amazon Personalize and batch data uploaded via Amazon S3.
When serving real-time recommendations, you are charged for throughput capacity per hour in units of TPS-hour (rounded up to the nearest hour). This is calculated as the maximum of either the minimum provisioned TPS or the actual TPS multiplied by the total time (in 5 minute increments within each hour) that requests are processed. These are then aggregated for the month’s usage and billed according to the pricing tiers.
TPS-hours = Maximum of (minimum provisioned TPS, actual TPS) x (5/60 minutes)
Batch recommendations
You are charged for number of users processed when using ‘USER_PERSONALIZATION’ and ‘PERSONALIED_RANKING’ recipes and for items processed when using ‘RELATED_ITEMS’ recipe for a batch inference job.
Get started with AWS Personalize for free today. For the first two months after sign-up, you are offered:
Up to 20GB per month
Up to 100 training hours per month
Up to 50 TPS-hours of real-time recommendations/month
Pricing details
Pricing | |
---|---|
Data Ingestion |
$0.05 per GB |
Training |
$0.24 per training hour |
Recommendations (Inference) Real time |
|
First 20K TPS-hour per month |
$0.20 per TPS-hour for real-time recommendations |
Next 180K TPS-hour per month |
$0.10 per TPS-hour for real-time recommendations |
Over 200K TPS-hour per month |
$0.05 per TPS-hour for real-time recommendations |
Batch recommendations |
|
First 20 million recommendations per month |
$0.067/ 1000 recommendations |
Next 180 million recommendations per month |
$0.058/1000 recommendations |
Over 200 million recommendations per month |
$0.050/1000 recommendations |
Pricing example
A media company powers content discovery and recommendation through real-time profiling of their user’s preferences and consumption behavior. They upload 200 GB of data in the month, and train a single solution once per day with each training taking 20 mins to complete and consuming 10 training hours/training. Further the customer uses inference capacity of 10 TPS for 720 hours for the month for generating real-time recommendations.
The bill for the month for using Amazon Personalize will be:
Data processing and storage charge = 200 GB x $0.05 per GB = $10
Training charge = 300 training hours x $0.24 per training hour = $72
Inference charge (real-time) = 10x 720 x $0.20/ TPS-hour = $1440
Total cost = $10 + $72 + $1440 = $1552
For simplicity, let us assume same amount of data upload and training as in example 1.
Thus for:
Data processing and storage charge = 200 GB x $0.05 per GB = $10
Training charge = 300 training hours x $0.24 per training hour = $72
But, this time, we’ll vary the volume of requests throughout the day.
Inference usage and charge:
In following table, we walk through a variable traffic scenario and calculate the TPS-hours consumed in a day of usage:
Inference charge calculation | |||||
Time | Time (hours elapsed) | minProvisioned TPS | actualTPS | max. (minProvisionedTPs, actual TPS) | TPS-hours (max. (minProvisionedTPS, actualTPS) x Time (in hours)) |
12:00 am - 6:00 pm | 18 | 30 | 20 | 30 | 540 |
6:00 pm - 10:00 pm | 4 | 30 | 40 | 40 | 160 |
10:00 pm - 11:00 pm | 1 | 30 | 5 | 30 | 30 |
11:00 - 12:00 am | 1 | 20 | 0 | 20 | 20 |
Total TPS-hours consumed/day | 750 | ||||
TPS hours/month | 22500 | ||||
Total recommendation (inference) charge | Usage TPS-hours (in Tier) | Unit price ($/TPS-hour) | Cost ($) | ||
Tier 1 | 20000 | $0.2 | $4,000 | ||
Tier 2 | 2500 | $0.1 | $250 | ||
$4,250 |
A retailer uses batch recommendations to generate item recommendations for its users, for use in personalizing emails for them. Let us assume the model training was done using 10GB of data, the training consumes 50 training-hours and then a batch inference job was used to generate recommendations for 1 million users with 10 item recommendations for each user.
In this case the charges for using Personalize will be
Data processing and storage = 10 GB x $0.05/GB =$0.5
Training charge = 50 training-hours x $0.24/training-hour = $12
Inference charge = 1 million users* x $0.067/1000 recommendations = $67
*recommendations generated for each user when using a ‘Solution’ based on ‘USER-PERSONALIZATION’ recipe type are counted as 1 recommendation regardless of number of results (items) requested per user for batch pricing. Similarly, you only pay for number of users processed for PERSONALIZED-RANKING regardless of number of items reranked per user and for number of items processed when using ‘RELATED_ITEMS’ recipe regardless of number of similar items per item requested.
Additional pricing resources
Easily calculate your monthly costs with AWS
Additional resources for switching to AWS

Get started building with Amazon Personalize in the AWS Management Console.