# RSS-to-Email Campaigns in AcelleMail — Auto-Send Your Blog Posts

> New blog post published? AcelleMail can detect it via RSS and auto-send to your list. This guide walks the RSS campaign type, the feed URL setup, and the template that maps RSS items into email blocks.

- Canonical URL: https://acellesend.com/kb/articles/setting-up-rss-to-email-campaigns
- Author: Sofia Lindqvist, Email Marketing Editor
- Category: Email Marketing — Campaign creation, templates, A/B testing, personalization, scheduling
- Content type: tutorial · Difficulty: intermediate
- Tags: Acellemail
- Published: 2026-03-10 · Last updated: 2026-08-15
- Reading time: 6 min
- Publisher: AcelleMail Knowledge Base, https://acellesend.com/kb

---

## What RSS-to-email does

A new blog post publishes → AcelleMail detects via RSS feed → sends an email summary to your list automatically. Zero manual scheduling per post.

Use when:
- You publish content (blog, podcast, video) regularly
- You want a "new content" notification email per publication
- Manual campaign creation per post is tedious + error-prone

Skip when:
- Publication is irregular (every 3-6 weeks); manual is fine
- You want each post to have a hand-curated email (different angle, different subject) — RSS sends a templated summary

## The setup in 3 phases

```
Phase 1: Pick RSS campaign type
Phase 2: Configure the RSS feed URL + frequency
Phase 3: Build the email template with RSS blocks
```

## Phase 1: Create an RSS campaign

In the campaign builder, type-selector shows the RSS option:

