Automate a newsletter

1. Choose 10-15 sites that post content that aligns with your industry and relevant to your niche.

For example, an SEO agency could use Neil Patel’s blog.

2. Create RSS feeds for each of the sites using FiveFilters.

Register for a free account on FiveFilters, a site that lets you create RSS feeds from sites that do not have them natively. Refer to the FiveFilters quickstart guide to assist setup. There are two fields you must complete to create an RSS feed. The URL of the webpage you want to target. For example, a blog homepage that will trigger each time a new article is posted The HTML element of the link to the article For Example, URL = https://www.parvenunext.com/blog HTML element = _1hW_F _20PiO _2niVd blog-post-homepage-link-hashtag-hover-color _3eIW1 You will get a code block as a result. You will paste the code you create here in a later step. It’s a best practice to create an RSS feed using FiveFilters, even if the website has one natively. This way all your column headers will be standardized since it will all be in the FiveFilters format for RSS feeds.

3. Design your email template in Sendgrid’s Email API Product and copy the HTML

Sendgrid has two separate products – Email API and Email Marketing. This workflow requires the Email API. Use brackets for text replacements. IE {Finance Job 1} as the text and {Finance Job Link 1} as the URL hyperlink. Once you’ve designed your newsletter and added the necessary substitutions visually, you can switch to the HTML editor version and copy the HTML generated by Sendgrid.

4. Curate content and filter for relevancy with Parabola and send the results to Sheets

Import your RSS feeds to Parabola. Remove less relevant content by filtering: Use a Column Filter step to keep the article title, article description, and article link. Use an Insert Column step to create a column called “Channel” and name it after the website you filled in the content for. In the example RSS created above, the channel would be “Parvenu.” Insert an Add Date and Time step to insert a timestamp. Use a Stack Tables step to combine all the individual RSS feeds together and De-dupe by the article URL. Export your results to Google Sheets: Create a Google Sheet with columns for the Article Title, Article URL, Channel, and Description. Use a Sheets Import step to import the RSS feed results sheet. Stack the old data from the Sheets Import RSS feed with the new data being pulled from the API Imports. De-Dupe by Article URL and use a Sheets Export to send old data and new data back to the Sheet you created for the results of the RSS feeds. Schedule this workflow to run daily so that it adds new articles from any of your 10-15 sources that pass the filters to the Google Sheet that holds the results.

5. Filter for recency and insert a column called “Common” with a default value set to “X”

Create a new workflow in Parabola and use a Sheets Import step to import the RSS results Sheet. Use a Compare Date and Time step to compare the Timestamp from the Sheets Import with the current time to create a new column called “Distance” with a number that indicates the number of days between the article posting date and today. Then use a row filter to keep rows where the Distance column is less than or equal to “X.” If you are sending an article weekly X should be 7, every other week it should be 14, and once a month, it should be 30. This keeps the most recent articles that were posted and ensures there’s no overlap from previous newsletters. Use an Insert Row Numbers step followed by a Row Filter to keep rows where the Row Number is less than or equal to “Y.” You have a fixed number of text replacements in the email template you designed in Sendgrid. “Y” should equal the number of text replacements you created in Sendgrid. If you are sending a newsletter every 14 days, you might have 20 articles that were posted since the last article went out that passed the filters. If you created 15 text replacements in Sendgrid, you would make the Row Filter keep steps where the row number is less than or equal to 15. This will keep the top 15 articles and remove the remaining 5. Use an Insert Column step to create a new column called “Common” with a default value of “X”

6. Use If/Else steps to format all the subjects and links in the table into one row, instead of one row per article

Create two separate paths of If/Else steps in Parabola The first path is for the article titles The second path is for the article URLs Optionally, create a third If/Else path for the article description if you want to include the description in your newsletter. Structure your If/Else steps to create new columns for the subject. For example, create a new column called “Subject1” if Row Number equals 1 and set the value to “Subject.” For example, create a new column called “Subject2” if Row Number equals 2 and set the value to “Subject.” For example, create a new column called “Subject3” if Row Number equals 3 and set the value to “Subject.” Structure your If/Else steps to create new columns for the links. For example, create a new column called “Link1” if Row Number equals 1 and set the value to “Link.” For example, create a new column called “Link2” if Row Number equals 2 and set the value to “Link.” For example, create a new column called “Link3” if Row Number equals 3 and set the value to “Link.” In your table with subjects, use an Insert Column step to Insert Column with add columns for each Link column created in the other table. For example, Link1, Link2, Link3 Since you cannot create blank values using an Insert Column step, use a “.” as a default value and then add a Find and Replace step to remove “.” in the columns you just created. Use a Stack tables step to merge the table with subjects and the table with the URLs. Make the table with the subject the 1st input on the Table Merge, so it keeps the column headers. The table should look as pictured below with each subject and link on a unique row. De-Dupe on “Common” and merge the unique subject and links. Since the Common column’s default value is “X,” it will consolidate all rows of the newsletter into a single row with the values for subjects and links filled in.

7. Keep your email list in a Google Sheet and import the list using a Sheets Import in Parabola.

8. Use an Insert Column step to create a “Common” column with a default value “X” for each person on your newsletter list.

9. Use a Join step in Parabola to join by “Common” in both tables.

Since both tables have “Common” with a value of “X,” the effect is a table with each row representing the subscriber’s email address and all of the content for the newsletter. The subscriber should be unique on each line. The content should be the same on each line.

10. Paste the email HTML into the Sendgrid step in Parabola and schedule the frequency of your newsletter sends