Google AI Studio Free Tier Limits: What the Gemini API Allows in 2026

This page is about limits and money: what the Gemini API free tier lets one Google AI Studio project do per minute and per day, which models it covers, what you give up in data terms, and when the paid tier makes sense. If you want to wire Gemini to live X (Twitter) data through Gemini CLI, an MCP server or function calling, that integration how-to lives in our separate guide on using Gemini with the Twitter (X) API; here we only touch the integration where it changes how fast you burn a quota.
Every fact about Google's limits below comes from Google's own documentation (ai.google.dev/gemini-api/docs/rate-limits, /pricing, /billing, /tokens and the Gemini API terms) read for this page, and every number about X posts comes from our own measurement: a sample of public posts collected in 2026 through TwitterAPI.io, sized in characters and converted to estimated tokens with Google's published rule of about four characters per token. Where Google does not publish a figure, we say so instead of guessing.
How Google AI Studio free tier limits work
Google measures Gemini API usage on three dimensions. Requests per minute (RPM) counts calls, tokens per minute (TPM) counts input tokens, and requests per day (RPD) counts calls across a calendar day. Your usage is checked against each one separately, so a project with an RPM of 20 that sends 21 requests inside a minute gets an error even if it is far below its TPM and RPD. Google's own example uses exactly that RPM of 20 to explain the rule.
The unit is the project. The docs state that rate limits are applied per project, not per API key. Creating five keys in the same Google Cloud project does not give you five quotas; they all draw from one bucket. If you need isolation between apps, they need separate projects, and Google's terms still apply to each.
The day ends at midnight Pacific. RPD quotas reset at midnight Pacific time, not at midnight in your time zone and not on a rolling 24-hour window. A job in Europe that starts at 08:00 local time is starting late in the Pacific day, which matters if you plan to spend the whole daily allowance in one batch run.
Some limits only exist for some models. Image-generation models have an images-per-minute (IPM) limit, some models carry a tokens-per-day (TPD) limit, and built-in tools have their own caps. Grounding with Google Search on Gemini 3 and newer models defaults to 1,500 requests per day per project on the Gemini Developer API; on the free tier the pricing page lists Search grounding for Gemini 2.5 Flash and Flash-Lite at up to 500 RPD, shared between the two, and not available for Pro.
Preview models are tighter. The rate-limits page says limits are more restricted for experimental and preview models, and that specified rate limits are not guaranteed and actual capacity may vary. Build retries in from the start rather than treating a published figure as a contract.
Why there is no per-model free-tier table any more
Searchers looking for 'google ai studio free tier limits 2026' usually want a table of RPM, TPM and RPD per model. Google's rate-limits documentation no longer contains one. The current page explains the three dimensions, the usage tiers and the Batch API caps, then links to 'View your active rate limits in AI Studio' and says rate limits depend on factors such as your usage tier and automatically update as your tier and account status change.
In practice that means the only authoritative free-tier numbers for your project are the ones on the AI Studio rate-limit page (aistudio.google.com/rate-limit) while you are signed in to that project. Blog posts and cheat sheets that print a single RPD for a model are quoting a snapshot, and when we compared several of them while researching this page they disagreed with each other. We do not reproduce any of those figures here.
What you can rely on. The structure is stable and documented: per-project counters, a midnight Pacific reset for RPD, stricter treatment of preview models, a separate spend-based limit that does not apply to the free tier, and automatic upgrades once billing is linked. The capacity math later on this page is built so you can plug in whatever RPD and TPM your own AI Studio page shows.
Which Gemini models are free on the free tier
The second limit is model access. Google's pricing page lists a Free Tier column for every model, and it reads either 'Free of charge' or 'Not available'. The table below copies that column for the main text models, together with the standard paid-tier price per 1 million tokens so you can see what each model costs once you leave the free tier.
Scheduled price changes. The pricing page shows dated changes for several models: Gemini 4 Argon moves from $2.00 / $10.00 to $4.00 / $20.00 per 1M input / output tokens on December 1, 2026, and Gemini 3.8 Flash and 3.6 Flash move from $0.75 / $3.75 to $1.50 / $7.50 on January 1, 2027. Output prices include thinking tokens.
Paid-only families. The Nano Banana image models (Gemini 2.5 Flash Image, 3.1 Flash Image, 3.1 Flash Lite Image, 3 Pro Image and Nano Banana 2.1) and the Gemini Omni Flash video model show 'Not available' in the free column. Gemini 4 Argon is described as not available on the free tier at all. The embedding models (Gemini Embedding and Gemini Embedding 2) are free of charge on the free tier.
Feature access. The free plan card lists 'Limited access to certain models' and free input and output tokens; the paid card adds higher rate limits, context caching, the Batch API at a 50% cost reduction and access to the most advanced models. Code execution, URL context and file search are free of charge on the free tier according to the tools table.
The data-use catch on the free tier
The limit people miss is not a number. The Gemini API terms define anything offered free of charge, including Google AI Studio and the unpaid quota of the Gemini API, as Unpaid Services. When you use Unpaid Services, Google uses the content you submit and the generated responses to provide, improve and develop its products and machine learning technologies. The terms add that human reviewers may read, annotate and process API input and output, after Google disconnects it from your account, key and project, and they say plainly: do not submit sensitive, confidential or personal information to the Unpaid Services.
Paid Services work differently. With the paid quota, Google says it does not use your prompts (including system instructions, cached content and files) or responses to improve its products, and processes them under its data processing addendum. The pricing page shows the same split per model: 'Used to improve our products' reads Yes on the free tier and No on the paid tier.
EEA, Switzerland and the UK. If you are in the European Economic Area, Switzerland or the United Kingdom, the terms say the paid-service data terms apply to all Services, including AI Studio and the unpaid quota. Separately, you may use only Paid Services when making API clients available to users in those regions, so a free-tier key cannot back a public app for European users.
What this means for X data. Public X posts are public, but they still contain personal data such as names and handles. If you label posts on the free tier, send only what the task needs. The compact record we measured below keeps the post text, language and a few counts and drops the handle, display name and author id, which also happens to cut the token bill by about nine times.
Free tier vs paid tiers: limits, caps and how upgrades happen
Rate limits are tied to a project's usage tier, and Google upgrades projects automatically as spending grows. The rate-limits and billing pages list four tiers.
Spend-based limits. On top of RPM and TPM, paid tiers carry a spend-based limit evaluated on a rolling 10-minute window. It is listed as N/A for the free tier. Hitting it returns the same 429 RESOURCE_EXHAUSTED error, so your retry code should not assume every 429 is a free-tier RPD problem.
Moving off the free tier. You link a billing account to the project in AI Studio. Free to Tier 1 typically takes effect instantly, and later upgrades within 10 minutes. Google introduced Prepay and Postpay billing plans that started taking effect on March 23, 2026; new users default to Prepay, the billing guide says some users are asked to prepay a minimum of $5 during setup, and when a Prepay balance reaches $0 every key on that billing account stops with HTTP 402 Payment Required until credits are added.
Other separate limits. Priority inference has its own default limits of 0.3x the standard rate limit per model and tier. The Batch API has its own caps (100 concurrent batch requests, a 2 GB input file, 20 GB of file storage, and per-model enqueued-token limits such as 3,000,000 for Gemini 3.8 Flash and 10,000,000 for Gemini 2.5 Flash-Lite).
How big is an X post in Gemini tokens? Our measurement
To turn 'RPD' into 'posts per day' you need the size of the thing you send. We collected 1,182 unique public X posts in 2026: the last 100 posts from each of six AI-lab organization accounts (@GoogleAI, @GoogleDeepMind, @googledevs, @GeminiApp, @OpenAI and @AnthropicAI) and the most recent results for two searches, "gemini api" and "google ai studio" (retweets excluded). For each post we measured the full API JSON, a compact classification record and the text alone, and estimated tokens as characters divided by four, the rule Google gives in its token guide.
Trim before you send. The full JSON carries author objects, entities, media variants and card data, so it averaged about 1,358 tokens per post; the compact record (text, language, likes, reposts, replies, views, author follower count and a verified flag) averaged 144. That is a 9.4x difference on every TPM check and on every paid-tier input bill.
Searches run larger than org timelines. Compact posts from the two keyword searches averaged 174 tokens against 116 for the organization timelines, mostly because long-form posts show up in topic searches. The tail is long: the largest single compact post was 5,303 tokens.
What else was in the sample. 35.1% of posts had attached media, 35.7% carried a link, 14.2% were replies and 6.1% quoted another post. English made up 71.1% of posts, Japanese 9.9% and Chinese 7.6%. Google states its four-characters rule as an approximation, so for multilingual feeds count a sample with the API's token-counting call before you size batches.

