Chat AIMô hìnhGiáTài liệuHướng dẫn

Chi phí API AI tính theo token thế nào? Công thức và ví dụ

Chi phí mỗi lần gọi API = (token đầu vào ÷ 1.000.000 × giá đầu vào) + (token đầu ra ÷ 1.000.000 × giá đầu ra). Đầu vào gồm câu hỏi, lịch sử chat và tài liệu gửi kèm; đầu ra là câu trả lời. Giá mỗi mô hình khác nhau, xem ở trang mô hình. Số token thật của từng lần gọi hiện trong mục Mức dùng.

Cập nhật 2026-11-01 · MaCloud AI

Token là gì?

Token là đơn vị mà mô hình AI dùng để đọc và viết chữ. Một token có thể là một từ ngắn, một phần của từ, dấu câu hoặc khoảng trắng. Tiếng Việt có dấu thường tốn nhiều token hơn tiếng Anh cho cùng một ý, vì các ký tự có dấu hay bị tách nhỏ hơn.

Bạn không cần tự đếm token. Mỗi lần gọi API, kết quả trả về có trường usage cho biết số token đầu vào và đầu ra, và mục Mức dùng trong bảng điều khiển cũng ghi lại các con số này.

Công thức tính chi phí

Giá trên trang mô hình là giá cho mỗi 1 triệu token, đầu vào và đầu ra tính riêng:

Chi phí = (token vào / 1.000.000 x giá vào) + (token ra / 1.000.000 x giá ra)

Ví dụ dưới đây dùng số minh họa, không phải giá thật: giả sử một mô hình có giá đầu vào 100.000 ₫ và giá đầu ra 400.000 ₫ cho mỗi 1 triệu token. Một lượt chat có 2.000 token đầu vào và 800 token đầu ra:

PhầnPhép tính (số minh họa)Kết quả
Đầu vào2.000 / 1.000.000 x 100.000 ₫200 ₫
Đầu ra800 / 1.000.000 x 400.000 ₫320 ₫
Tổng một lượt520 ₫

Giá thật của từng mô hình, hiển thị bằng đồng:

Giá thực tế hiện tại

Ước tính theo giá ở trang mô hình: mỗi lượt chat 2.000 token input và 500 token output. Số tiền trừ thực tế xem trong bảng điều khiển.

Mô hìnhMỗi lượt chat1.000 lượt chat
GEM 3.8 Flash6 ₫6.307 ₫
TT-6 Luna15 ₫15.140 ₫
TT-6.1 Terra10 ₫10.333 ₫
HK-5.55 ₫4.960 ₫
GEM 4 Argon120 ₫120.427 ₫
TT-6.1 Sol21 ₫20.665 ₫

Vì sao token đầu ra thường đắt hơn?

Với hầu hết mô hình, giá đầu ra cao hơn giá đầu vào vì mô hình phải sinh từng token một. Vì vậy câu trả lời dài tốn tiền nhanh hơn câu hỏi dài. Nếu bạn chỉ cần câu trả lời ngắn, hãy nói rõ trong prompt ("trả lời tối đa 3 câu") và đặt max_tokens để giới hạn.

Vì sao hội thoại càng dài càng tốn?

API không tự nhớ hội thoại. Muốn AI nhớ những gì đã nói, ứng dụng phải gửi lại toàn bộ lịch sử ở mỗi lượt. Lượt thứ 10 sẽ gửi cả 9 lượt trước, nên token đầu vào tăng dần dù câu hỏi mới rất ngắn.

LượtGửi điToken đầu vào (ước lượng)
1Câu hỏi 1khoảng 300
5Câu hỏi 1 đến 5 và 4 câu trả lờikhoảng 3.000
10Câu hỏi 1 đến 10 và 9 câu trả lờikhoảng 6.500

Điều này cũng đúng với Claude Code: mỗi bước gửi lại nội dung file và lịch sử phiên, nên phiên dài tốn hơn hẳn. Mẹo tiết kiệm có trong bắt đầu với Claude Code.

