<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: GoodSender</title>
    <description>The latest articles on DEV Community by GoodSender (@goodsender).</description>
    <link>https://dev.to/goodsender</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F13385%2Fe759a398-b551-4ca3-9ce9-384405f42989.png</url>
      <title>DEV Community: GoodSender</title>
      <link>https://dev.to/goodsender</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/goodsender"/>
    <language>en</language>
    <item>
      <title>How consent-gated email works (and why it's free)</title>
      <dc:creator>Givi Pataridze</dc:creator>
      <pubDate>Thu, 21 May 2026 17:07:31 +0000</pubDate>
      <link>https://dev.to/goodsender/how-consent-gated-email-works-and-why-its-free-5dg8</link>
      <guid>https://dev.to/goodsender/how-consent-gated-email-works-and-why-its-free-5dg8</guid>
      <description>&lt;p&gt;Email infrastructure pricing has barely moved in a decade. Mailgun, Postmark, SendGrid, Resend, all per-email, all clustered in a narrow band. The reason isn't bandwidth, and it isn't storage. It's abuse. Most of what an ESP charges you covers the cost of fighting the senders who shouldn't be on the platform in the first place.&lt;/p&gt;

&lt;p&gt;Remove the abuse, and the price collapses.&lt;/p&gt;

&lt;p&gt;That's the idea behind GoodSender's Permission Loop. Here's how it works, and why the economics finally let us run the first 100,000 emails a month at $0 and keep the curve flat after that.&lt;/p&gt;

&lt;h2&gt;
  
  
  The shared-pool problem
&lt;/h2&gt;

&lt;p&gt;Every sender on a typical ESP sits in an IP reputation pool with everyone else on that tier. One bad actor blasts a purchased list, mailbox providers throttle the IPs, and your perfectly legitimate transactional mail starts landing in spam. You did nothing wrong. You're paying for the worst sender on your tier.&lt;/p&gt;

&lt;p&gt;ESPs aren't oblivious to this. They staff anti-abuse teams, run heuristics, freeze accounts, review manually. That work is expensive. Per-email pricing is, in large part, a tax on the entire customer base to cover the cost of policing it.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Permission Loop
&lt;/h2&gt;

&lt;p&gt;GoodSender flips the order. Before you can send to a recipient, that recipient has to confirm they want your mail. The flow is simple.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;You call &lt;code&gt;POST /v1/emails/consent&lt;/code&gt; with the recipient's address.&lt;/li&gt;
&lt;li&gt;We send a short, high-reputation consent email with approve and reject buttons. The link is signed, so the sender can't forge it.&lt;/li&gt;
&lt;li&gt;Once the recipient clicks approve, that address is unlocked across your workspace. Sends go through instantly, from any API key in the workspace.&lt;/li&gt;
&lt;li&gt;If they click reject, the address is suppressed. The original consent email stays live, so they can change their mind later and lift the suppression themselves.&lt;/li&gt;
&lt;li&gt;If they never click, every send to that address is discarded inside GoodSender. Approve is a hard gate, enforced at the API.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Transactional templates (MFA Enrollment, New Device, Login, Order Completed, OTP Code) bypass the gate, because they're already implicitly requested by the recipient's own action. Transactional sends don't change consent state. They only fail if the recipient has explicitly clicked reject.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Engagement Check keeps permission honest
&lt;/h2&gt;

&lt;p&gt;A permission granted today isn't permission granted forever. We track opens, clicks, bounces, and complaints per recipient, aggregated into a live engagement score. Six months without engagement triggers an automatic re-permission ping. No response, the recipient drops off.&lt;/p&gt;

&lt;p&gt;Unsubscribes and spam complaints are suppressed instantly across the entire workspace. No API key in that workspace can mail those addresses again, regardless of which engineer or which integration tries.&lt;/p&gt;

&lt;p&gt;Permission is a snapshot. Engagement is the proof it's still real.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this lets us be free at the volumes most senders need
&lt;/h2&gt;

&lt;p&gt;Permission-gated mail, by construction, has almost no abuse surface.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Purchased lists don't work, because the recipients haven't opted in to &lt;em&gt;your&lt;/em&gt; sending domain.&lt;/li&gt;
&lt;li&gt;Cold sequences don't work, because you can't email someone who hasn't confirmed.&lt;/li&gt;
&lt;li&gt;There's no long-tail decay, because dormant recipients get pruned.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If abuse is structurally prevented, anti-abuse cost trends toward zero. Deliverability stays high without a fire-fighting team. The IP pool runs at unusually low complaint rates by design, and the marginal cost of a sent email, on infrastructure already serving the world's largest senders via Laneful, drops to roughly the cost of running the pipe.&lt;/p&gt;

&lt;p&gt;That's why the first 100,000 emails a month, including consent requests, transactional templates, and marketing sends to consented recipients, cost $0. One bucket, no per-type splits, no tiered accounting. Beyond 100K it's $1 per additional 100,000. No subscriptions, no tiers, no credit card to start. The curve stays flat: roughly $9 a month at one million emails, $99 a month at ten million.&lt;sup id="fnref1"&gt;1&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;100,000 emails a month is about 3,300 sends a day, more than most SaaS apps and small or mid-sized businesses ever reach. For the majority of senders, the bill stays at $0 forever.&lt;/p&gt;

&lt;h2&gt;
  
  
  What this changes for senders
&lt;/h2&gt;

&lt;p&gt;For indie developers, solo founders, and AI startups building agentic workflows, the time you used to spend on IP warmup, suppression lists, and deliverability tickets becomes a config call. Domain verification takes about five minutes. DKIM, SPF, and DMARC get configured automatically.&lt;/p&gt;

&lt;p&gt;This isn't built for marketing teams running mass-broadcast campaigns. It isn't built for cold-outreach teams. It's built for makers and builders who want every recipient to be someone who actually asked.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who this is for
&lt;/h2&gt;

&lt;p&gt;The Permission Loop isn't a feature you can A/B test against an open rate. It's a constraint. It rules out workflows that other ESPs accommodate — purchased lists, cold sequences, lapsed-subscriber reactivation campaigns — and it rules them out at the API, not in the terms of service.&lt;/p&gt;

&lt;p&gt;If your sending depends on those workflows, we're not the right tool, and we'll save you time by saying so now. If your sending is mostly transactional plus a newsletter people actually signed up for, the constraint is invisible and the bill is $0.&lt;/p&gt;




&lt;ol&gt;

&lt;li id="fn1"&gt;
&lt;p&gt;Pricing as of April 2026. ↩&lt;/p&gt;
&lt;/li&gt;

&lt;/ol&gt;

</description>
      <category>permissionloop</category>
      <category>consent</category>
      <category>pricing</category>
      <category>deliverability</category>
    </item>
    <item>
      <title>Per-email pricing is a tax on bad senders. You're paying it.</title>
      <dc:creator>Givi Pataridze</dc:creator>
      <pubDate>Wed, 20 May 2026 19:08:55 +0000</pubDate>
      <link>https://dev.to/goodsender/per-email-pricing-is-a-tax-on-bad-senders-youre-paying-it-1ech</link>
      <guid>https://dev.to/goodsender/per-email-pricing-is-a-tax-on-bad-senders-youre-paying-it-1ech</guid>
      <description>&lt;p&gt;Open your last Mailgun invoice. The line says &lt;em&gt;per email&lt;/em&gt;. It isn't.&lt;/p&gt;

&lt;p&gt;A real email, the SMTP handshake, the DKIM signing, the bytes on the wire, costs a fraction of a fraction of a cent in 2026. AWS will rent you SES at roughly $0.10 per thousand. The marginal cost of a sent message has been rounding-error money for years.&lt;/p&gt;

&lt;p&gt;So what are you paying for?&lt;/p&gt;

&lt;p&gt;You're paying for the abuse team.&lt;/p&gt;

&lt;h2&gt;
  
  
  The line item nobody itemizes
&lt;/h2&gt;

&lt;p&gt;Every general-purpose ESP runs an anti-abuse organization. Heuristic detection on outbound traffic. Manual review queues for new accounts. Suppression-list infrastructure. Relationships with mailbox providers and feedback loops with Gmail, Outlook, Yahoo. Lawyers responding to subpoenas. On-call engineers who page when an IP gets blocklisted at 3 a.m. because somebody else on the same shared pool decided to test a list they bought somewhere on the internet.&lt;/p&gt;

&lt;p&gt;That work is real and necessary. It's also expensive, and it has to be paid for somehow. The way it gets paid for is the per-email price.&lt;/p&gt;

&lt;p&gt;A useful exercise: line up the public list prices for 100,000 emails a month.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Mailgun: $75&lt;/li&gt;
&lt;li&gt;Postmark: roughly $134&lt;/li&gt;
&lt;li&gt;SendGrid: $34.95 (no free plan since May 2025)&lt;/li&gt;
&lt;li&gt;Resend: $35, climbing to roughly $650 at one million emails&lt;/li&gt;
&lt;li&gt;Amazon SES: roughly $10–12, if you bring your own AWS account, warm-up, and compliance posture&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The infrastructure cost is roughly the same. The variance isn't bandwidth — it's how much abuse defense each platform absorbs.&lt;/p&gt;

&lt;h2&gt;
  
  
  The senders who pay the most
&lt;/h2&gt;

&lt;p&gt;Here's the part that usually goes unsaid. Clean senders subsidize dirty ones.&lt;/p&gt;

&lt;p&gt;If you run a SaaS app sending password resets and receipts, your complaint rate is probably under 0.01%. You generate roughly zero load on the abuse team. And yet you're paying the same per-message rate as the customer next door who's blasting a list they "warmed up" by importing it from a bankrupt LinkedIn scraper.&lt;/p&gt;

&lt;p&gt;The pricing isn't malicious. It's structural. Shared infrastructure means shared cost. The platforms are doing the right thing operationally, pooling abuse defense across their customer base. But pooled costs are pooled by design. You can't pay less just because you behave better, because the platform has no mechanism to &lt;em&gt;know&lt;/em&gt; you behave better until well after the bill has been printed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Remove the abuse, remove the cost
&lt;/h2&gt;

&lt;p&gt;The way out isn't a discount code. It's a different model. GoodSender's Permission Loop requires recipients to confirm before a sender can mail them, which means purchased lists and cold sequences don't function and the abuse surface is structurally near-zero.&lt;/p&gt;

&lt;p&gt;Once that's true, the math changes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No abuse team rotation to staff.&lt;/li&gt;
&lt;li&gt;No suppression infrastructure to scale.&lt;/li&gt;
&lt;li&gt;No cross-customer reputation contamination to clean up.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The marginal cost of an email drops back to what it actually is — pipe, plus a little metadata. That's why the first 100,000 emails a month cost $0, and why the curve stays flat at scale: roughly $9 a month at one million, $99 at ten million.&lt;sup id="fnref1"&gt;1&lt;/sup&gt; The model still doesn't tax you for someone else's behavior.&lt;/p&gt;

&lt;h2&gt;
  
  
  What to look at when you compare
&lt;/h2&gt;

&lt;p&gt;If you're evaluating email APIs in 2026, don't compare per-email price first. Compare &lt;em&gt;what's in the price&lt;/em&gt; — whether your reputation is pooled with the worst sender on your tier, whether the platform prevents abuse structurally or polices it with a team, and whether your per-email cost will track infrastructure or anti-abuse overhead as you scale.&lt;/p&gt;

&lt;h2&gt;
  
  
  The bet
&lt;/h2&gt;

&lt;p&gt;Per-email pricing has held its shape for fifteen years because nobody had a structural reason to break it. The shared-pool model required pooled cost, pooled cost required per-message billing, and the abuse tax stayed embedded in the rate.&lt;/p&gt;

&lt;p&gt;That's the part we think breaks next. Not because senders demanded it — they've been paying the tax without complaining for a long time — but because the model that makes the tax unnecessary is finally cheaper to run than the model that requires it.&lt;/p&gt;

&lt;p&gt;Whether GoodSender is the platform that proves the point or somebody else is, the per-email rate as a category is on borrowed time.&lt;/p&gt;




&lt;ol&gt;

&lt;li id="fn1"&gt;
&lt;p&gt;Pricing current as of April 2026. ↩&lt;/p&gt;
&lt;/li&gt;

&lt;/ol&gt;

</description>
      <category>email</category>
      <category>deliverability</category>
      <category>api</category>
      <category>saas</category>
    </item>
  </channel>
</rss>