How many X posts a day can the free tier classify?
RPD counts requests, not posts. Send one post per request and your daily quota equals your daily throughput. Put 100 compact posts into one prompt and ask for a JSON array of labels back, and the same RPD covers 100 times as many posts. The table uses illustrative RPD values because Google does not publish yours; read the real one from your AI Studio rate-limit page and scale.
Check TPM before you batch. With our 71-token labeling prompt, a batch of 25 compact posts came to about 3,684 input tokens, a batch of 50 to 7,297 and a batch of 100 to 14,523 (about 25,471 if every post were at the 90th percentile). If you sent the full JSON instead, a batch of 100 would be about 135,900 tokens, which can exceed a modest per-minute token allowance on its own. Divide your TPM by the batch size in tokens to get the most batches you can send per minute.
Output is small but not free of limits. A label object like the one in the prompt is about 15 tokens, so 100 labels come back in roughly 1,502 output tokens. Thinking models may add thinking tokens on top; Google bills them as output on the paid tier.
Quality caps the batch size too. Long batches raise the odds that the model skips or merges items. Number every record (the i field), validate that every index comes back, and re-queue the missing ones. Start with 25 posts per request and raise the size only while every index keeps coming back.

What it costs once you outgrow the free tier
Using the measured batch of 100 compact posts (14,523 input tokens and about 1,502 output tokens per request), labeling 1,000 posts is ten requests. At the standard paid-tier prices on Google's pricing page that works out as follows, before any thinking tokens, which makes it a floor rather than a quote.
The X data side. Gemini has no guaranteed live X feed of its own, so the posts have to come from somewhere. TwitterAPI.io charges 15 credits per tweet returned, which is $0.15 per 1,000 tweets, with a minimum of 15 credits ($0.00015) per request; a full 20-tweet search page costs $0.003. The official X API pay-per-usage rate card at docs.x.com/x-api/getting-started/pricing lists $0.005 per post read, or $5 per 1,000, about 33x more for the same 1,000 posts. Reads through TwitterAPI.io need no X account.
Putting both together. At 2,000 posts a day (20 RPD at 100 posts per request), the X data costs about $0.30 a day and the Gemini side costs nothing while you stay inside your free-tier limits. At 10,000 posts a day the X data is about $1.50 and, on a paid Flash-Lite model, the labeling is in the cents. Our whole study of 1,200 returned posts cost 18,000 credits, or $0.18.
Starting out. New TwitterAPI.io accounts that pass the automatic bot check get up to $1 of free credits (at most 100,000 credits, no card, one per person or network, expiring after 31 days), which is enough for several thousand posts. Purchased credits never expire. Rate limits are 0.2 requests per second before the first payment and 20 once paid. Monthly subscriptions are listed on the pricing page.
A free-tier pipeline for X posts, and how we collected this
The runnable example further down puts the pieces together: it searches X with /twitter/tweet/advanced_search, follows has_next_page and next_cursor, trims each post to the compact record, sends batches of 100 to gemini-3.8-flash through the google-genai SDK's client.interactions.create call shown in Google's quickstart, waits between calls, and backs off on 429 RESOURCE_EXHAUSTED. Swap the query for your product name or a competitor's, and keep the delay above what your RPM allows.
Retry rules that match Google's docs. Treat 429 as 'one of RPM, TPM, RPD or the spend limit ran out'. Wait and retry for RPM and TPM; if it persists for the rest of the Pacific day, you have hit RPD. On Prepay billing, a 402 means the balance is empty, not that you were throttled.
How we collected this. Question: how many input tokens does an X post cost when sent to Gemini for classification, and how many posts per day does that allow for a given RPD. Accounts and queries: the last 100 posts of @GoogleAI, @GoogleDeepMind, @googledevs, @GeminiApp, @OpenAI and @AnthropicAI, plus the newest results for "gemini api" and "google ai studio" with retweets excluded. Window: the most recent posts at collection time, collected in 2026. Sample: 1,200 posts returned, 1,182 unique, in 60 requests through TwitterAPI.io.
What the sample cannot show. Token counts are estimates at four characters per token, not countTokens results; real counts vary by language and model. AI-lab timelines and AI keyword searches are not a random sample of X, and your own feed may run shorter or longer. We did not call the Gemini API in this study, so nothing here measures Gemini's accuracy or latency.
Privacy. Aggregates only. Organization accounts are named; posts from search results come from private individuals, so their raw pages were not kept and the published sample holds only de-identified size rows with no ids, text or handles.
Next step for developers. Create a key on the TwitterAPI.io dashboard, read the endpoint reference at docs.twitterapi.io, and run the script below against a query you care about. If you would rather let an AI client call X tools directly, the hosted TwitterAPI.io MCP server accepts your API key as a Bearer token.
"""classify_x_posts_gemini_free.py - pull recent X posts with TwitterAPI.io, trim each to a
compact record, and label them with a Gemini free-tier model in batches of 100 so every request
counts 100 posts against your requests-per-day (RPD) quota instead of one.
pip install -U requests google-genai
export TWITTERAPI_IO_KEY=... # from twitterapi.io/dashboard (reads need no X account)
export GEMINI_API_KEY=... # from Google AI Studio; the free tier needs no billing account
"""
import json
import os
import time
import requests
from google import genai
BASE = "https://api.twitterapi.io"
HEADERS = {"X-API-Key": os.environ["TWITTERAPI_IO_KEY"]}
MODEL = "gemini-3.8-flash" # free of charge on the free tier per ai.google.dev pricing
BATCH = 100 # one request = 100 posts toward RPD
SECONDS_BETWEEN_CALLS = 15 # stay well under a low free-tier RPM; tune to your AI Studio numbers
PROMPT = (
"You label tweets for a developer-tools team. For each tweet in the JSON array, return one JSON object "
'{"i": <index>, "label": one of ["bug", "feature_request", "praise", "question", "pricing", "other"], '
'"sentiment": one of ["pos", "neu", "neg"]}. Return only a JSON array, no prose.'
)
def fetch_posts(query, max_pages=5):
"""Newest-first search results. 15 credits per tweet returned ($0.15 per 1,000 tweets)."""
posts, cursor = [], ""
for _ in range(max_pages):
r = requests.get(
f"{BASE}/twitter/tweet/advanced_search",
headers=HEADERS,
params={"query": query, "queryType": "Latest", "cursor": cursor},
timeout=30,
)
r.raise_for_status()
body = r.json()
posts.extend(body.get("tweets", []))
if not body.get("has_next_page"):
break
cursor = body.get("next_cursor", "")
return posts
def compact(t, i):
"""About 9x fewer tokens than the full JSON in our 2026 sample; no handle, no author id."""
a = t.get("author") or {}
return {"i": i, "text": t.get("text", ""), "lang": t.get("lang"),
"likes": t.get("likeCount", 0), "reposts": t.get("retweetCount", 0),
"replies": t.get("replyCount", 0), "views": t.get("viewCount"),
"author_followers": a.get("followers"), "blue": a.get("isBlueVerified")}
def label_batch(client, records):
payload = PROMPT + "\n\n" + json.dumps(records, ensure_ascii=False, separators=(",", ":"))
for attempt in range(5):
try:
out = client.interactions.create(model=MODEL, input=payload)
text = out.output_text.strip().removeprefix("```json").removesuffix("```").strip()
return json.loads(text)
except json.JSONDecodeError:
return [] # log and re-queue in real code
except Exception as e: # a 429 RESOURCE_EXHAUSTED means RPM, TPM or RPD ran out
if "429" in str(e) or "RESOURCE_EXHAUSTED" in str(e):
time.sleep(60 * (attempt + 1))
continue
raise
return []
if __name__ == "__main__":
client = genai.Client() # reads GEMINI_API_KEY
posts = fetch_posts('"gemini api" -filter:retweets lang:en', max_pages=5) # up to 100 posts
print(f"fetched {len(posts)} posts, X data cost about ${len(posts) * 15 / 100000:.4f}")
records = [compact(t, i) for i, t in enumerate(posts)]
labels = []
for start in range(0, len(records), BATCH):
labels += label_batch(client, records[start:start + BATCH])
time.sleep(SECONDS_BETWEEN_CALLS)
by_label = {}
for row in labels:
by_label[row.get("label")] = by_label.get(row.get("label"), 0) + 1
print(json.dumps(by_label, indent=2))
Questions readers ask
What are the Google AI Studio free tier limits?
Every project is limited on requests per minute (RPM), input tokens per minute (TPM) and requests per day (RPD), plus model access and data terms. The limits apply per Google Cloud project, RPD resets at midnight Pacific time, and Google shows your project's exact numbers on the AI Studio rate-limit page rather than in a public per-model table.
Does Gemini have a limit if I use it for free?
Yes. Exceeding any of RPM, TPM or RPD returns a 429 RESOURCE_EXHAUSTED error. Some models also have tokens-per-day or images-per-minute limits, and tools such as Grounding with Google Search carry their own daily caps (up to 500 RPD shared between Gemini 2.5 Flash and Flash-Lite on the free tier).
Are the limits per API key or per project?
Per project. Google's rate-limits page says limits are applied per project, not per API key, so extra keys in the same project share one quota.
Which Gemini models are free in 2026?
Google's pricing page lists Gemini 3.8 Flash, 3.6 Flash, 3.5 Flash-Lite, 3.1 Flash-Lite, 3 Flash Preview, 2.5 Pro, 2.5 Flash, 2.5 Flash-Lite, the embedding models and Gemma 4 as free of charge on the free tier. Gemini 4 Argon, Gemini 3.1 Pro Preview, the Nano Banana image models and Gemini Omni Flash are not available on the free tier.
Does Google use my free-tier prompts for training?
On the free tier (Unpaid Services) Google may use prompts and responses to improve its products and machine learning technologies, and human reviewers may read them; Google tells you not to submit sensitive, confidential or personal information. Paid-tier content is not used that way. In the EEA, Switzerland and the UK, the paid-service data terms apply to free usage as well.
When does the Gemini daily limit reset?
Requests-per-day quotas reset at midnight Pacific time, according to Google's rate-limits documentation.
How do I get higher Gemini API limits?
Link a billing account to the project in AI Studio. Free to Tier 1 typically takes effect instantly; Tier 2 requires $100 paid plus 3 days since the first payment, and Tier 3 requires $1,000 plus 30 days. Google also offers a request form for paid-tier rate limit increases without guarantees.
How many tweets can I classify per day on the Gemini free tier?
Multiply your RPD by the posts per request. In our 2026 sample a compact X post averaged about 144 tokens, so 100 posts per request is about 14,523 input tokens; at an RPD of 20 that is 2,000 posts a day, as long as your TPM allows the batch size.
Continue
- Google: Gemini API rate limits (RPM, TPM, RPD per project, midnight Pacific reset, usage tiers, Batch API limits)
- Google: Gemini Developer API pricing (free vs paid per model, data use per tier)
- Gemini API Additional Terms of Service (Unpaid vs Paid Services data use, EEA/CH/UK rule)
- Google: Gemini API billing (free tier, Prepay and Postpay, 402 on empty balance)
- Google: Understand and count tokens (about 4 characters per token)
- X API pay-per-usage pricing ($0.005 per post read), the official rate card
- Twitter (X) API hub: endpoints, pricing and guides
- How to use Google Gemini with the Twitter (X) API
- Claude API pricing per model, for comparison with Gemini
- OpenRouter API: one key for Gemini, Claude and other models
- Twitter sentiment analysis with Python and an LLM
- Hosted TwitterAPI.io MCP server for AI clients
- TwitterAPI.io pricing: $0.15 per 1,000 tweets
- Get a TwitterAPI.io API key
- 01Best Claude Model for Coding in 2026: Opus vs Sonnet vs Haiku vs Fable, Priced on Real Twitter (X) Data
- 02Zapier Alternatives in 2026: Prices, Self-Hosting and Which Ones Still Connect to Twitter (X)
- 03Antigravity vs Cursor: Plans, Models and a Twitter (X) MCP Setup in Both
- 04Claude Code Alternatives: Seven Coding Agents Checked for License, Free Use and MCP (Twitter/X Data Included)
- 05OpenCode vs Claude Code: config, plugins, models and one Twitter (X) MCP server in both
- 06Twitter (X) Analytics Free — A Tier Comparison
- 07Free Twitter Analytics — A Working Setup at $0/month
- 08How to Use the Vercel AI SDK with the Twitter (X) API
Stop reading. Start building.
Starter credits cover real testing on real data. Google sign-in, no card, no application queue.
Get an API keyAlready building with TwitterAPI.io? Publish an honest tutorial or build log about it and earn up to $200 a month in API credits.