![RSS campaign type](https://acellesend.com/plugins/acelle/landing/images/help/kb/rss-widget/01-no-rss-type.png)

Pick **RSS-driven**. Continue to recipients + setup as usual.

## Phase 2: Configure the RSS feed

In the setup step (RSS campaign type adds an RSS Feed URL field):

```
RSS Feed URL:  https://yourblog.com/feed.xml  (or https://yourblog.com/rss/)
Check frequency: every 1 hour / every 6 hours / daily
```

AcelleMail polls this URL at the chosen interval. When new items appear (newer than the last send), AcelleMail queues an email.

Most blogs publish their RSS at `/feed/`, `/feed.xml`, `/rss/`, or `/?feed=rss2`. Test the URL in a browser; you should see XML output.

## Phase 3: Build the template

In the template step, the builder includes an **RSS block** type. The Templates index lets you choose a template that already has RSS blocks, or build from scratch:

![Templates index](https://acellesend.com/plugins/acelle/landing/images/help/kb/rss-widget/02-templates-index.png)

Drag the RSS block into the builder canvas:

![Builder with RSS block](https://acellesend.com/plugins/acelle/landing/images/help/kb/rss-widget/03-builder-canvas.png)

The RSS block expands to:

```html
<!-- Auto-populated at send time from RSS feed -->
{{ rss_items_loop }}
  <h3>{{ item.title }}</h3>
  <p>{{ item.summary }}</p>
  <a href="{{ item.url }}">Read more</a>
{{ end_loop }}
```

Customize the markup. Each RSS item becomes one block in the rendered email.

Available RSS variables:

- `{{ item.title }}` — post title
- `{{ item.summary }}` — post excerpt
- `{{ item.url }}` — post URL
- `{{ item.image }}` — featured image URL (if RSS includes it)
- `{{ item.published_at }}` — publication date
- `{{ item.author }}` — author (if RSS includes it)

## Common setup decisions

| Decision | Recommendation |
|---|---|
| Check frequency | Daily for slow blogs; every 6h for moderate; every 1h for news-style |
| Max items per send | 1-3 for daily; 5-10 for weekly digest |
| Send mode | Per-item (one email per new post) OR digest (one email per period covering multiple posts) |
| Schedule | Aligned to publish-window (e.g. weekly digest sent Mondays after the weekend's publication window) |
| Template style | Single-item layout for individual posts; multi-card layout for digests |

## Common UI signals + fixes

| Symptom | Likely cause | Fix |
|---|---|---|
| RSS feed URL invalid | Wrong path or no RSS published | Test in browser — should return XML |
| No RSS items appearing in test send | Items already-sent (cached); OR feed has 0 items | Force feed re-poll OR publish a new post |
| RSS template renders blank | RSS variables not in correct syntax | Check `{{ item.X }}` (correct) vs `{rss.X}` (wrong) |
| Items appear but missing images | RSS feed doesn't include `<image>` or `<enclosure>` tags | Configure your CMS to publish images in RSS; or fall back to a default image |
| Send fires immediately after setup | RSS already had unsent items at config time | Mark current items as "sent" in admin; OR delete and re-set up after most recent post |
| Recipients see truncated text | Summary length capped by RSS source | Extend `<description>` in RSS feed; OR replace with `{{ item.content }}` for full content |

## Common RSS feed sources by platform

| Platform | RSS path |
|---|---|
| WordPress | `https://yourblog.com/feed/` |
| Ghost | `https://yourblog.com/rss/` |
| Hugo | `https://yourblog.com/index.xml` |
| Jekyll | Plugin-dependent; typically `/feed.xml` |
| Substack | `https://yoursubstack.substack.com/feed` |
| Medium | `https://medium.com/feed/@username` |
| Custom CMS | Usually `/rss/` or `/feed/`; check your CMS docs |

## Anti-patterns

| Mistake | Fix |
|---|---|
| RSS-sending to a cold list | Build engagement first with hand-curated sends; introduce RSS after audience trust |
| Sending every single post | Most subscribers want digests; per-post sends drive unsubscribes |
| Generic "Latest post" subject | Use `{{ item.title }}` in the subject for specificity |
| RSS-only no other sends | Mix in hand-curated campaigns — pure-RSS audiences see you as a content firehose |

<details>
<summary><strong>Advanced: per-item conditional sending + per-author RSS + multi-feed digest patterns</strong></summary>

**Per-item conditional sending:**

If your RSS feed mixes content types (blog posts + announcements + product updates), you may want to send only certain types:

```
{% if item.tags contains 'newsletter' %}
  <!-- this item goes in the email -->
{% endif %}
```

In the RSS block builder, add the conditional. Only items matching the tag get rendered.

Some CMS platforms expose tags in RSS as `<category>` or `<tag>` elements; check your platform's RSS output.

**Per-author RSS:**

For multi-author blogs:

```
{% if item.author == 'Maria' %}
  <p>📝 By Maria</p>
{% elsif item.author == 'Tobias' %}
  <p>📝 By Tobias</p>
{% endif %}
```

Personalize the email when readers follow specific authors.

**Multi-feed digest pattern:**

Combine multiple RSS feeds into a single digest email:

```
Feed 1: https://blog.brand.com/feed
Feed 2: https://news.brand.com/feed
Feed 3: https://announcements.brand.com/feed
```

The campaign builder supports multiple RSS sources (some installs). Each feed contributes items; the template renders all in sections:

```
## From the blog
{{ rss_items_blog }} ...

## News
{{ rss_items_news }} ...

## Announcements
{{ rss_items_announcements }} ...
```

**Programmatic RSS-to-AcelleMail bridge:**

For full control over publish-to-email logic:

```bash
# Webhook from your CMS on publish → bridge service → AcelleMail
# Don't rely on RSS polling; push the post directly

curl -X POST "https://acellemail.com/api/v1/campaigns" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
    "name": "Blog: $POST_TITLE",
    "list_uid": "...",
    "template_uid": "...",
    "subject": "$POST_TITLE",
    "preheader": "$POST_EXCERPT",
    "merge_tags": {
      "post_title": "$POST_TITLE",
      "post_url": "$POST_URL",
      "post_image": "$POST_IMAGE"
    },
    "schedule": "in 5 minutes"
  }'
```

Faster than RSS polling; more flexibility for content gating + personalization.

**Re-sending RSS to engaged segment:**

After 7 days, re-send unread items to non-openers:

```
Day 0: RSS triggered, email sent to full list
Day 7: Resend to subscribers who didn't open in 7 days
       Subject: "ICYMI: [original subject]"
```

Captures readers who missed the original. Open rates typically rise 20-40% on the re-send.

**RSS digest scheduling:**

Weekly digest = best for most senders. Daily digest gets ignored; per-post sends are noisy. Middle ground:

```
Frequency: Weekly (Monday 9am ET)
Min items: 1 (skip the week if nothing published)
Max items: 5 (cap if you published heavily)
```

Set in the RSS campaign's advanced config.

</details>

## Related articles

- [Your first email campaign in AcelleMail](https://acellesend.com/kb/articles/creating-your-first-email-campaign-in-acellemail)
- [Email template design best practices](https://acellesend.com/kb/articles/email-template-design-best-practices)
- [Campaign scheduling and timezone optimization](https://acellesend.com/kb/articles/campaign-scheduling-and-timezone-optimization)
- [Building a welcome email series in AcelleMail](https://acellesend.com/kb/articles/building-a-welcome-email-series-in-acellemail)

---

## Related articles

- [Email Template Design Best Practices — Using AcelleMail's Builder Right](https://acellesend.com/kb/articles/email-template-design-best-practices): Single column on mobile, alt text on every image, preheader you actually wrote, button width tested in real clients — most "best practice" lists are abstract. This one walks the AcelleMail builder showing where each setting lives and what to verify in Preview before you Send.
- [How to Write Email Copy That Converts — The Practical Framework](https://acellesend.com/kb/articles/how-to-write-email-copy-that-converts): You've got the list, the template, the schedule. What goes in the body? This guide is the practical copywriting framework — what to say, how to structure it, how to verify it lands. Less theory, more "type this, not that."
- [A/B Testing Email Subject Lines for Better Open Rates](https://acellesend.com/kb/articles/ab-testing-email-subject-lines-for-better-open-rates): A/B testing the subject lifts open rates 10-30% sustainably. AcelleMail's built-in A/B feature splits your list, picks the winner automatically, ships the winning variant to the rest. This guide walks the setup + the discipline that makes the test meaningful.
- [Your First Email Campaign in AcelleMail — The 7-Step Walkthrough](https://acellesend.com/kb/articles/creating-your-first-email-campaign-in-acellemail): A guided walk through AcelleMail's campaign builder from "New campaign" button to "Launch" button. Subject + recipients + template + schedule + confirm — visual flow + the decisions at each step.
- [Campaign Scheduling and Timezone Optimization in AcelleMail](https://acellesend.com/kb/articles/campaign-scheduling-and-timezone-optimization): When you send a campaign at "9am" — whose 9am? Yours, your subscribers'? AcelleMail's scheduler defaults to your account timezone. This guide walks the UI + timezone-aware patterns + send-time optimization.
