Your invoices are queueing for hours—rate limits are why

14 July 2026

The confirmation email arrives six minutes after the Stripe charge clears. Your customer has already refreshed twice, checked spam, and opened a support ticket. Somewhere between your app and their inbox, a rate limiter decided their invoice could wait.

Transactional email rate limits queue your invoices without telling you

Most transactional email services throttle send rates by default, delaying time-sensitive messages when you need them to arrive instantly.

Mailgun caps free-tier accounts at 100 emails per hour. SendGrid’s lowest paid plan throttles to 3,000 per hour unless you request a lift. Postmark starts at 10,000 per hour but queues anything beyond that. If you’re running a product that sends order confirmations, password resets, or invoice receipts, these limits don’t just slow things down—they create support overhead, abandoned carts, and customer distrust.

The problem compounds during traffic spikes. Launch day, a flash sale, or a webhook retry storm can push you past your hourly cap in minutes. Your app thinks the email sent because the API returned a 202 Accepted status. The provider queued it. Your customer sees nothing. By the time the email arrives two hours later, they’ve already disputed the charge or signed up twice.

Rate limits vary wildly by provider and pricing tier. AWS SES starts every new account in sandbox mode with a 200-email daily cap and a one-message-per-second send rate. Resend offers 100 emails per day on the free plan, then jumps to 50,000 per month at $20. SparkPost throttles to 1,500 per hour on entry plans. If you’re comparing transactional email services, the published rate limit is as important as deliverability—and most vendors bury it three clicks deep in their documentation.

The fix isn’t always upgrading. Some providers let you request a limit increase via support ticket. Others require you to warm your sending domain first, which means you can’t just flip a switch the morning of a launch. If you’re building a product that depends on instant transactional email, test your provider’s queueing behaviour under load before you go live.

Read the full story

WORKFLOW

Automation webhooks retry without deduplicating—and trigger twice

Zapier, Make, and n8n all retry failed webhooks when your endpoint times out or returns an error. But none of them deduplicate by default. If your workflow charges a card, sends an email, or logs a conversion, that retry fires the action a second time. The customer gets billed twice. Your revenue reporting doubles. Your ESP flags you for sending duplicate content. The fix requires adding idempotency keys or building a lookup table to catch repeated webhook IDs before the action runs.

See the breakdown

WORTH READING

Attribution windows shorter than your funnel break conversion tracking

Google Analytics defaults to a seven-day attribution window. Plausible gives you 30 days if you configure it manually. Fathom doesn’t offer multi-touch attribution at all. If your newsletter funnel runs longer than the window—someone reads three emails over two weeks before they buy—you’ll credit the wrong source or lose the conversion entirely. This matters most for content-led products, coaching funnels, and anything with a considered purchase cycle. Check your analytics platform’s attribution window, compare it to your median time-to-conversion, and adjust or switch tools before you optimise traffic sources using incomplete data.

Read more

TACTIC

Newsletter subscriber churn happens in silence—measure it weekly

Most operators check unsubscribe rates once a month, usually when a platform sends a summary email. By then, you’ve lost the thread. If churn spiked after a specific send, you won’t remember what you wrote or which segment saw the exodus. Weekly churn tracking—calculated as unsubscribes plus bounces divided by list size—lets you correlate drops with content, send time, or subject-line tests while the context is still fresh. Substack, Beehiiv, and ConvertKit all surface the raw numbers in their dashboards. Export them every Monday, log them in a spreadsheet, and watch for step changes that monthly averages smooth over.

Try it yourself

Know someone who would like this? Forward today’s email—every operator we reach is one closer to running an online business with a little less friction.