AutomationFlowsData & Sheets › Content Pipeline: RSS Intake

Content Pipeline: RSS Intake

Content Pipeline: RSS Intake. Uses rssFeedRead, notion. Scheduled trigger; 19 nodes.

Cron / scheduled trigger★★★★☆ complexity19 nodesRSS Feed ReadNotion
Data & Sheets Trigger: Cron / scheduled Nodes: 19 Complexity: ★★★★☆ Added:

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "Content Pipeline: RSS Intake",
  "nodes": [
    {
      "name": "Every 12 Hours",
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1.3,
      "position": [
        0,
        550
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "cronExpression",
              "expression": "0 14 * * *"
            }
          ]
        }
      }
    },
    {
      "name": "RSS AdExchanger",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        0
      ],
      "parameters": {
        "url": "https://www.adexchanger.com/feed/"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS IAB",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        120
      ],
      "parameters": {
        "url": "https://www.iab.com/feed/"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS Digiday",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        240
      ],
      "parameters": {
        "url": "https://digiday.com/feed/"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS Marketing Dive",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        360
      ],
      "parameters": {
        "url": "https://www.marketingdive.com/feeds/news/"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS IAPP Daily",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        480
      ],
      "parameters": {
        "url": "https://iapp.org/rss/daily-dashboard/"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS Marketing AI Institute",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        600
      ],
      "parameters": {
        "url": "http://www.marketingaiinstitute.com/blog/rss.xml"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS IAB Tech Lab",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        720
      ],
      "parameters": {
        "url": "https://iabtechlab.com/category/blog/feed/"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS MIT Tech Review AI",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        840
      ],
      "parameters": {
        "url": "https://www.technologyreview.com/topic/artificial-intelligence/feed"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS TechCrunch AI",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        960
      ],
      "parameters": {
        "url": "https://techcrunch.com/category/artificial-intelligence/feed/"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS VentureBeat AI",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        1080
      ],
      "parameters": {
        "url": "https://venturebeat.com/category/ai/feed/"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS Wired AI",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        1200
      ],
      "parameters": {
        "url": "https://www.wired.com/feed/tag/ai/latest/rss"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "RSS TLDR AI",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        260,
        1320
      ],
      "parameters": {
        "url": "https://tldr.tech/ai/rss"
      },
      "executeOnce": true,
      "onError": "continueRegularOutput"
    },
    {
      "name": "Merge Group A",
      "type": "n8n-nodes-base.merge",
      "typeVersion": 3.2,
      "position": [
        540,
        300
      ],
      "parameters": {
        "mode": "append",
        "numberInputs": 6
      }
    },
    {
      "name": "Merge Group B",
      "type": "n8n-nodes-base.merge",
      "typeVersion": 3.2,
      "position": [
        540,
        900
      ],
      "parameters": {
        "mode": "append",
        "numberInputs": 6
      }
    },
    {
      "name": "Merge All Feeds",
      "type": "n8n-nodes-base.merge",
      "typeVersion": 3.2,
      "position": [
        760,
        550
      ],
      "parameters": {
        "mode": "append",
        "numberInputs": 2
      }
    },
    {
      "name": "Dedup by URL",
      "type": "n8n-nodes-base.removeDuplicates",
      "typeVersion": 2,
      "position": [
        980,
        550
      ],
      "parameters": {
        "operation": "removeItemsSeenInPreviousExecutions",
        "logic": "removeItemsWithAlreadySeenKeyValues",
        "dedupeValue": "={{ $json.link }}"
      }
    },
    {
      "name": "Normalize Entry",
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        1200,
        550
      ],
      "parameters": {
        "mode": "manual",
        "assignments": {
          "assignments": [
            {
              "id": "1",
              "name": "source",
              "type": "string",
              "value": "rss"
            },
            {
              "id": "2",
              "name": "source_type",
              "type": "string",
              "value": "rss"
            },
            {
              "id": "3",
              "name": "title",
              "type": "string",
              "value": "={{ $json.title }}"
            },
            {
              "id": "4",
              "name": "url",
              "type": "string",
              "value": "={{ $json.link }}"
            },
            {
              "id": "5",
              "name": "published",
              "type": "string",
              "value": "={{ $json.isoDate }}"
            },
            {
              "id": "6",
              "name": "summary",
              "type": "string",
              "value": "={{ ($json.contentSnippet || '').substring(0, 500) }}"
            },
            {
              "id": "7",
              "name": "collected_at",
              "type": "string",
              "value": "={{ $now.toISO() }}"
            },
            {
              "id": "8",
              "name": "status",
              "type": "string",
              "value": "new"
            }
          ]
        },
        "includeOtherFields": false
      }
    },
    {
      "name": "Notion: Create Intake Page",
      "type": "n8n-nodes-base.notion",
      "typeVersion": 2.2,
      "position": [
        1420,
        550
      ],
      "parameters": {
        "resource": "databasePage",
        "operation": "create",
        "databaseId": {
          "__rl": true,
          "value": "REPLACE_WITH_DATABASE_ID",
          "mode": "id"
        },
        "title": "={{ $json.title }}",
        "propertiesUi": {
          "propertyValues": [
            {
              "key": "URL|url",
              "type": "url",
              "urlValue": "={{ $json.url }}"
            },
            {
              "key": "Source|select",
              "type": "select",
              "selectValue": "={{ $json.source }}"
            },
            {
              "key": "Source Type|select",
              "type": "select",
              "selectValue": "={{ $json.source_type }}"
            },
            {
              "key": "Summary|rich_text",
              "type": "rich_text",
              "textContent": "={{ $json.summary or \"\" }}"
            },
            {
              "key": "Published|date",
              "type": "date",
              "date": "={{ $json.published }}",
              "includeTime": false
            }
          ]
        },
        "simple": true
      },
      "onError": "continueRegularOutput",
      "credentials": {
        "notionApi": {
          "name": "<your credential>"
        }
      }
    }
  ],
  "connections": {
    "Every 12 Hours": {
      "main": [
        [
          {
            "node": "RSS AdExchanger",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS AdExchanger": {
      "main": [
        [
          {
            "node": "RSS IAB",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS IAB": {
      "main": [
        [
          {
            "node": "RSS Digiday",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS Digiday": {
      "main": [
        [
          {
            "node": "RSS Marketing Dive",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS Marketing Dive": {
      "main": [
        [
          {
            "node": "RSS IAPP Daily",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS IAPP Daily": {
      "main": [
        [
          {
            "node": "RSS Marketing AI Institute",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS Marketing AI Institute": {
      "main": [
        [
          {
            "node": "RSS IAB Tech Lab",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS IAB Tech Lab": {
      "main": [
        [
          {
            "node": "RSS MIT Tech Review AI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS MIT Tech Review AI": {
      "main": [
        [
          {
            "node": "RSS TechCrunch AI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS TechCrunch AI": {
      "main": [
        [
          {
            "node": "RSS VentureBeat AI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS VentureBeat AI": {
      "main": [
        [
          {
            "node": "RSS Wired AI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS Wired AI": {
      "main": [
        [
          {
            "node": "RSS TLDR AI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS TLDR AI": {
      "main": [
        [
          {
            "node": "Merge Group A",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge Group A": {
      "main": [
        [
          {
            "node": "Merge Group B",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge Group B": {
      "main": [
        [
          {
            "node": "Merge All Feeds",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge All Feeds": {
      "main": [
        [
          {
            "node": "Dedup by URL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Dedup by URL": {
      "main": [
        [
          {
            "node": "Normalize Entry",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Normalize Entry": {
      "main": [
        [
          {
            "node": "Notion: Create Intake Page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1",
    "callerPolicy": "workflowsFromSameOwner"
  },
  "description": "Polls 12 RSS feeds every 12 hours, deduplicates by URL, normalizes into pipeline staging format, and writes each entry to the Notion Content Intake database. Covers ad tech, marketing, privacy, and AI sources."
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Content Pipeline: RSS Intake. Uses rssFeedRead, notion. Scheduled trigger; 19 nodes.

Source: https://github.com/alectivism/n8n-workflows/blob/main/rss-intake/workflow.json — original creator credit. Request a take-down →

More Data & Sheets workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Data & Sheets

RSS 피드 수집. Uses notion, httpRequest, rssFeedRead. Scheduled trigger; 13 nodes.

Notion, HTTP Request, RSS Feed Read
Data & Sheets

RSS to Notion. Uses rssFeedRead, notion. Scheduled trigger; 4 nodes.

RSS Feed Read, Notion
Data & Sheets

WorkFlow 05. Uses notion, httpRequest. Scheduled trigger; 44 nodes.

Notion, HTTP Request
Data & Sheets

Collects crypto and/or stock market headlines from multiple sources: CoinDesk, CoinTelegraph, Google News, and X (via an RSS proxy). Normalizes all items into a consistent structure with fields like ,

RSS Feed Read, HTTP Request
Data & Sheets

WorkFlow 08. Uses notion, httpRequest. Scheduled trigger; 37 nodes.

Notion, HTTP Request