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.
Related posts
- Training vs inference cost split: where the AI budget really goes
AI cost divides into training (building the model, often GPU-heavy and periodic) and inference (running it, continuous and scaling with usage). They have different profiles and different levers. Here is how to think about the split.
- AWS QuickSight cost: authors, readers, and SPICE capacity
QuickSight bills per author (a monthly subscription) and per reader (session-based with a monthly cap), plus SPICE in-memory capacity beyond the included allowance. Matching author and reader licensing to real usage is the main lever. Here is the model.
- Azure ML cost optimization: cutting the bill on training and inference
Azure Machine Learning cost is dominated by compute, GPUs for training, endpoints for inference, and idle clusters. Right-sizing, autoscaling to zero, spot compute, and batch endpoints are the biggest levers. Here is the playbook.
- AWS Comprehend cost: per unit of text analyzed
Comprehend bills per unit of text (100 characters, with a per-request minimum) for NLP tasks like sentiment, entities, and key phrases, with higher rates for custom models. Analyzing more text or in more ways than needed drives the bill.
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.