AWS Personalize cost: training, ingestion, and inference capacity
Personalize bills data ingestion, training hours to build recommendation models, and real-time inference by provisioned throughput (TPS-hours). Over-provisioned recommendation capacity and frequent retraining drive the bill. Here is the model.
Quick answer
Personalize bills data ingestion (per GB), training hours to build and update recommendation models, and real-time inference by provisioned throughput (per TPS-hour for a recommender that serves requests). Over-provisioned inference throughput and overly-frequent retraining are the main cost drivers, so right-sizing throughput to real request rate and retraining on a sensible cadence are the levers.
Amazon Personalize builds recommendation and personalization models from your data. Its cost has three parts, ingesting data, training models, and serving recommendations, and the serving side, provisioned by throughput, is where over-provisioning quietly runs up cost.
Ingestion, training, inference
| Component | Bills for |
|---|---|
| Data ingestion | Per GB of interaction/item/user data |
| Training | Per training hour to build/update models |
| Real-time inference | Per TPS-hour of provisioned throughput |
| Batch inference | Per batch job (no always-on throughput) |
Ingestion bills per gigabyte of data. Training bills per hour to build or update a model. Real-time recommendations require provisioning throughput (transactions per second), billed per TPS-hour whether or not that throughput is used, so an over-provisioned recommender costs continuously.
Right-size inference throughput
The common overspend is provisioning more recommendation throughput than the real request rate needs, paying for TPS you do not use around the clock. Set the minimum provisioned throughput to real peak demand plus margin, use auto-scaling where available, and use batch inference for recommendations that do not need real-time serving (precomputing recommendations for a batch of users), which avoids always-on throughput.
Controlling Personalize cost
Right-size real-time throughput to actual request rate, use batch inference where real-time is not required, retrain on a cadence that matches how much your data and item catalog change (not constantly), and ingest only the data that improves the model. The provisioned-throughput trap mirrors other ML inference endpoints: pay for the capacity you use, not idle headroom.
FAQ
How is AWS Personalize priced?
By data ingestion (per GB), training hours to build and update recommendation models, and real-time inference provisioned by throughput (per TPS-hour), with batch inference as a per-job alternative. Over-provisioned real-time throughput and frequent retraining are the main cost drivers.
How do I reduce Personalize cost?
Right-size real-time inference throughput to actual request rate rather than over-provisioning TPS, use batch inference for recommendations that do not need real-time serving, retrain on a cadence matching how much your data changes rather than constantly, and ingest only data that improves the model.
Why does Personalize real-time inference cost so much?
Because it requires provisioning throughput (transactions per second), billed per TPS-hour whether or not that throughput is used. An over-provisioned recommender pays for unused capacity around the clock. Right-sizing throughput to real peak demand, and using batch inference where real-time is not needed, controls it.
When should I use batch instead of real-time Personalize?
When recommendations do not need to be served in real time, such as precomputing recommendations for a batch of users to store and serve later. Batch inference bills per job with no always-on provisioned throughput, avoiding the continuous TPS-hour cost of a real-time recommender.
How often should I retrain Personalize models?
On a cadence that matches how much your interaction data and item catalog actually change. Retraining constantly incurs training-hour cost for marginal model improvement when data is stable, while retraining too rarely lets the model go stale. Match retraining frequency to your data's rate of change.
Does C3X estimate Personalize cost?
Personalize cost is driven by ingestion volume, training hours, and provisioned inference throughput, which are usage inputs. C3X prices the surrounding infrastructure, and you model your data, training, and request volumes to estimate the recommendation-engine charges.
What to do next
Estimate the infrastructure around your recommendations before you build them. C3X reads your Terraform and prices your resources against a live catalog. Start with the quickstart.
Share this post
Try C3X on your own Terraform
Free and open source. No API key required. One command to install, one command to estimate.