DropReady
DropReady is a virtual waiting room for stores that can get more traffic in a few seconds than their server can handle - drops, launches, promotions.
How it works
Three steps, zero complexity on the client's side.
Traffic spikes
When traffic on your store spikes, DropReady automatically starts routing excess visitors into a virtual waiting room.
The queue holds the line
Visitors wait in a fair queue, while your server handles only as many customers as it can actually support.
Admission with a token
When it's their turn, the visitor gets a signed access token and lands in the store normally - without losing their place.
Small and mid-sized stores, not enterprise with their own DevOps
DropReady works well where traffic spikes suddenly and rarely - a drop, a limited release, ticket sales, a Black Friday promotion. Not where traffic is high all the time.
check_circle It's a fit if...
- 01. Your store runs on PrestaShop, WooCommerce, Magento, or a custom Laravel/PHP app.
- 02. You have seasonal or one-off traffic spikes, not consistently high traffic year-round.
- 03. You don't have your own DevOps team, but someone on your side can upload a file over FTP.
block Probably not for you if...
- 01. Your store runs on Shopify Plus - it already has a built-in queue.
- 02. You have your own DevOps team and something like Cloudflare Enterprise - you already have the tools for this.
- 03. You're looking for a one-click marketplace plugin - DropReady integrates via a single PHP file, not a store app.
How it differs from Queue-it and Cloudflare Waiting Room
We're not a global multi-tenant SaaS. A few differences come directly from the architecture.
Dedicated instance
Each client gets their own isolated backend and database - not shared multi-tenant infrastructure. In practice, that means control over where your data physically lives, e.g. hosting in Poland/EU.
Zero platform lock-in
Integration is a single PHP file that works anywhere PHP runs - Laravel, WordPress, PrestaShop, any custom stack. No requirement for a specific CDN, DNS setup, or Shopify Plus plan.
Simple integration on your side
You upload one file over FTP, no SSH access and no DevOps team required on your end. To be fair: setting up the infrastructure on our side is still engineering work measured in hours, not a self-service "5 minutes and done" panel.
More than a waiting screen
Two things built directly into the queue itself, not bolted on: getting your best customers in first, and not losing the ones who don't make it.
VIP Priority Codes
Generate a code from the admin panel and hand it to influencers, ambassadors, or your community - anyone using it jumps to the front of the queue automatically. No manual admission, no spreadsheet on drop day.
Capture Leads From Every Drop
Didn't make it into this drop? Visitors can leave their email right from the waiting room widget. Every drop that sells out becomes a list for the next one, instead of just lost traffic.
Automatic Overload Protection
Set a hard cap on how many shoppers can be active in the store at once. As live traffic gets close to it, admission automatically slows below your configured rate - the store never gets overwhelmed, no matter how long the drop runs.
Search Engines Never Get Queued
Googlebot, Bingbot, and other known crawlers skip the waiting room entirely - a drop never costs you your SEO ranking or social link previews.
See the panel
This is what DropReady looks like from the client's side — the queue widget, login, live traffic control, and branding setup. Click a screenshot to enlarge.
We build this in public
Follow the process on the blog - architecture decisions, real bugs, and how we're handling a real deployment with our first client.
Building DropReady: Week 0
articleBuilding DropReady: Adaptive Polling vs WebSockets (Week 1)
articleBuilding DropReady: Early Intercept i weryfikacja tokenów Ed25519 (Week 2)
Where things stand
DropReady is live in production with our first client - fully deployed, integrated, and handling real traffic. We're now opening it up to new clients who need the same protection for their next drop or launch.
The /status endpoint (Redis lookup + signing an EdDSA token on every request) - 31,718 req/s, 200,000/200,000 requests succeeded (100%). Tested on an ordinary dev laptop (MacBook Pro, Apple M1 Pro, 16 GB RAM), not the client's target production server - see below for concrete numbers from the Mikrus (a budget Polish VPS) it actually runs on in production.
We tested DropReady on a real client's live production infrastructure - running on a Mikrus, one of the cheapest VPS plans available in Poland: at 500 requests/s the system held 100% success with ~123ms latency. Under heavier, deliberately aggressive load (300 concurrent connections, no rate limit) we started seeing the first signs of strain - still 99.9% success, but rising latency and the first 503 errors. Our anti-spam limiter on joining the queue (30 attempts/min/IP) blocked 1,970 of 2,000 attempts in that same test - exactly as it should.
Load test of the /status endpoint (Redis lookup + signing an EdDSA token on every request) against a real client's live production instance. Traffic went through the full network path: Cloudflare → Cloudflare Tunnel → nginx → Go backend, on a Mikrus 3.5 (1 vCPU, 4 GB RAM, KVM virtualization). The 25-300 concurrent connections range is the only real measured data - the chart does not interpolate beyond it.
All 20,406 requests in this test succeeded - zero errors, zero timeouts, at every concurrency level, on a single core. The system degrades through rising latency, not through failures.
Concrete example: Imagine an influencer campaign that pulls 2,000 people to your store in a few seconds. All of them join the queue instantly - joining is lightweight. Our test shows that even when 300 of them refresh their queue position at the same time, the budget single-core server responds with 100% success - under half a second median up to 150 concurrent checks, and without a single error up to 300. With the product's default settings (one person admitted every 10 seconds), exactly 6 people per minute get let into the store - measured, 100% accurate, zero errors. The rate is fully configurable - as we show below, even at more aggressive settings you get exactly the rate you configure.
Throughput (RPS)
Requests per second by number of concurrent connections.
Percentile latency
Response time p50 / p90 / p99 by number of concurrent connections.
What do these numbers mean?
- RPS (requests per second)
- How many requests the server handles per second. Higher is better.
- p50 (median)
- Half of users wait less than this, half wait more - it's the "typical" experience, not an extreme case.
- p90
- 9 out of 10 users wait less than this. Shows what service looks like once things get busy.
- p99
- Only 1 in 100 users waits longer than this. This is the worst realistic case, not a theoretical edge case.
View data as a table
| Concurrency | RPS | p50 | p90 | p99 | Success |
|---|---|---|---|---|---|
| 25 | 308.4 | 69.21 ms | 114.22 ms | 277.88 ms | 1563/1563 |
| 50 | 447.7 | 103.89 ms | 159.31 ms | 226.71 ms | 2281/2281 |
| 100 | 548.5 | 178.13 ms | 253.87 ms | 396.79 ms | 2824/2824 |
| 150 | 575.0 | 266.01 ms | 332.51 ms | 414.14 ms | 2941/2941 |
| 200 | 446.9 | 421.50 ms | 639.26 ms | 990.71 ms | 2390/2390 |
| 250 | 495.0 | 487.72 ms | 684.77 ms | 1011.06 ms | 2646/2646 |
| 300 | 594.8 | 486.88 ms | 752.76 ms | 934.96 ms | 3099/3099 |
This is a different mechanism than the chart above. The /status curve shows how many people can safely wait and refresh their position at once. The data below shows something else: how many people actually get let into the store from the queue per unit of time - a rate the client configures in the admin panel ("how often" + "how many people per batch").
While preparing this data we found and fixed a real bug: the admission worker used a time.Ticker that silently dropped ticks under load - more aggressive settings delivered less throughput than configured. Fixed by switching to a precise deadline-based timer. The fix is already live in production - the numbers below are from testing after the fix.
Admission rate isn't the whole picture. You can also cap how many shoppers are active in the store at the same time, regardless of how long the drop runs. As live traffic gets close to that ceiling, admission automatically slows below the configured rate to stay under it - one less thing to babysit manually during a live sale.
every 10s / 1 person
expected: 6/min · errors: 0
every 5s / 10 people
expected: 120/min · errors: 0
every 2s / 50 people
expected: 1500/min · errors: 0
Measured locally, not on the client's live production - this mechanism depends only on Redis and Go, not the network path, so a local measurement is just as reliable here as a production one, without risking disruption to a real client's queue. Same code as production, verified with two independent runs giving identical results.
A fixed, predictable fee - not billed per request
Every client gets a dedicated instance (see above) - price scales with your limits, not with your visitor count.
Starter
€34 / $39 / 149 zł
per month (or €342 / $392 / 1,490 zł per year)
- 1 store, up to 3,000 concurrent in queue
- Up to 4 drops per month
- Anti-bot (proof-of-work), branding, multi-language admin panel
- Email support, 48h response
Growth
€91 / $105 / 399 zł
per month (or €915 / $1,049 / 3,990 zł per year)
- Up to 15,000 concurrent in queue
- Unlimited drops
- Priority VIP codes + lead capture for your next drop
- Automated scheduling, 24h support
Business
Custom quote
from €206 / $236 / 899 zł per month
- Higher-spec dedicated VPS, 99.9% SLA
- Multiple stores in one package
- Priority support, 1:1 onboarding
- White-label option
Outgrowing your current plan? We will figure out scaling together - see FAQ.
Frequently asked questions
Is DropReady self-hosted?
add
How long does deployment take?
add
Which platforms does DropReady work with?
add
How is it different from Queue-it or Cloudflare Waiting Room?
add
Does DropReady have an API or webhooks?
add
How is DropReady priced?
add
What happens if I go over my plan's limits?
add
Will DropReady hide my store from Google during a drop?
add
Let's talk
Building a store that could get more traffic than it can handle? Get in touch, let's talk about your case.