What does personalizing every LLM call cost?
Injecting a user’s profile, preferences, and past interactions into each prompt makes responses feel tailored — and adds input tokens to every request, for every user. Because the cost multiplies across your whole active base and their daily activity, personalization can quietly become a major line item. This tool sizes it precisely, in total and per user.
Why personalization cost surprises teams
Most teams think about token cost in terms of a single conversation. Personalization cost is a different structure: it is a fixed overhead paid on every API call, for every active user. A 1,500-token user context might seem small, but across 50,000 users making 5 requests a day, that is 375 million additional input tokens per day — a significant spend that grows linearly with your user base and their activity, even if your product’s actual answer generation is efficient.
The cost is often invisible in early testing because test users are few and active-user counts are low. It surfaces suddenly at scale.
How it works
Each request carries the user’s profile plus injected history as input. The monthly cost of the personalization context is:
monthly_cost = (profile_tokens + history_tokens)
× requests_per_user_per_day × 30
× active_users
/ 1,000,000
× input_price_per_million
Dividing by active users gives the per-user cost of personalization, which is the number to weigh against the engagement lift it buys.
Worked example
Suppose you inject 800 tokens of user profile plus 700 tokens of recent history (1,500 tokens total) into every prompt. Your users average 4 requests per day, and you have 20,000 active users.
At an illustrative input price of $2.00 per million tokens:
- Daily context tokens: 1,500 × 4 × 20,000 = 120,000,000 input tokens
- Daily cost of personalization: 120M / 1M × $2.00 = $240
- Monthly cost: $240 × 30 = $7,200
- Per user per month: $7,200 / 20,000 = $0.36
Whether $0.36/user/month is acceptable depends on your pricing and the retention lift personalization delivers. If users who receive personalized responses retain 15% better and convert at a higher rate, it may pay for itself. If personalization provides negligible engagement lift, it is pure cost.
Types of context you might inject
User profile: name, preferences, settings, language, location, subscription tier — relatively stable, low token count, changes rarely
Interaction history: recent conversations, past requests, items viewed — grows with usage, changes frequently, often the largest slice
Retrieved memories: semantically relevant past interactions retrieved via similarity search — variable size, targeted, efficient
System-level preferences: formatting preferences, response length preferences, topics to avoid — small, stable, low cost
Tips to keep personalization affordable
- Summarize, don’t dump raw history. A rolling 200-token summary of the last week’s interactions captures intent at a fraction of the cost of full transcripts.
- Retrieve, don’t inject everything. Use semantic retrieval to pull the 2–3 most relevant past interactions per request instead of sending everything.
- Cache the stable prefix. A user’s core profile changes rarely and is an ideal prompt-cache candidate, cutting the repeated input cost sharply on supported providers.
- Measure the lift. Run an A/B test with and without personalization at scale and measure retention, conversion, and revenue per user before committing the token budget permanently.