Personalisation: Dynamic content, merge fields, and more
📺 For more video content, check out More Personalisation: Query Strings, More Personalisation: Conditional Logic Statements, More Personalisation: CSS & Class Attribution. More otherwise continue reading the guide below...
Creating a personalised on-site experience for your donors and fundraisers can result in deeper engagement and greater retention. This is because we desire to seen as an individual rather than just in the collective mass. So how do you achieve this in Raisely and how far can you take it? This is what we can explore…
Skip Ahead To
How Personalisation Works
Where is this data stored?
There are three data sources you can use: Raisely’s Supporter Management Tool (People) or for campaign pages, the Campaign’s database containing non-people data, and the URL. Data can be stored in these three places for you to use for personalisation. To see all the default data that Raisely stores in the Supporter Management Tool and the Campaign database, check out the Merge Fields - Cheat Sheet.
Adding Dynamic Content
- Any Campaign page
- Any Message content
Caring for Your Data
The Rules
Quick Way
Manual Way - From Database
Manual Way - From URL query string
Simple Examples
### accordion
## expand
# Inserting a person's first name in a greeting on the home page
In your heading/paragraph block, type #first and select User First name.
## expand
## expand
# Inserting a person's first name in a greeting using the URL
In your heading/paragraph block, type {{query.firstName}} This will work if your URL contains ?firstName=name
## expand
## expand
# Pre-fill a form using URL data
Your donation, signup and lead forms all can pull in data found in the URL. All you need to do is get the donation form field to look for its value in the URL query string. To do this:
- 1
- Plan out your URL, so that the data you wish to use is captured using a query string (eg. https://site.com ?firstName=value&lastName=value&email=value)
- 2
- Create any extra Custom fields in Raisely that you’ll need to store this data
- 3
- From the Campaign sidebar, select Settings > Donation Form OR Signup Form
- 4
- Expand each field you are looking to pre-fill and in the Default Value enter {{query.key}} For example, if the URL has …?firstName=James then you’d enter {{query.firstName}}
- Now you can load the page with the query string to see the form pre-fill.
## expand
## expand
# Adding in a date field
Say you have a custom field for Birthday on each persons individual fundraising profile page. To present this field in a neat way, simply add {{prettyDate current.profile.public.birthday}}. The 'prettyDate' prefix converts the date field to a more readable format.
## expand
### accordion
Advanced Examples
Below are a few common examples of more advanced personalisation. These should enable you to explore others similar.
### accordion
## expand
# Adding conditional dynamic content
Here you are wishing to have content displayed based on certain values within your data fields. For example, if you were wanting to insert an encouragement for those who are yet to receive a donation on their fundraising profile, you can use conditions to show this message just for them and not for others.
A condition statement is simple:
{{#condition & fieldID & value}} Insert your content which can also include {{merge fields}} in them.{{/condition}}
For example, to use the EQUAL condition, which looks to see if the value allocated matches the persons database field, the statement would be this:
{{#eq profile.total 0}}Getting off the starting blocks can be nerve-racking but we are here to cheer you on. Check out our resources below to help you raise your first dollar!{{/eq}}
To view all the available conditional statements you can use, check out the Advanced Conditions Cheat Sheet.
## expand
## expand
# Adding conditional dynamic content via PURLs (Personalised URLs)
Here you are hoping to dynamically change the content displayed on certain values within your PURL. For example, if you wanted to greet someone with their first name that's found in the PURL, or showing a different message based on a different query parameter found in the PURL.
For example, let's say you have the following PURL:
https://campaignsite.com/?firstName=John
You can add the following conditional statement to your home page:
{{#if query.firstName}} Hey {{query.firstName}}, thanks for being a great supporter of the campaign! {{else}} Thanks for being a great support of the campaign!{{/if}}
To further elaborate, let's say you have the following PURL with other query parameters found in the PURL:
https://campaignsite.com/?donorType=regular
You can add the following conditional statement to your home page:
{{#eq query.donorType 'regular'}} As a regular supporter, you help to ensure consistent funding for important programs. {{else eq query.donorType 'major'}} As a generous supporter, you help us shift the needle with making a real impact on these issues. {{else eq query.donorType 'xyz'}} As a xyz supporter, you help us ensure.....{{else}} Help us ensure that.... {{/eq}}
So this then allows you to set up multiple PURLs, with different results on your home page!
## expand
### accordion
Troubleshooting - Conditional Statements & Merge Fields
Applying conditional logic to merge fields is an advanced use of Raisely, and learning can result in times of trial and error. Here is a checklist to follow when your merge fields and conditional statements:
- If your campaign page displays an error OR the message will not send, the most common reason is that there is a mistype in the statement. Be sure to check -
- Is the statement missing a curly brace {{ }}
- Is there a # preceding the condition (eg. {{#if... }})
- Is the condition closed using a / (eg. {{... /if}}
- If no data is populating, be sure to check -
- Is there actually data for that field? Run a Report to view a known record (person, transaction, profile) to see if that data is coming through
- If entering the merge field manually, be sure that non-numeric values are enclosed by single apostrophe marks (eg. {{#if {{transaction.firstName 'Henry'}}... )
- Be sure that the data you are calling for aligns with the Message Audience or the Page being used. For example, if your message audience is Donors, you can only reference data related to a single donation. A helpful way to visualise this would be to run a donation report to view data fields related to the audience.
- If pulling data from a custom field, be sure that the field's privacy setting is added (public/private). For example, {{#if {{donation.private.customField}}. You can check the privacy setting for the field in Organisation > Custom Fields.
- If you are using conditional statements on a Profile or Team Profile Page, be sure to add current to the manual merge field. For example, {{#gt {{current.profile.goal 500}}... }}. This is so the field references the fundraisers profile path, so it knows where to find the data.
Common Questions
### accordion
## expand
# How can I create a link that automatically logs a user into their account?
You can add a query string to your URL that logs the user in using their unique access token. Every People account has an access token, which can simply be found by running a People Report. To embed the access token in button link within Raisely's messages, use:
"https://site.raisely.com/?accessToken={{user.accessToken}}"
## expand
### accordion
Cannot find the support guide you are after? Head on over to our YouTube channel 📺 for more creative content to help you go further. You can even leave us comments, suggesting new content ideas 🤯