Giới hạn free tier OpenRouter và cách sửa lỗi 429

Updated 2026-07-15

Các biến thể model miễn phí của OpenRouter bị giới hạn khoảng 20 request mỗi phút, cộng 50 request mỗi ngày nếu tài khoản của bạn mua dưới $10 credit trọn đời, hoặc 1,000 mỗi ngày khi vượt ngưỡng đó. Lỗi 429 nghĩa là bạn chạm một trong các trần đó, hoặc pool miễn phí chung đang bão hòa vào thời điểm đó.

Trả lời nhanh: các giới hạn free tier chính xác

OpenRouter giới hạn sử dụng miễn phí trên hai trục: một trần theo phút và một ngân sách request theo ngày. Trần mỗi phút cho các biến thể model miễn phí (model ID kết thúc bằng :free) là 20 request mỗi phút. Ngân sách hàng ngày phụ thuộc vào việc tài khoản của bạn đã từng mua ít nhất $10 credit hay chưa: dưới ngưỡng trọn đời đó bạn được 50 request model miễn phí mỗi ngày, đạt hoặc vượt ngưỡng đó bạn được 1,000 mỗi ngày. Đây là các con số OpenRouter công bố tính đến đầu năm 2026. Chúng từng thay đổi trước đây (trần hàng ngày từng cao hơn), nên hãy xem bảng này là mốc hiện tại chứ không phải một cam kết vĩnh viễn, và xác nhận lại trên chính key của bạn bằng cách kiểm tra ở phần tiếp theo. Một phản hồi 429 nghĩa là bạn đã vượt một trong các trần này, hoặc nhà cung cấp upstream phục vụ model miễn phí đó đã hết công suất dù quota cá nhân của bạn vẫn ổn. Phần còn lại của bài này đi qua cách phân biệt bạn chạm phải trường hợp nào và nên làm gì.

Giới hạn free tier của OpenRouter được công bố tính đến đầu 2026. Có thể thay đổi.
Giới hạnGiá trịÁp dụng khi
Request mỗi phút20 rpmMọi biến thể model :free, theo từng tài khoản
Request mỗi ngày50Dưới $10 credit mua trọn đời
Request mỗi ngày1,000Từ $10 credit mua trọn đời trở lên
Model trả phíGiới hạn riêng, cao hơn nhiềuBất kỳ model không miễn phí nào, tính phí theo token

Free tier thực sự hoạt động như thế nào

Các model miễn phí trên OpenRouter là các mục catalog riêng biệt với hậu tố :free. Chúng được phục vụ bởi các nhà cung cấp tặng hoặc trợ giá công suất, đó là lý do tính khả dụng của chúng dao động mạnh hơn nhiều so với các biến thể trả phí của cùng bộ trọng số. Có ba chi tiết khiến người dùng bị vấp. Thứ nhất, trần hàng ngày áp dụng cho toàn tài khoản: 50 request trải đều trên bất kỳ tổ hợp model miễn phí nào, không phải 50 cho mỗi model. Thứ hai, ngưỡng $10 tính theo tổng credit mua trọn đời, không phải số dư hiện tại. Mua $10 một lần giữ bạn ở mức 1,000 request mỗi ngày ngay cả sau khi bạn tiêu hết số đó. Thứ ba, giới hạn áp dụng theo tài khoản, nên tạo thêm API key trong cùng tài khoản không thêm được gì. Bạn có thể kiểm tra chính xác vị trí của key mình. Response bao gồm is_free_tier, mức sử dụng của bạn cho đến hiện tại, và object rate_limit đang áp dụng cho key của bạn:

curl https://openrouter.ai/api/v1/auth/key \
  -H "Authorization: Bearer $OPENROUTER_API_KEY"

# Các trường response đáng đọc:
# "is_free_tier": true    -> dưới ngưỡng $10 trọn đời
# "usage": 1.42           -> credit đã tiêu thụ
# "rate_limit": {...}     -> giới hạn theo khoảng thời gian đang áp dụng cho key này

Vì sao lỗi 429 tăng vọt vào giờ cao điểm