Cách ước tính chi phí trước khi chạy thật

  1. Chọn vài trường hợp điển hình của bạn, ví dụ 20 tin nhắn khách hỏi shop online.
  2. Gửi thử qua API hoặc /chat với mô hình định dùng.
  3. Vào bảng điều khiển → Mức dùng, ghi lại token đầu vào, đầu ra và chi phí của từng lần.
  4. Lấy chi phí trung bình mỗi lần nhân với số lần dự kiến mỗi tháng.
  5. So sánh vài mô hình theo cách đó rồi chọn mô hình hợp ngân sách.

Mục Mức dùng ở menu bên trái bảng điều khiển hiện 50 lần gọi gần nhất, mỗi dòng có mô hình, token đầu vào, token đầu ra và chi phí. Đây là số liệu chính xác nhất, dùng nó thay cho ước lượng.

Muốn xem token ngay trong code:

import os
from openai import OpenAI

client = OpenAI(base_url="https://api.macloudai.com/v1", api_key=os.environ["MACLOUD_API_KEY"])
r = client.chat.completions.create(
    model="tt-6-luna",
    messages=[{"role": "user", "content": "Giải thích token là gì trong 2 câu."}],
    max_tokens=200,
)
print(r.choices[0].message.content)
print("Token vào:", r.usage.prompt_tokens, "| Token ra:", r.usage.completion_tokens)

Theo dõi chi phí theo dự án

Nếu bạn là freelancer làm cho nhiều khách hoặc một nhóm nhỏ chạy nhiều ứng dụng, hãy tạo mỗi dự án một API key với tên dễ nhận ra, ví dụ shop-quan-ao-q1, bot-zalo-spa, claude-code. Mọi key dùng chung một số dư, nhưng nhờ tên key bạn biết ứng dụng nào đang tốn nhiều để tối ưu, và có số liệu để báo giá cho khách.

Khi báo giá một dự án có AI cho khách hàng, hãy chạy thử với dữ liệu thật trước, lấy chi phí trung bình mỗi lần gọi trong mục Mức dùng, rồi cộng thêm một khoản dự phòng vì độ dài câu trả lời mỗi lần mỗi khác.

Mẹo giảm chi phí token

  • Chọn đúng mô hình: việc đơn giản dùng mô hình rẻ, xem nên chọn mô hình nào.
  • Giữ system prompt ngắn gọn, vì nó bị gửi lại ở mọi lượt.
  • Chỉ giữ vài lượt hội thoại gần nhất, hoặc tóm tắt lịch sử cũ thành một đoạn ngắn.
  • Đặt max_tokens và yêu cầu độ dài trả lời rõ ràng.
  • Đừng gửi cả tài liệu dài nếu chỉ cần một phần; cắt đúng đoạn liên quan.

Tiền được trừ vào số dư sau mỗi lần gọi; không có phí tháng hay mức chi tối thiểu. So sánh với gói tháng xem trả theo mức dùng có rẻ hơn gói tháng không.

Câu hỏi thường gặp

Q11 triệu token là khoảng bao nhiêu chữ?
Tùy ngôn ngữ và nội dung. Tiếng Việt có dấu thường tốn nhiều token hơn tiếng Anh. Cách chắc nhất là gửi thử một đoạn văn của bạn và xem số token trong mục Mức dùng.
Q2Câu hỏi bị lỗi có bị tính tiền không?
Phí tính theo token mà mô hình đã xử lý. Các lỗi như key sai (401), hết số dư (403) hay sai tên mô hình (404) bị từ chối trước khi tới mô hình.
Q3Vì sao cùng một câu hỏi mà chi phí mỗi lần khác nhau?
Vì độ dài câu trả lời mỗi lần khác nhau, và nếu có lịch sử hội thoại thì token đầu vào cũng thay đổi.
Q4Giá hiển thị bằng đồng có thay đổi không?
Giá bằng đồng được quy đổi theo tỷ giá trong ngày, nên có thể dao động nhẹ. Số tiền trừ thực tế xem trong bảng điều khiển.
Q5Có cách nào đặt giới hạn chi tiêu không?
Bạn chỉ dùng được trong phạm vi số dư đã nạp; hết số dư thì yêu cầu bị từ chối. Nạp từng khoản nhỏ là một cách đơn giản để kiểm soát chi phí.

Hướng dẫn khác