Trong bài này, MTok nghĩa là 1.000.000 token. Tài liệu pricing của Anthropic tách riêng Base Input Tokens, Cache Writes, Cache Hits và Output Tokens, nên khi làm mô hình chi phí bạn cũng nên tách riêng các dòng này.
| Hạng mục | Đơn giá | Cách hiểu |
|---|---|---|
| Base input tokens | $5 / MTok | Token đầu vào thông thường, không tính như cache write hoặc cache read. |
| Output tokens | $25 / MTok | Token do Claude tạo ra trong câu trả lời. |
| Prompt cache write, TTL 5 phút | $6.25 / MTok | Lần ghi nội dung prompt vào cache để có thể tái sử dụng, với thời gian hiệu lực 5 phút. |
| Prompt cache write, TTL 1 giờ | $10 / MTok | Lần ghi prompt vào cache với thời gian hiệu lực 1 giờ. |
| Cache read / hit | $0.50 / MTok | Khi request đọc lại nội dung đã có trong cache. |
Điểm dễ sai nhất là gom tất cả token vào một cột. Với Opus 4.7, input, output, cache write và cache read có đơn giá khác nhau; nếu app của bạn dùng prompt caching, chi phí phải được tách theo từng loại token.
Trường hợp đơn giản nhất:
chi phí = input_tokens / 1,000,000 × 5 + output_tokens / 1,000,000 × 25
Ví dụ một request có 200.000 input tokens và 20.000 output tokens. Nếu chưa tính cache, chi phí là $1.00 + $0.50 = $1.50. Đây chỉ là phép tính theo đơn giá input/output của Anthropic API, chưa bao gồm khác biệt nếu bạn đi qua nền tảng khác.
Khi bật prompt caching, bạn nên cộng từng phần:
chi phí = base_input_tokens / 1,000,000 × 5 + output_tokens / 1,000,000 × 25 + cache_write_5m_tokens / 1,000,000 × 6.25 + cache_write_1h_tokens / 1,000,000 × 10 + cache_read_input_tokens / 1,000,000 × 0.50
Nếu chỉ dùng một loại TTL cache, bạn chỉ giữ dòng cache write tương ứng. Tài liệu streaming của Anthropic cho thấy usage có thể bao gồm các trường như input_tokens, output_tokens, cache_creation_input_tokens và cache_read_input_tokens; tài liệu pricing cũng tách cache write và cache hit thành các hạng mục tính phí riêng.
Đừng ước lượng chi phí API bằng số ký tự, số từ tiếng Anh hay số chữ tiếng Việt. Anthropic có endpoint /v1/messages/count_tokens để đếm token của message trước khi gửi đến Claude. Endpoint này nhận cấu trúc đầu vào tương tự khi tạo message, bao gồm system prompts, tools, images và PDFs, rồi trả về tổng số input tokens; tất cả active models đều hỗ trợ token counting.
Quy trình an toàn là lấy đúng payload bạn định gửi vào Messages API, bao gồm system prompt, messages, tools, ảnh hoặc PDF nếu có, rồi đưa qua count_tokens. Như vậy bạn có thể ước tính chi phí input trước khi gọi model thật, đồng thời đặt cảnh báo ngân sách hoặc giới hạn chi phí trong sản phẩm.
Khi request hoàn tất, hãy lưu trường usage trong API response thay vì suy ngược từ độ dài văn bản đầu ra. Ví dụ của Messages API cho thấy response usage có thể gồm input_tokens và output_tokens; tài liệu streaming cũng hiển thị các trường liên quan đến cache như cache_creation_input_tokens và cache_read_input_tokens.
Nếu dùng streaming, cần đặc biệt chú ý: Anthropic nói token counts trong message_delta.usage là giá trị tích lũy, không phải phần tăng thêm của từng event. Nếu bạn cộng trực tiếp mọi delta, cùng một lượng token có thể bị tính lặp.
Log từng response rất hữu ích cho kiểm soát chi phí theo request. Nhưng với báo cáo tháng, phân bổ chi phí theo workspace hoặc phân tích xu hướng dài hạn, nên dùng Usage & Cost Admin API của Anthropic. Tài liệu chính thức cho biết API này cung cấp quyền truy cập có lập trình và chi tiết vào dữ liệu usage và cost lịch sử, đồng thời có thể tách báo cáo theo model, workspace và service tier.
Nói ngắn gọn: app có thể lưu usage cho kiểm soát tức thời; khi chốt sổ hoặc đối soát nội bộ, hãy dựa vào dữ liệu lịch sử usage/cost từ Usage & Cost Admin API.
Opus 4.7 dùng tokenizer mới. Theo tài liệu của Anthropic, khi xử lý văn bản, tokenizer này có thể dùng khoảng 1x đến 1,35x số token so với các model trước, tức tối đa khoảng 35% nhiều hơn tùy nội dung; cùng một input khi gọi /v1/messages/count_tokens trên Opus 4.7 và Opus 4.6 có thể trả về số token khác nhau.
Vì vậy, mức $5 input và $25 output mỗi MTok không có nghĩa là hóa đơn sau nâng cấp chắc chắn giữ nguyên. Nếu chuyển từ Opus 4.6 hoặc model cũ hơn, hãy lấy các prompt có lưu lượng cao, prompt context dài, payload có tool definitions và workflow tốn kém nhất để chạy lại /v1/messages/count_tokens, rồi cập nhật cảnh báo, rate limit và trần chi phí.
claude-opus-4-7./v1/messages/count_tokens trên các payload đại diện.input_tokens, output_tokens, cache write và cache read; đừng chỉ lưu một con số total token.message_delta.usage là giá trị tích lũy, không cộng dồn từng event như phần tăng thêm.Tóm lại, giá cơ bản của Claude Opus 4.7 API không khó nhớ: input $5/MTok, output $25/MTok. Phần quan trọng là đếm token trước bằng count_tokens, ghi nhận usage sau khi gọi API, và đưa prompt caching cùng tokenizer mới vào mô hình chi phí.