1M token trong Claude có giá bao nhiêu?
Tính chi phí 1M token trên Claude API: input và output có giá riêng, output hiện cao gấp 5 lần input và mỗi model có mức giá khác nhau.
1M token trong Claude có giá bao nhiêu?
1M token nghĩa là 1 triệu token. Đây là đơn vị dùng để báo giá các model trong Claude API (application programming interface). Không có một mức giá duy nhất, vì input và output được tính theo các mức khác nhau, đồng thời mỗi model có một cặp mức giá riêng. Claude Haiku 5.5 có 2 cặp mức giá: một cặp cho prompt tối đa 100,000 token và một cặp cao hơn cho prompt vượt quá mức đó. Tính đến tháng 10 năm 2026, 1 triệu input token có giá $1 trên Claude Haiku 4.5, $2 trên Claude Sonnet 5 và $5 trên Claude Opus 5.
Output là phần đắt hơn. Trên mọi model hiện tại, mức giá output cao gấp 5 lần mức giá input. Vì vậy, tỷ lệ giữa input và output ảnh hưởng đến hóa đơn nhiều hơn con số giá tổng quát. Một app gửi tài liệu dài và trả về câu trả lời ngắn sẽ có chi phí rất khác app tạo câu trả lời dài từ một prompt ngắn.
Trang này tập trung vào unit economics: chi phí của từng token và cách ước tính hóa đơn trước khi xây dựng hệ thống. Để biết token thực sự được sử dụng ở đâu trong quá trình làm việc, hãy xem token được sử dụng ở đâu trong một phiên Claude Code.
1M token tương đương với bao nhiêu
Token là một đoạn văn bản mà model đọc hoặc ghi. Bảng thuật ngữ của Anthropic ước tính một token tương đương khoảng 3.5 ký tự tiếng Anh trên các model trước Claude 4.7. Tổng quan model của Anthropic cho biết 1M token chứa khoảng 750,000 từ trên các model đó. Với 3.5 ký tự mỗi token, con số này tương đương khoảng 3.5 triệu ký tự, tức khoảng 3.5 MB văn bản tiếng Anh thuần. Trên tokenizer mới được giới thiệu cùng Claude Opus 4.7, 1M token chứa khoảng 555,000 từ, tương đương khoảng 2.5 triệu ký tự.
Các ước tính được công bố cho những loại input phổ biến giúp hình dung rõ hơn về quy mô này.
Dữ liệu đằng sau biểu đồ này
[
{
"label": "Average web page (10 kB)",
"tokens": "2,500"
},
{
"label": "Documentation page (100 kB)",
"tokens": "25,000"
},
{
"label": "Research paper PDF (500 kB)",
"tokens": "125,000"
}
]Với các tỷ lệ đó, 1M token tương đương khoảng 400 trang web trung bình được đọc một lần, hoặc 8 bài nghiên cứu có kích thước như vậy. Đây cũng tương đương một lần xử lý toàn bộ một codebase cỡ trung, hoặc một tháng chat ở mức nhẹ của một người.
Hãy xem tất cả các con số này là ước tính. Code, JSON và văn bản bằng các ngôn ngữ khác tiếng Anh chứa ít từ hơn trong mỗi token, nên các số đếm từ trên là mức lạc quan. Còn một yếu tố khác làm thay đổi số lượng: Claude Opus 4.7 trở lên, bao gồm Opus 5 và Sonnet 5, dùng tokenizer mới tạo ra nhiều hơn khoảng 30 phần trăm token cho cùng một văn bản so với Sonnet 4.6 trở xuống. Claude Haiku 4.5 dùng tokenizer cũ. Vì vậy, số đếm đo trên Haiku 4.5 sẽ thấp hơn số đếm trên Sonnet 5 với cùng một input. Điều này có nghĩa so sánh trực tiếp giá trên mỗi triệu token qua ranh giới đó là không công bằng. Hãy đếm cùng một prompt trên cả hai model trước khi quyết định.
Claude tính phí bao nhiêu trên mỗi triệu token
Dữ liệu đằng sau biểu đồ này
[
{
"label": "Haiku 4.5",
"input_usd": 1,
"output_usd": 5
},
{
"label": "Sonnet 5",
"input_usd": 2,
"output_usd": 10
},
{
"label": "Sonnet 4.6",
"input_usd": 3,
"output_usd": 15
},
{
"label": "Opus 5",
"input_usd": 5,
"output_usd": 25
}
]Claude Sonnet 5 có giá $2 cho input và $10 cho output. Ban đầu Anthropic áp dụng mức giá này như giá giới thiệu đến hết ngày 31 August 2026, sau đó giữ nguyên làm giá tiêu chuẩn và hủy kế hoạch tăng lên $3 và $15. Claude Opus 5 có giá $5 và $25. Các model Fable có mức giá cao hơn hẳn: Claude Fable 5 và Claude Fable 5.1 mới hơn đều có giá $10 cho input và $50 cho output, vì vậy mức giá đó có đáng trả hay không tùy vào những tác vụ bạn thực sự giao cho model.
Dòng model hiện tại của Anthropic mới hơn các model được tính giá trên trang này. Claude Opus 5.5 có giá $4 cho input và $20 cho output, Claude Sonnet 5.5 có giá $2 và $10, còn Claude Haiku 5.5 có giá từ $0.10 và $0.50. Opus 5, Sonnet 5, Haiku 4.5 và Fable 5 hiện được liệt kê là các model legacy nhưng vẫn có thể sử dụng, nên các ví dụ bên dưới vẫn chạy đúng như đã viết. Claude Haiku 5.5 có giá bao nhiêu và phù hợp với vị trí nào giải thích về model mới có giá thấp nhất.
Mức giá có thể thay đổi. Hãy xem mọi con số trên trang này là ví dụ tính toán tại October 2026, đồng thời xác nhận số liệu hiện tại trên trang giá chính thức trước khi phê duyệt ngân sách.
Các mức giá này cho biết Claude tốn bao nhiêu, nhưng không cho biết Claude có phải lựa chọn rẻ hơn cho workload của bạn hay không. ba tác vụ được tính chi phí trên cả Claude và ChatGPT cho thấy API nào có lợi thế hơn trong từng trường hợp.
Độ dài context không làm thay đổi mức giá, trừ một ngoại lệ. Trên Claude 4.6 và các model mới hơn, ngoại trừ Claude Haiku 5.5, toàn bộ context window 1M token được tính theo mức giá tiêu chuẩn. Vì vậy, request 900,000 token có cùng đơn giá trên mỗi token như request 9,000 token. Prompt dài tốn nhiều hơn vì có nhiều token hơn, không có mức giá riêng cho long context. Claude Haiku 5.5 được tính theo độ dài prompt: request có prompt dài hơn 100,000 token sẽ bị tính $0.50 cho input và $2.50 cho output trên mỗi triệu token, thay vì $0.10 và $0.50; cache read và cache write cũng được tính vào ngưỡng này.
Phép tính vẫn đúng khi giá thay đổi
Mỗi hóa đơn gồm 2 phép nhân và 1 phép cộng.
cost = (input_tokens / 1,000,000) * input_rate
+ (output_tokens / 1,000,000) * output_rateViết dưới dạng code có thể chạy được:
INPUT_RATE = 2.00 # USD per million input tokens, Sonnet 5, October 2026
OUTPUT_RATE = 10.00 # USD per million output tokens
def cost(input_tokens, output_tokens):
return (input_tokens * INPUT_RATE + output_tokens * OUTPUT_RATE) / 1_000_000
print(f"{cost(4300, 400):.4f}")Lệnh này in ra 0.0126. Một request gửi 4,300 input token và nhận lại 400 output token có chi phí khoảng 1.3 cent trên Sonnet 5. Lưu 2 mức giá ở cùng một chỗ trong code. Khi giá thay đổi, bạn chỉ cần sửa 2 dòng, và mọi ước tính trong hệ thống sẽ được cập nhật theo.
Một ước tính thực tế cho một app
Xét một support assistant. System prompt và tài liệu sản phẩm của app có tổng cộng 4,000 token. Chúng được gửi trong mọi request vì Messages API là stateless và model không ghi nhớ gì giữa các lần gọi. Một câu hỏi của người dùng thêm khoảng 300 token. Một câu trả lời dài khoảng 400 token. Như vậy, mỗi request có 4,300 input token và 400 output token.
1 triệu input token tương đương khoảng 232 request với cấu hình này. Nếu có 1,000 request mỗi ngày, app tiêu thụ 4.3 triệu input token mỗi ngày. Vì vậy, "1M token" chỉ đủ cho chưa đến 6 giờ traffic.
Dữ liệu đằng sau biểu đồ này
[
{
"label": "Opus 5, list rates",
"cost_per_1k_usd": "31.50"
},
{
"label": "Sonnet 5, list rates",
"cost_per_1k_usd": "12.60"
},
{
"label": "Sonnet 5, Batch API",
"cost_per_1k_usd": "6.30"
},
{
"label": "Haiku 4.5, list rates",
"cost_per_1k_usd": "6.30"
},
{
"label": "Sonnet 5, warm prompt cache",
"cost_per_1k_usd": "5.40"
}
]Với Claude Opus 5, lượng traffic này có giá 31.50 USD cho mỗi 1,000 request. Với Sonnet 5, chi phí là 12.60 USD. Chuyển sang Claude Haiku 4.5 giảm chi phí xuống 6.30 USD, còn warm prompt cache trên Sonnet 5 giúp chi phí thấp hơn nữa, chỉ 5.40 USD.
Nhân với 30 để tính cho một tháng với lượng traffic này. Sonnet 5 theo giá niêm yết có chi phí khoảng 378 USD mỗi tháng. Cùng app đó với warm cache có chi phí khoảng 162 USD. Việc chọn model và quyết định dùng cache đều có giá trị lớn hơn bất kỳ mức chiết khấu nào bạn có thể thương lượng ở quy mô này. Chọn model nào là một câu hỏi riêng. Model rẻ nhất vượt qua được các bài evaluation của bạn sẽ là lựa chọn phù hợp: chọn giữa Opus, Sonnet và Haiku giải thích cách kiểm tra đúng cách.
Prompt caching giảm chi phí phần lặp lại
Prefix 4,000 token đó giống hệt nhau trong mọi request, và bạn phải trả toàn bộ giá input cho nó mỗi lần. Prompt caching lưu prefix đã được xử lý và tính phí thấp hơn khi tái sử dụng.
Trên các model có trong bảng giá và các ví dụ tính toán của trang này (Haiku 4.5, Sonnet 5, Sonnet 4.6 và Opus 5), cũng như trên Fable 5, một lần đọc cache có giá bằng 0.1 lần giá input cơ bản. Một số model mới hơn tính phí thấp hơn cho lần đọc: Opus 5.5 và Sonnet 5.5 tính 0.05 lần, còn Fable 5.1 và Mythos 5.1 tính 0.025 lần. Ghi cache có giá bằng 1.25 lần giá cơ bản với thời gian tồn tại 5 phút, hoặc 2 lần giá cơ bản với thời gian tồn tại 1 giờ. Vì vậy, trên các model có giá đọc bằng 0.1 lần, cache 5 phút hoàn vốn sau một lần đọc. Chi phí ghi cao hơn 0.25 lần, trong khi mỗi lần đọc tiết kiệm 0.9 lần. Cache 1 giờ cần 2 lần đọc để hòa vốn.
Cách đơn giản nhất để bật tính năng này là thêm một field cấp cao nhất:
curl https://api.anthropic.com/v1/messages \
-H "content-type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-5",
"max_tokens": 1024,
"cache_control": {"type": "ephemeral"},
"system": "You are a helpful assistant.",
"messages": [
{"role": "user", "content": "What are the key themes in Pride and Prejudice?"}
]
}'Sau đó đọc block usage được trả về:
{
"usage": {
"cache_creation_input_tokens": 5120,
"cache_read_input_tokens": 1800,
"input_tokens": 50,
"output_tokens": 503
}
}Ba bộ đếm input này được tính phí theo 3 mức khác nhau. Tổng của chúng là lượng input thực tế của bạn: total_input_tokens = cache_read_input_tokens + cache_creation_input_tokens + input_tokens. Ước tính chi phí chỉ đọc input_tokens sẽ sai lệch lớn khi caching được bật.
Có 2 yếu tố khiến cache không mang lại hiệu quả, và cả hai đều không báo lỗi.
Prefix phải giống hệt từng byte. Cache lookup là phép so khớp prefix. Vì vậy, timestamp hoặc tên người dùng ở đầu system prompt sẽ thay đổi prefix trong mỗi request. Khi đó, bạn phải trả 1.25 lần giá input cơ bản cho mỗi lần và không bao giờ có lần đọc cache. Dấu hiệu là cache_creation_input_tokens vẫn cao trong khi cache_read_input_tokens vẫn bằng 0. Đặt cache_control ở block cuối cùng có nội dung giống nhau giữa các request, rồi đặt mọi nội dung thay đổi sau block đó. Khi thay đổi định nghĩa tools, toàn bộ cache bên dưới sẽ bị vô hiệu hóa, vì quá trình vô hiệu hóa chạy theo thứ tự tools, sau đó system, rồi messages.
Prefix phải đủ dài. Độ dài tối thiểu có thể cache là 512 token trên Opus 5, 1,024 trên Sonnet 5 và 4,096 trên Haiku 4.5. Prompt ngắn hơn sẽ không được cache và cũng không trả về lỗi. Prefix 4,000 token trong ví dụ trên được cache trên Sonnet 5 nhưng không được cache trên Haiku 4.5, vì 4,000 thấp hơn ngưỡng tối thiểu của model đó. Khi cả hai bộ đếm đều bằng 0, không có nội dung nào được cache.
Xử lý theo batch giảm một nửa chi phí
Batch API xử lý request bất đồng bộ, với mức giảm 50 percent cho cả input và output. Trong ví dụ trên, chi phí giảm từ $12.60 trên mỗi 1,000 request xuống còn $6.30. Mức giảm giá này được cộng dồn với prompt caching, vì vậy batch job có cache là cách rẻ nhất để chạy các tác vụ hàng loạt.
Đổi lại là latency cao hơn. Vì vậy, batch không phù hợp với các tác vụ mà người dùng phải ngồi chờ kết quả. Batch phù hợp để chạy phân loại qua đêm và backfill tài liệu.
Chi phí chat tăng trong một cuộc hội thoại
Vì API không lưu state, client của bạn gửi lại toàn bộ cuộc hội thoại trong mỗi lượt. Do đó, lượng token trong một chat tăng theo bình phương độ dài cuộc hội thoại, không tăng theo đường thẳng.
Giả sử mỗi lượt trung bình có 500 token. Lượt 1 gửi 500 input token. Lượt 2 gửi 1,000. Lượt 20 gửi 10,000. Cộng theo công thức n(n+1)/2, một cuộc hội thoại 20 lượt đã gửi khoảng 105,000 input token, trong khi toàn bộ transcript chỉ dài 10,000 token.
Đó là lý do một tính năng chat tốn nhiều hơn mức transcript cho thấy, đồng thời việc cache phần prefix ổn định hoặc tóm tắt các lượt cũ sẽ mang lại hiệu quả trên các thread dài. Một agent lặp qua các tool call cũng có dạng tăng tương tự, thậm chí tệ hơn: mọi kết quả của tool vẫn nằm trong history và được gửi lại trong mỗi lượt sau đó. Đặt giới hạn chi tiêu cứng cho agent tự chạy đặc biệt quan trọng trong trường hợp này, vì mức tăng đó diễn ra tự động và không có ai theo dõi.
Đếm token trước khi đoán
Không nên suy ra số token từ số từ. API tự đếm token cho bạn, miễn phí, với rate limit riêng không dùng chung với việc tạo message.
curl https://api.anthropic.com/v1/messages/count_tokens \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "content-type: application/json" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-5",
"system": "You are a scientist",
"messages": [{
"role": "user",
"content": "Hello, Claude"
}]
}'Response chứa một field:
{ "input_tokens": 14 }Gửi system prompt và các định nghĩa tool thực tế của bạn, kèm một user message đại diện, rồi đưa con số này vào hàm chi phí ở trên. Endpoint nhận cùng body như message request, nên cả image và PDF được gửi dưới dạng base64 cũng được đếm chính xác. Endpoint từ chối các server tool như web search và web fetch, cũng như image hoặc document được truyền bằng URL hay file reference. Có 2 điểm cần lưu ý. Đây là con số ước tính và có thể chênh lệch nhẹ so với con số được tính phí. Ngoài ra, số token được đo bằng tokenizer của model bạn truyền vào, nên hãy truyền đúng model bạn sẽ thực sự chạy.
Không thể đếm trước output token vì chúng chưa tồn tại. Giới hạn số lượng bằng max_tokens, sau đó đo phân phối thực tế từ usage.output_tokens trên traffic thực.
Những khoản nào khác được tính vào hóa đơn
Token chiếm phần lớn hóa đơn. Một số khoản không phải token và thường khiến người dùng bất ngờ.
- Định nghĩa tool được tính thành input token trong mọi request. Riêng system prompt cho cơ chế sử dụng tool đã thêm 286 đến 406 token trên Opus 5, chưa tính schema của bạn. 10 mô tả tool dài dòng có thể làm prompt nhỏ tăng gấp đôi.
- Web search có giá $10 cho mỗi 1,000 lượt tìm kiếm, chưa tính số token mà kết quả sử dụng khi được đưa vào context.
- Web fetch không có phí riêng, nhưng trang được tải về sẽ trở thành input token. Một trang tài liệu 100 kB có khoảng 25,000 token.
- Yêu cầu inference chỉ dùng máy chủ tại Mỹ bằng
inference_geotrên Claude 4.6 trở lên sẽ áp dụng hệ số 1.1 cho mọi nhóm token, bao gồm cả cache read và cache write.
Việc API có phải lựa chọn nên mua hay không còn phụ thuộc vào volume của bạn. Thường câu hỏi này xuất hiện khi bạn chạm giới hạn sử dụng của một plan. Các cách xử lý khi chạm giới hạn trải từ việc chờ hết khoảng thời gian giới hạn đến chuyển workload đó sang các API call tính phí theo mức sử dụng. Nếu mức sử dụng dưới một ngưỡng nhất định, plan tháng cố định thường có lợi hơn hẳn. So sánh API với một gói Claude sẽ tính cụ thể bằng các số liệu thực tế.
FAQ
1M token trong Claude có giá bao nhiêu?
Điều này phụ thuộc vào model và việc token là input hay output. Tính đến tháng 10 năm 2026, 1 triệu input token có giá $1 trên Claude Haiku 4.5, $2 trên Claude Sonnet 5 và $5 trên Claude Opus 5. Claude Haiku 5.5 mới hơn có giá khởi điểm $0.10 cho mỗi triệu input token với prompt tối đa 100,000 token, và tính $0.50 cho phần vượt quá mức đó. Trên mỗi model này, output có giá cao gấp 5 lần input. Mức giá có thể thay đổi, vì vậy hãy xác nhận trên trang pricing chính thức trước khi đưa một con số vào ngân sách.
1M token có giống 1M từ không?
Không. Với các model trước Claude Opus 4.7, Anthropic ước tính 1 token tương đương khoảng 3.5 ký tự tiếng Anh và cho biết 1 triệu token chứa khoảng 750,000 từ. Với tokenizer mới được Claude Opus 4.7 và các phiên bản sau sử dụng, 1 triệu token chứa khoảng 555,000 từ, vì tokenizer này tạo ra nhiều hơn khoảng 30 phần trăm token cho cùng một văn bản so với Claude Sonnet 4.6 và các phiên bản trước đó. Những tỷ lệ này chỉ mang tính tham khảo. Code, JSON và các ngôn ngữ không phải tiếng Anh dùng nhiều token hơn trên mỗi từ, đồng thời số lượng token không thể dùng trực tiếp giữa các thế hệ model khác nhau. Hãy đo bằng endpoint /v1/messages/count_tokens miễn phí và truyền vào model bạn dự định chạy.
Prompt caching có luôn tiết kiệm chi phí không?
Không. Ghi cache 5 phút có giá bằng 1.25 lần mức input cơ bản. Vì vậy, prefix được ghi cache nhưng không bao giờ được đọc lại sẽ đắt hơn 25 phần trăm so với gửi trực tiếp. Cache hoàn vốn ngay từ lần đọc đầu tiên. Có 2 trường hợp cache không hoạt động, và cả 2 đều không báo lỗi. Nếu prefix được cache thay đổi giữa các request, lookup sẽ không bao giờ khớp vì đây là phép khớp prefix chính xác. Nếu prefix ngắn hơn độ dài tối thiểu model cho phép cache, cụ thể là 1,024 token trên Sonnet 5 và 4,096 token trên Haiku 4.5, thì không có gì được cache và cũng không trả về lỗi. Khi cả cache_creation_input_tokens và cache_read_input_tokens đều bằng 0, cache không hoạt động.
Vì sao hóa đơn tăng nhanh hơn số lượng message?
Vì toàn bộ cuộc hội thoại được gửi lại trong mỗi turn. Messages API không lưu state, nên turn 20 của một cuộc trò chuyện chứa lại toàn bộ 19 turn trước đó dưới dạng input. Nếu mỗi turn trung bình có 500 token, một cuộc trò chuyện 20 turn sẽ gửi khoảng 105,000 input token, trong khi transcript chỉ dài 10,000 token. Agent loop cũng hoạt động như vậy, vì mọi tool result vẫn được giữ trong history. Hãy cache prefix ổn định, hoặc tóm tắt các turn cũ rồi loại chúng khỏi request.