Trần cá nhân của bạn chỉ là một nửa câu chuyện. Công suất miễn phí là một pool dùng chung, và OpenRouter chỉ có thể định tuyến một request miễn phí tới nhà cung cấp còn công suất trợ giá dư tại thời điểm đó. Khi một model miễn phí phổ biến bão hòa, bạn nhận lỗi 429 hoặc lỗi upstream ngay cả khi bạn chỉ mới gửi vài request trong ngày. Báo cáo từ cộng đồng liên tục mô tả buổi tối theo giờ Mỹ và cuối tuần là khung giờ tệ nhất, với cùng một request thành công ngay lập tức vào giờ thấp điểm. Đó là quan sát ước tính, không phải con số được công bố, nhưng chúng lặp lại đủ thường xuyên để bạn lập kế hoạch dựa vào. Các frontend chat làm vấn đề trầm trọng hơn. Giao diện kiểu SillyTavern và JanitorAI gửi một request completion mới cho mỗi lần swipe, regenerate, và mỗi lượt trong group chat, và một số cấu hình proxy tự động retry khi thất bại. Một người dùng cảm thấy như mình đã gửi 15 tin nhắn có thể đã tạo ra 40 đến 50 request, chiếm trọn ngân sách hàng ngày của một tài khoản dưới ngưỡng $10. Retry tự động quá mạnh cũng làm sâu thêm tình trạng nghẽn giờ cao điểm cho mọi người, đó là lý do backoff có kỷ luật lại quan trọng. Cách chẩn đoán thực tế: nếu lỗi 429 dừng lại khi bạn chờ đến lúc reset hàng ngày, bạn đã chạm quota. Nếu chúng xuất hiện rồi biến mất trong cùng một giờ trong khi số request của bạn còn thấp, bạn đang gặp tình trạng nghẽn pool.

Các cách sửa, theo thứ tự công sức

Nếu bạn vẫn giữ traffic trên free tier, client tối thiểu khả dụng nên xử lý 429 một cách rõ ràng thay vì thất bại hoặc retry mù quáng:

  • Đọc nội dung lỗi trước tiên. Lỗi 429 của OpenRouter phân biệt giữa trần mỗi phút của bạn, quota hàng ngày đã cạn, và tình trạng nghẽn upstream. Sửa đúng cái bạn thực sự gặp phải.
  • Tôn trọng Retry-After và backoff theo cấp số nhân kèm jitter. Gọi liên tục vào endpoint chỉ khiến bạn bị rate limit lâu hơn và làm nghẽn thêm.
  • Vượt ngưỡng $10 credit trọn đời một lần. Nó nâng trần hàng ngày từ 50 lên 1,000 request và là cách sửa hiệu quả nhất cho lỗi 429 do hết quota hàng ngày.
  • Chuyển traffic quan trọng sang biến thể trả phí của cùng model. Các model nhóm DeepSeek có giá dưới một đô la mỗi triệu token, nên một buổi tối chat nặng thường chỉ tốn vài xu.
  • Cắt giảm lượng request từ phía client: tắt tự động regenerate, tránh swipe không cần thiết, và cắt bớt context để mỗi lần retry rẻ hơn khi nó xảy ra.
import random
import time

import requests

def chat(payload: dict, key: str, retries: int = 5) -> dict:
    for attempt in range(retries):
        r = requests.post(
            "https://openrouter.ai/api/v1/chat/completions",
            headers={"Authorization": f"Bearer {key}"},
            json=payload,
            timeout=120,
        )
        if r.status_code != 429:
            r.raise_for_status()
            return r.json()
        wait = float(r.headers.get("Retry-After", 2 ** attempt + random.random()))
        time.sleep(wait)
    raise RuntimeError("Still rate limited after all retries")

Các lựa chọn thay thế khi 50 request mỗi ngày không đủ

Nếu pattern sử dụng của bạn liên tục vượt ngân sách miễn phí, có bốn hướng đi thực tế. Lựa chọn đúng phụ thuộc vào việc điểm nghẽn của bạn là quota hàng ngày, tình trạng nghẽn giờ cao điểm, hay cả hai. Lưu ý là các lựa chọn trả phí chủ yếu khác nhau ở chi phí phụ trội, không phải ở hình dạng request: tất cả đều dùng chung định dạng chat completions tương thích OpenAI, nên việc chuyển đổi chỉ là thay base URL và key thay vì viết lại code.

Lựa chọnMô hình chi phíHành vi rate limitĐánh đổi
Biến thể :free của OpenRouter$020 rpm; 50 hoặc 1,000 request/ngàyPool dùng chung, nghẽn giờ cao điểm
Model trả phí của OpenRouterTheo token, nạp credit trướcCao hơn nhiều, mở rộng theo tài khoảnPhí nền tảng khi mua credit
API trực tiếp từ nhà cung cấpTheo token với giá niêm yết chính thứcTier riêng theo từng nhà cung cấpKey và billing riêng cho từng nhà cung cấp
Gateway trả theo lượng dùng trực tiếpTheo token, không subscriptionCông suất trả phí, không tranh chấp pool miễn phíBạn trả tiền ngay từ request đầu tiên
Tự host open-weightPhần cứng và điện năngChỉ giới hạn bởi GPU của bạnCông sức thiết lập, trần kích thước model

