Vintage typewriter with 'ARTIFICIAL INTELLIGENCE' typed on paper — by Markus Winkler via Pexels
Product Design

Why We Rate-Limit AI Requests at 100/Day (and Why It Matters)

July 4, 2026·6 min read·Replya Engineering

Every free AI product faces the same choice: unlimited usage that burns cash, or restrictive limits that annoy users. We picked a third option — a generous cap that makes the product better, not worse.

The Obvious Reason Isn't the Real One

Replya is completely free. No credit card required. No premium tier. We generate five AI-powered LinkedIn comment suggestions per request, each running through a 1,200+ token prompt on Gemini 2.5 Flash. Do the math: at 100 requests per day per user, with a decent user base, that's a meaningful API bill every month.

So yes, cost control is part of the equation. But it's not the primary motivation. If we wanted to minimize costs, we'd set the limit at 10 or 20. We chose 100 deliberately — and for reasons that have more to do with product quality than infrastructure economics.

Protecting Users From Themselves

Here's a pattern we noticed during early testing: the users who made the most requests were the ones getting the worst results. Not because the AI was failing — because they were treating it like a vending machine. Paste post, click generate, paste comment. Repeat 50 times in an hour.

LinkedIn is not a vending machine. It's a professional network where your reputation is the currency. Someone who comments on 50 posts in an hour looks like a bot — because they are, effectively, part of a bot pipeline. And the algorithm notices. LinkedIn flags rapid-fire engagement as inauthentic behavior, which can trigger shadow restrictions on the account.

The 100-request daily limit functions as a circuit breaker. It forces a natural pacing. You can still be incredibly active — 100 thoughtful comments in a day is far more than any human would write — but you can't abuse the system at a scale that damages your own standing. The limit protects the user from doing something that looks suspicious to LinkedIn's anti-spam systems.

Quality Is a Volume Problem

There's a subtler reason too. Every comment Replya generates costs about 5,000 output tokens. At 100 requests, that's half a million tokens of generated text per user per day — roughly equivalent to writing a short novel. The probability of a user actually reading and thoughtfully applying all 500 generated comments approaches zero.

When we studied our usage data, we found that the sweet spot for engagement quality was around 20-40 requests per day. Users in that range had time to read each suggestion, make edits, and post thoughtfully. Above 60, the apply rate dropped sharply — users were mass-generating without reading. The AI was doing all the work, and the output showed it.

By capping at 100, we're drawing a line well above the engagement sweet spot but below the spam horizon. It gives power users room to breathe while preventing the product from becoming a reputation-destroying bot cannon.

How We Actually Enforce It

The rate limiter lives in our Supabase database. Every authenticated request hits a checkDailyRequestLimit function that counts the user's successful requests for the current UTC day:

If the count exceeds 100, the server returns a 429 status with a clear message: “Daily request limit exceeded. You have reached the maximum of 100 requests per day.” It also tells the user when the limit resets — midnight UTC the next day.

This is counter to what most growth teams would recommend. The standard playbook says to let users hit the limit, then immediately offer a paid tier to remove it. We've chosen not to do that yet — not because we're against monetization, but because the unit economics of a free AI product are genuinely hard, and we want to solve the quality problem before we solve the pricing problem.

The Uncomfortable Truth About Free AI Products

Every free AI product is a ticking clock. The cost-per-request curve slopes upward with every new user, while the revenue-per-user curve stays flat at zero. There are three ways off that curve:

1. Get acquired before the math catches up. Not a strategy, a lottery ticket.

2. Degrade quality to reduce costs. Switch to a cheaper model, shorten prompts, reduce output quality. The user experience decays slowly enough that nobody notices, until one day they do.

3. Design limits that improve the product. Set caps that prevent abuse, encourage thoughtful usage, and keep the output quality high — then build a path to sustainability that doesn't involve secretly making the product worse.

We're betting on option three. The 100-request cap is the first implementation of this philosophy: a limit that exists to preserve quality rather thanrestrict access. Every user gets the same Gemini 2.5 Flash model, the same 1,200-token prompt, the same quality of output. The limit ensures we can afford to keep it that way.

What Happens When Users Hit the Limit

This is where most products get it wrong. The moment someone hits a rate limit, they're paying attention in a way they weren't before. They're actively using the product enough to need more of it. That's the single best moment to have a conversation about value.

Right now, we return a polite message with the reset time. But this is a deliberate gap in our product that we're watching closely. When the time is right, the 429 response will be the entry point to a paid tier — not as a gotcha, but as a natural upgrade path for the users who've already demonstrated they get value from the product.

Until then, the limit stays at 100. Not because we can't afford more. Because the product is better at 100 than it would be at 1,000, and the users who stay within the limit are the ones who use Replya the way it was meant to be used: thoughtfully, intentionally, and with real skin in the game.

Try Replya Free

100 free requests every day. Same model, same quality, no credit card.

ChromeAdd to Chrome — It's Free

No credit card required

Hero photo by Markus Winkler on Pexels