AI API price change log

A live price table answers what a model costs today. It cannot answer what it cost when an article was written. This log records every numeric rate change we have observed at a daily sync, so a quoted figure stays verifiable after the rate moves again.

Every rate change we have observed (13 records)

USD per 1M tokens, read from the provider's live rate config at each daily sync. Only numeric rate changes are listed; newly added models are in the additions log. A blank value means the upstream did not publish that side of the rate on that date.

DateModel IDVendorFieldFromToChange
2026-11-04gpt-4o-audio-preview-2024-12-17OpenAIinput$1.24$1.25+0.81%
2026-11-04gpt-4o-audio-preview-2024-12-17OpenAIoutput$4.96$5+0.81%
2026-11-03kimi-k2.7-codeMoonshotoutput$1.9731$2+1.36%
2026-11-03kimi-k2.6Moonshotoutput$1.9731$2+1.36%
2026-10-31glm-5Zhipuoutput$2.25$1.6-28.89%
2026-10-31glm-4.7Zhipuinput$0.35$0.3-14.29%
2026-10-31glm-4.7Zhipuoutput$1.63333$1.1-32.65%
2026-10-28kimi-k3.1-proMoonshotinput$2$1-50.00%
2026-10-28kimi-k3.1-proMoonshotoutput$10$5-50.00%
2026-10-15deepseek-v4-flashDeepSeekinput$0.22$0.15-31.82%
2026-10-15deepseek-v4-flashDeepSeekoutput$0.66$0.6-9.09%
2026-09-20doubao-seed-2-1-turbo-260628ByteDanceinput$1.5$0.225-85.00%
2026-09-20doubao-seed-2-1-turbo-260628ByteDanceoutput$7.5$1.125-85.00%

Cite this data

Released under CC BY 4.0 for the numeric records. Machine-readable copies: JSON and CSV. Suggested attribution: aitokensai.com AI API price change log, retrieved <date>, CC BY 4.0. A dated record is safer to cite than a live table: the number you quote stays true even after the rate moves again.

Related price data

FAQ

How often is the log updated?

Every time the daily price sync runs. A record is written only when a numeric input or output rate actually changes; days with no change do not produce a row.

Can I reuse the numbers in my own comparison?

Yes. The numeric records are released under CC BY 4.0. Use the JSON or CSV export and attribute aitokensai.com with the date you retrieved it.

Why do some rows show a blank value?

The upstream rate config did not publish that side of the rate on that date. We leave the cell blank rather than inferring a number, and we do not imply a discount where no verified list price exists.

Check the current rate for your model before you commit a workload.