B
Briefed

Build a GPT news digest with Zapier

7 min read · Last updated July 8, 2026

Zapier is the lowest-friction way to wire RSS feeds into GPT and out to your inbox - no server, no code, all configuration in the browser. But there are two traps that catch almost everyone: RSS triggers fire once per article (so a naive Zap sends you 30 emails a day, not one digest), and Zapier's task-based pricing means a multi-step Zap over busy feeds burns through cheap plans fast. This guide builds it the right way: a Digest step that batches articles, one GPT call per day, one email per day.

The digest-vs-per-item problem, first

RSS by Zapier is a trigger, and triggers in Zapier run the whole Zap once per new item. If your feed publishes 20 articles a day, a Zap that goes RSS to ChatGPT to Gmail runs 20 times: 20 GPT calls, 20 emails, roughly 40-60 tasks. That is not a newsletter, that is a notification firehose.

The fix is Digest by Zapier, a built-in Zapier tool that accumulates values into a named bucket and releases the whole batch at once on a schedule. The pattern is one Zap: the RSS trigger appends each article into a digest, and the digest's scheduled release continues the same Zap with the full batch, running the GPT and email steps once per day. Each new article still consumes tasks for the trigger-plus-append part, but the expensive steps (GPT, email) run once per release.

Step 1: RSS by Zapier trigger

  • App and event: RSS by Zapier, trigger New Item in Feed (or New Item in Multiple Feeds if you want several sources in one Zap)
  • Feed URL: paste your feed, e.g. https://techcrunch.com/feed/ - for multiple feeds, add up to a handful of URLs in the multiple-feeds trigger
  • Test the trigger: Zapier pulls recent items so you have real sample data (title, link, description, pubDate) to map in later steps

Step 2: Format the item (optional but recommended)

RSS descriptions often arrive as HTML. Add a Formatter by Zapier step, event Text, transform Remove HTML Tags, input the trigger's Description field. Then add a second Formatter, transform Truncate, max length 300, so a single long article cannot bloat the digest. Each Formatter step costs one task per article, so skip these if your feeds are clean and you want to save tasks - the GPT prompt below tolerates messy input reasonably well.

Step 3: Digest by Zapier - append and schedule

  • App and event: Digest by Zapier, action Append Entry and Schedule Digest Release
  • Title: a bucket name like daily-news-digest (this identifies the digest; reuse the exact same name if you reference it elsewhere)
  • Entry: map the fields into one block, one article per entry, e.g. Title newline Link newline the truncated Description - Zapier joins entries with line breaks on release
  • Frequency: Daily, Time of Day: 7am (your account timezone - check your Zapier profile settings)

When the release time hits, this same Zap continues past the Digest step with all accumulated entries in one field called Current Digest. Runs that merely append an entry stop at this step. If the digest is empty at release time (no news that day), no release fires and no email goes out - which is usually what you want.

Step 4: ChatGPT (OpenAI) action