Chạy một chat frontend trên gateway trực tiếp

Một gateway trực tiếp giữ nguyên định dạng request tương thích OpenAI nhưng loại bỏ hàng đợi pool miễn phí, vì mỗi request đều là công suất trả phí. APIsRouter là một ví dụ: trả theo lượng dùng không subscription, và checkout không cần đăng ký tại /topup nơi bạn trả tiền trước và API key gửi tới qua email. Model toàn cầu chạy giá thấp hơn 20% so với giá niêm yết chính thức, model Trung Quốc thấp hơn giá chính thức của họ, và lần nạp đầu tiên gấp đôi số dư ban đầu. Thiết lập frontend giống hệt những gì bạn đã làm với OpenRouter. Trong SillyTavern, dán base URL kết thúc bằng /v1 (https://api.apisrouter.com/v1) và danh sách model tự động điền từ /v1/models bằng key của bạn. Cấu hình proxy của JanitorAI cần endpoint đầy đủ thay vào đó: https://api.apisrouter.com/v1/chat/completions, cùng tên model và API key. Với traffic chat nhân vật và roleplay, dòng DeepSeek V4 là lựa chọn được cộng đồng ưa chuộng nhất về giá trị, với MiMo, GLM-5, và Kimi K2.6 là các lựa chọn giá trị bổ sung. Claude Sonnet 4.6 viết văn bản mạnh nhất cho nội dung sáng tạo an toàn nơi công sở theo chính sách nội dung của Anthropic.

ModelModel IDInput / output mỗi 1M token
DeepSeek V4 Flashdeepseek-v4-flash$0.126 / $0.252
DeepSeek V4 Prodeepseek-v4-pro$0.3915 / $0.783
GLM-5glm-5$0.514 / $2.314
Gemini 3.5 Flashgemini-3.5-flash$1.20 / $7.20
Claude Sonnet 4.6claude-sonnet-4-6$2.40 / $12.00
curl https://api.apisrouter.com/v1/chat/completions \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-v4-flash",
    "messages": [{"role": "user", "content": "Hello"}]
  }'

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

OpenRouter có miễn phí để dùng không?

Một phần. OpenRouter liệt kê các biến thể miễn phí của một số model (ID kết thúc bằng :free) không tốn gì nhưng bị giới hạn khoảng 20 request mỗi phút và 50 hoặc 1,000 request mỗi ngày, tùy vào việc bạn đã từng mua $10 credit hay chưa. Mọi danh sách model khác đều trả phí theo token.

Vì sao tôi liên tục gặp lỗi 429 trên OpenRouter?

Lỗi 429 nghĩa là bạn đã vượt trần mỗi phút, cạn ngân sách request miễn phí hàng ngày, hoặc công suất upstream dùng chung cho model miễn phí đó đang bão hòa. Nội dung lỗi cho biết nguyên nhân nào. Lỗi 429 do quota kéo dài đến khi reset hàng ngày; lỗi 429 do nghẽn thường hết vào giờ thấp điểm.

Làm sao để tăng rate limit trên OpenRouter?

Mua $10 credit một lần. Ngưỡng trọn đời đó nâng trần hàng ngày của model miễn phí từ 50 lên 1,000 request. Ngoài ra, các lựa chọn khác là chuyển traffic sang biến thể model trả phí, giãn request bằng backoff, hoặc định tuyến phần dư qua một nhà cung cấp hay gateway khác.

Model miễn phí của OpenRouter có giới hạn hàng ngày không?

Có. Ngân sách hàng ngày dùng chung cho mọi model miễn phí trên tài khoản của bạn: 50 request mỗi ngày nếu dưới $10 credit mua trọn đời, 1,000 mỗi ngày nếu đạt hoặc vượt ngưỡng đó. Nó áp dụng ở cấp tài khoản, nên thêm API key trên cùng tài khoản không thêm quota.

Free tier có đủ cho JanitorAI hoặc SillyTavern không?

Để test nhẹ thì có. Trên thực tế mỗi lần swipe, regenerate, và lượt group là một request riêng, nên một phiên hoạt động có thể tiêu hết 50 request rất nhanh, và tình trạng nghẽn giờ cao điểm chồng thêm lỗi. Người dùng nặng thường chuyển sang model trả phí giá rẻ. Dù bạn dùng gì, hãy tuân theo ToS của nền tảng frontend, bao gồm yêu cầu độ tuổi, và chính sách nội dung của nhà cung cấp model.