Skip to main content

Guidance for Using Machine Learning to Customize Nonprofit Direct Mailings on AWS

Personalize nonprofit direct mail campaigns to increase response rates and engage new donors

Overview

This Guidance helps nonprofit organizations use personalization in direct mailing efforts to improve the member experience. Personalization helps ensure any calls to action are timely and tailored to the right audience, which can increase overall return on investment for a nonprofit organization. The services in this Guidance orchestrate an automated workflow, through which the program administrator (or person responsible for direct mailings) can pull the necessary member data, leverage a personalization model powered by machine learning (ML), and generate customized mailings for members.

How it works

This architecture diagram shows how nonprofits can use machine learning to personalize the messages sent in direct mailing efforts.

Well-Architected Pillars

The architecture diagram above is an example of a Solution created with Well-Architected best practices in mind. To be fully Well-Architected, you should follow as many Well-Architected best practices as possible.

AWS CloudFormation allows you to deploy this Guidance as infrastructure as code. You can automate this Guidance for fast iteration and consistent deployments, and you can modify the CloudFormation template to best suit your needs and workload requirements. Additionally, Step Functions provides a reliable way to coordinate between the preprocessing and postprocessing steps so you can examine each step and automate the manual tasks of cleaning and normalizing data.

Read the Operational Excellence whitepaper

This Guidance uses Amazon Cognito to provide secure, federated user authentication so you can be sure that any users with access to member data are authenticated. You can use Amazon Cognito with your existing user directories or third-party identity providers. This Guidance lets you set up IAM roles and policies to limit access by the least privilege needed to implement the Guidance workflow. Additionally, Amazon S3 encrypts your data at rest using keys that you can manage.

Read the Security whitepaper

This Guidance uses a serverless architecture that is automatically scalable and available to enhance reliability. All services used in this architecture span multiple Availability Zones within an AWS Region. Additionally, AWS Amplify Hosting and Amazon Personalize are managed services, so you don’t have to create virtual private clouds or compute resources. Managed services also handle updates and scale to meet demand.

Read the Reliability whitepaper

The resources used in this Guidance are only active during the time of data processing. Using Amazon Personalize in batch mode helps you save on costs and running time. Additionally, AWS Lambda and Amplify only consume resources when they are being actively used to process a workflow.

Read the Performance Efficiency whitepaper

This Guidance uses serverless technologies that can automatically scale, so you only pay for the resources you use and don’t need to pay for idle infrastructure. Additionally, Amazon Personalize is purpose-built for generating recommendations, so you can make the predictions without needing to pay for a custom ML model.

Read the Cost Optimization whitepaper

This Guidance uses managed services and dynamic scaling to help ensure that resources are only used as needed, minimizing environmental impact. For example, managed services like Amazon Personalize and Amplify Hosting don’t require you to provision cloud services, and they scale down automatically when not in use.

Read the Sustainability whitepaper

Disclaimer

The sample code; software libraries; command line tools; proofs of concept; templates; or other related technology (including any of the foregoing that are provided by our personnel) is provided to you as AWS Content under the AWS Customer Agreement, or the relevant written agreement between you and AWS (whichever applies). You should not use this AWS Content in your production accounts, or on production or other critical data. You are responsible for testing, securing, and optimizing the AWS Content, such as sample code, as appropriate for production grade use based on your specific quality control practices and standards. Deploying AWS Content may incur AWS charges for creating or using AWS chargeable resources, such as running Amazon EC2 instances or using Amazon S3 storage.