Add the ChatGPT app (this is Zapier's official OpenAI integration), event Conversation. Connect a new account with an API key from platform.openai.com - this uses your OpenAI API billing, separate from any ChatGPT Plus subscription. Configuration:

  • Model: gpt-4o-mini (cheap, fast, good enough for digests)
  • User Message: first the line ARTICLES:, then map the Current Digest field from the Digest step below it
  • Assistant Instructions (system prompt): paste the prompt below
  • Temperature: 0.4, Max Tokens: 1500 or so
Full prompt (Assistant Instructions)
You are the editor of a concise daily email newsletter. The user message contains a batch of news items collected over the last day. Each item has a title, a link, and usually a short description. Some items may be duplicates or near-duplicates covering the same story.

Write the day's digest as an HTML email fragment:

1. Open with a 2-sentence editor's note summarizing the day's dominant theme.
2. Group items into 2-4 sections with <h3> headings named after the themes you find.
3. Under each section, list items as: <p><a href="LINK">TITLE</a> - one sentence, maximum 25 words, stating what happened and why a reader should care.</p>
4. Merge duplicate stories into a single entry and link the best source.
5. Drop items that are ads, sponsored posts, or content-free teasers.
6. Close with a single line: <p><strong>Worth a click:</strong> your one must-read pick and why, in one sentence.</p>

Hard rules:
- Use only information present in the provided items. Never invent facts, numbers, quotes, or outcomes.
- Output a valid HTML fragment only. No <html>, <head>, or <body> tags. No markdown. No code fences. No preamble or sign-off outside the digest itself.
- Keep the whole digest under 600 words.

Step 5: Send the email - Gmail or SendGrid

For a personal digest or a handful of readers, Gmail is fine. Add the Gmail app, event Send Email: To yourself (or a short comma-separated list), Subject something like Daily digest with the date, Body Type HTML, Body mapped to the ChatGPT step's Reply field. Be aware of Gmail's limits: consumer accounts are capped around 500 recipients per day, Workspace around 2,000, and bulk sending from a personal Gmail address is increasingly likely to hit spam filters. Gmail is a mailbox, not a newsletter platform.

For anything that looks like a real newsletter list, use SendGrid instead: add the SendGrid app, event Send Email, with a verified sender on your own domain, Subject and HTML body mapped the same way. SendGrid (free tier around 100 emails/day) forces you through domain authentication - SPF and DKIM DNS records - which is exactly what keeps you out of spam. Brevo or Mailgun work the same way if you prefer them.

Step 6: Test, publish, and watch it

  1. Test each step in the editor top to bottom - Zapier passes real sample data through, so you will see an actual GPT digest and can send yourself a real test email
  2. Check the email in a real client: Gmail clips messages over 102 KB and strips some CSS, so keep the HTML simple
  3. Publish the Zap, then check Zap History after the first scheduled release - per-item append runs and the daily release run show up as separate executions
  4. Turn on Zapier email notifications for errors (Settings, then Email Notifications) - a Zap that errors repeatedly gets paused by Zapier, and you want to hear about it before your readers do

Zapier task economics, honestly

Zapier bills per task, and every action step that executes after the trigger counts as one. In this build, each new article consumes the append step (1 task, plus 1-2 more if you kept the Formatter steps), and the daily release consumes the GPT and email steps (2 tasks). With two moderately busy feeds producing 20 items a day, that is roughly 20-60 tasks per day, or 600-1,800 tasks per month.

Now the plan math. The free plan gives you 100 tasks per month and only two-step Zaps - this workflow is four to six steps, so the free plan is out on structure alone, never mind volume. That means a paid plan is realistically required: entry-level paid Zapier starts around $20-30/month for 750 tasks (prices and quotas shift, check current pricing), and busy feeds can push you into a higher tier. Trim costs by cutting Formatter steps, following fewer or lower-volume feeds, or using one multiple-feeds trigger instead of several Zaps. If the task math offends you, that is the signal to look at n8n, where the same workflow has no per-execution pricing.

What this really costs

FactorRealistic answer
Setup time1-2 hours for the Zap itself; add 1 hour for SendGrid domain authentication (SPF/DKIM DNS records) if you send from your own domain
Monthly costZapier paid plan required for multi-step (~$20-30/mo entry tier, more with busy feeds); OpenAI API for one daily gpt-4o-mini digest is usually well under $1/mo; SendGrid free tier covers ~100 emails/day
Email deliverabilityGmail: ~500 recipients/day consumer cap and weak deliverability for bulk-looking mail; SendGrid on your own domain needs SPF, DKIM, and ideally DMARC set up once, then behaves well
Ongoing maintenanceFeeds break silently, Zapier pauses erroring Zaps, OpenAI deprecates models, and prompt output drifts - check Zap History weekly and re-read the digest critically once a month

The blunt version: Zapier is the fastest build in this series but the most expensive to run, and the cost scales with feed volume rather than with the value you get. For a personal digest from a few quiet feeds, an entry paid plan is a defensible convenience purchase. The moment you add busy feeds or more processing steps, you are paying SaaS prices for a cron job, and moving to n8n or a small Python script starts looking sensible.

Reliability is decent but not fire-and-forget. Zapier retries transient failures on paid plans, but a Zap that keeps erroring gets paused, and a paused Zap fails silently from your inbox's point of view - the newsletter just stops. The weekly glance at Zap History is not optional if you actually depend on the digest.

Don't want to maintain this?

Briefed does the same thing - a personalized, AI-written newsletter on your schedule - free, in about 30 seconds, with deliverability and refinement handled for you. See the full DIY vs Briefed comparison for honest numbers.

No credit card. No app to install. Unsubscribe with one click, anytime.

Questions

Can I build this on Zapier's free plan?

No, not realistically. The free plan allows only two-step Zaps and 100 tasks per month; this workflow needs four to six steps and typically several hundred tasks per month. An entry-level paid plan is the honest minimum.

Why am I getting one email per article instead of a daily digest?

Because RSS by Zapier triggers the whole Zap once per new item. You are missing the Digest by Zapier step - use Append Entry and Schedule Digest Release so articles accumulate and the GPT and email steps only run once at the scheduled release.

Do I need ChatGPT Plus for the ChatGPT action in Zapier?

No. The Zapier ChatGPT integration uses an OpenAI API key with pay-as-you-go API billing, which is completely separate from a ChatGPT Plus subscription. A daily gpt-4o-mini digest costs pennies per month in API usage.

Gmail or SendGrid for the send step?

Gmail for a digest to yourself or a few people - zero extra setup. SendGrid (or Brevo/Mailgun) for anything list-like: it sends from your own authenticated domain with SPF and DKIM, which is what keeps a recurring automated email out of spam folders.

More guides