Skip to main content

Automating Personalized Newsletter Delivery for 3,000+ Subscribers

Marketing team preparing personalized newsletter content for subscribers

Overview

Llama Collage

Llama Collage

Marketing

Challenge

The client needed a scalable way to deliver relevant newsletters as its subscriber base and content library grew. Manual filtering, content selection, and campaign preparation were becoming increasingly difficult to maintain.

Solution

We developed an automated newsletter workflow that matched subscriber interests with relevant content, generated personalized emails, and delivered campaigns through Brevo.

PythonBrevoCron JobsbashJinja 2
Subscribers Supported

3,000+

Built the workflow to handle personalized newsletter delivery across a subscriber base exceeding 3,000 users.

Data & Content Streams

8

Processed subscriber, project, tweet, article, video, podcast, resource, and newsletter information within one automated pipeline.

Automated Distribution

100%

Replaced the recurring manual newsletter distribution process with an automated workflow from data preparation through campaign delivery.

Client

Llama College is a DeFi and blockchain education platform designed to help users discover and follow relevant information about projects they are interested in. 

Its content environment included tweets, articles, videos, podcasts, project information, and other educational resources. As the audience expanded, the platform needed a more systematic way to connect this growing content library with individual subscriber interests.  

Personalized newsletters were therefore not simply an email marketing requirement. They formed part of the wider content experience by helping subscribers receive updates related to the projects and protocols they actively followed. 

Challenge

Preparing a useful newsletter requires data from several parts of the platform. The team needed to retrieve subscriber records, identify active interests, and collect recent content. That content then had to be matched with the right projects before each email could be prepared. 

The existing process relied heavily on manual filtering and campaign preparation. Newsletter cycles could require 15–20+ hours of manual effort, while the subscriber base had grown from approximately 500 to more than 3,000 users. 

As the audience and content library expanded, maintaining targeted communication became increasingly difficult. The existing process was simply becoming harder to manage at scale.  

Key Issues 

  • Subscriber preferences and content information were distributed across multiple data sources.  
  • Newsletter preparation required repeated manual filtering and audience segmentation.  
  • Different users followed different projects, making one-size-fits-all campaigns unsuitable.  
  • Recent tweets, articles, videos, podcasts, and resources had to be matched with the right interests.  
  • Growing subscriber and content volumes made the existing workflow increasingly difficult to maintain.  

Solution

A personalized newsletter automation system was developed to connect Llama College's subscriber information, project data, content library, and email delivery process. The workflow automated the full process, from collecting platform data to generating personalized newsletter content and delivering each campaign.  

Concurrent Data Aggregation 

The pipeline retrieved data for users, projects, tweets, articles, videos, podcasts, resources, and newsletters through API integrations. Independent retrieval operations ran concurrently using Python's ThreadPoolExecutor. This avoided waiting for each source to finish sequentially. Cursor-based pagination was also used to handle larger datasets.  

Subscriber Interest Matching 

The workflow identified the projects each subscriber followed. These relationships determined which content was relevant to each user. Tweets could be filtered by recency. Articles, videos, podcasts, and other resources were grouped around the appropriate projects before newsletter generation.  

Dynamic Email Personalization 

Jinja2 was used to create reusable HTML newsletters with conditional content blocks. Instead of maintaining separate hardcoded campaigns, template logic determined which projects and content types appeared for each subscriber. A single template system could therefore support multiple personalized email variations.  

Automated Campaign Delivery 

Generated emails were connected to Brevo for bulk distribution. This created a direct path from processed subscriber data to campaign delivery. The team no longer needed to manually rebuild recipient lists and email variations for every newsletter cycle.  

Scheduled & Production-Ready Execution 

The implementation included error handling, logging, execution tracking, email validation, and other production controls. A Bash script supported cron-based scheduling, allowing the workflow to run on a recurring schedule.  


Key Deliverables 

  • Built automated aggregation across eight subscriber, project, and content data streams.  
  • Developed interest-based content matching with recency and project filtering.  
  • Created reusable personalized HTML newsletters using Jinja2 conditional rendering.  
  • Integrated Brevo for automated campaign distribution to 3,000+ subscribers.  
  • Added concurrent processing, pagination, logging, validation, and scheduling for reliable recurring execution.

Tools Used

  • Python
  • Brevo
  • Jinja 2
  • Cron Jobs
  • bash

Results

Removed Manual Newsletter Preparation 

The system automated the full newsletter process, from retrieving subscriber data to matching content and delivering campaigns. The team no longer needed to prepare each newsletter manually.  

Made Personalization Practical at 3,000+ Subscriber Scale 

Subscriber interests could be processed systematically and matched with relevant project content. This allowed 3,000+ users to receive targeted newsletters without manually creating separate versions for different audiences.  

Accelerated Multi-Source Data Collection 

Concurrent processing significantly reduced the time required to retrieve newsletter data. The supplied implementation benchmark improved from approximately 18 seconds sequentially to around 5 seconds in parallel.  

Expanded the Content Available for Each Campaign 

The workflow could evaluate tweets, articles, videos, podcasts, and resources within the same processing cycle. This gave each campaign access to a broader range of relevant content without requiring manual selection from individual sources.  

Standardized Newsletter Generation 

Reusable templates created a consistent structure for newsletter generation. Different combinations of project-specific content could be assembled without rebuilding the email format for every campaign.

Impact

Turned newsletter preparation into a scalable content-personalization workflow

Business Impact 

  • Reduced the operational effort required to prepare targeted newsletters for a growing audience.  
  • Made subscriber interests directly usable for deciding which content each audience segment received.  
  • Created a repeatable distribution process capable of accommodating additional users and content sources.  
  • Allowed the team to spend less time assembling campaigns and more time managing content and platform activities.  
  • Established a production-ready foundation for maintaining personalized communication as the platform continued to evolve.
Book Consultation