JangoMail offers the ability to send to segments or portions of your list at a time. Whether you want to send to only those at a certain domain, or based on a field in your list, or action they have taken with your emails, you can accomplish this easily with the use of Filter and Send.
You can filter your list based on two kinds of criteria:
- The information you have stored for each list member in the list's fields, such as (FirstName, LastName, Age, DOB, City)
- Information stored in your JangoMail account about the list member's past behavior, such as clicks and opens
How to Filter your List
- Navigate to the Lists tab > click the name of the list that you wish to filter
- Under the Quick Links toolbar, click the Filter button
- Use the dropdown to choose the Field or Action, Operator, and type a Value
- Click additional criteria to add more options to your filter
- Choose to load/save your Filter to be used in the future OR
- Click EMAIL THESE MEMBERS to use the filter to send an email
- Once clicked, you will be taken to the Campaigns screen to select a campaign to be sent or create a new one
How to Use Advanced Filter
Note: This information is for advanced users. While programming knowledge is not necessary, an understanding of some SQL will help.
- Navigate to the Lists tab > click the name of the list that you wish to filter
- Under the Quick Links toolbar, click the Filter button
- Click Advanced Filter
- The Advanced Filter box will appear
- Type a "SQL where clause" in the box
- Click TEST QUERY to perform a test of the "SQL where clause" specified
- Choose to load/save your Filter to be used in the future OR
- Click EMAIL THESE MEMBERS to use the filter to send an email
- Once clicked, you will be taken to the Campaigns screen to select a campaign to be sent or create a new one
Advanced Filter Example
The following info is for Advanced Filter, and will give examples in freehand SQL.
If you have a list called "My Contacts" and you want to send an email to only the Hotmail.com addresses in this list, your WHERE clause would look like:
emailaddress like '%%hotmail.com%%'
The "emailaddress" field is present in all lists, so it can always be used in your SQL statements. Let's assume that additionally you have these fields in the list:
FirstName
LastName
Age
You want to send to those members of the list whose age is greater than or equal to 30.
The WHERE clause would look like:
CONVERT(int, Age) >= 30
It is important to note the use of the CONVERT statement here. JangoMail treats all list field values as strings. In order to compare the field "Age" to the number 30, it first has to be treated like a number itself, in this case an integer. The SQL CONVERT function allows us to cast "Age" to an integer.
Finally, let's assume you want to send to only those members of the list that have joined in the last 30 days. Another built-in field in all lists is the "submission_date" field that stores the date and time that an email address joined the list. You can use this field along with the SQL DATEDIFF function to create the appropriate WHERE clause:
DATEDIFF(Day, submission_date, GetDate()) <= 30
In this case, DATEDIFF calculates the number of days in between submission_date and GetDate(). GetDate() always returns the current system date/time in the EST/New York time zone.
Filters Based on List Member Behavior
So far, we have covered filters based on a list member's individual profile – that is, the data that is stored in the list member fields. You also have the ability to filter lists based off the list member's past behavior, such as clicks and opens of a particular campaign in the past.
For example, if you want to send to only members of the "My Contacts" list that have clicked on any link in your account's history, your WHERE clause would look like:
emailaddress in (##clicked##)
In this case, ##clicked## is a virtual JangoMail table that contains the email addresses of all those that have clicked any URL in your account's history. Similarly, if you wanted to send to only members of the "My Contacts" list that have opened any email in your account's history, your WHERE clause would look like:
emailaddress in (##opened##)
The full list of virtual tables, including format variations based on additional filter criteria can be found below:
##clicked## |
email addresses that have clicked any URL in any emailing in your account's history |
##clicked-http://www.mybigstore.com## |
email addresses that have clicked a specific URL in your account' s history |
##MassEmailID.clicked## |
email addresses that have clicked any URL in a previously sent mass email campaign |
##MassEmailID.clicked-http://www.mybigstore.com##
|
email addresses that have clicked a specific URL in a previously sent mass email campaign |
##opened## |
email addresses that have opened email in your account's history |
##MassEmailID.opened## |
email addresses that have opened a specific previously sent mass email campaign |
##replied## |
email addresses that have replied to any mass email in your account's history |
##MassEmailID.replied## |
email addresses that have replied to a specific previously sent mass email campaign |
##received## |
email addresses that have received any mass email in your account's history |
##MassEmailID.received## |
email addresses that have received a specific previously sent mass email campaign |
##action-URL## |
email addresses that have landed on a specific page within your web site |
##action-CustomParameter## |
email addresses that have landed on a page within your web site that has been tagged by you with a specific parameter |
##MassEmailID.action-URL## |
email addresses that have landed on specific page within your web site after clicking through from a specific mass email campaign |
##MassEmailID.action-CustomParameter## |
email addresses that have landed on a page within your web site that has been tagged by you with a specific parameter, after having clicked through from a specific mass email campaign |
Notes: The mass email ID for a campaign can be retrieved from the "Sending Complete" email notification or from the Reports → Open Report Dashboard section. Your account's history is limited to how long JangoMail stores reporting data – 90 days for most types of reporting data.
More Examples
- To send to members of your list that have clicked the URL http://www.mybigstore.com/Product1.asp in your account's history:
WHERE
emailaddress in (##clicked-http://www.mybigstore.com/Product1.asp##) - To send to members of your list that have opened but never clicked anything in your account's history:
WHERE
emailaddress in (##opened##) and emailaddress NOT in (##clicked##) - To send to just the yahoo.com addresses that opened mass email 34930234
WHERE
emailaddress like '%yahoo.com%' and emailaddress in (##34930234.opened##) - To send to just those members whose birthday is today and have previously made a purchase on your web site (assuming DOB is a field in your list)
WHERE
Month(DOB) = Month(GetDate()) and Day(DOB) = Day(GetDate()) and emailaddress in (##action-http://www.mybigstore.com/purchase_confirm.html##
Using with the API
To use advanced list filters with the API, you would pass in the filter criteria just as you would any ordinary list filter criteria. In the SendMassEmail, SendMassEmailPrevious, or SendMassEmailRaw methods, you would pass in the filter criteria into the ToGroupFilter input parameter in the following format:
[Group Name]: [WHERE clause]
For example, if the list (group) was called "My Contacts", the input parameter's value might look like this if you wished to send to all list members that had previously clicked:
My Contacts: emailaddress in (##clicked##)
Optimization Tips
To optimize the speed at which your lists are filtered:
- Don't keep extraneous fields in your list. For example, if your list has the fields FirstName and LastName, but you're not using them, delete these fields from the list. It will make a significant difference in the speed of filtering.
- Replace the * in the SELECT clause with only the fields you need for this particular emailing. The fields should be separated by commas. At a minimum, you will need the "emailaddress" field. But if you are not personalizing your Subject/Message with other list field data, then you don't need any other fields to be a part of the SELECT statement.
- In the Advanced Filter mode, click the "Query is large, so only show sample records" checkbox if you anticipate that your query will take a long time or will be processing a large number of records. Checking this box will make the filter run approximately 95% faster—the only disadvantage to checking this box is that you won't be able to see your filtered data on the following page; you will only be able to see five sample records.
Comments
0 comments
Article is closed for comments.