Sep 13, 2011

Create Nested Segments in MailChimp with Hairball

I’m happy to report that you can now nest segments within Hairball. (That’s right—it’s only been a few weeks, and we’re already adding new features to Hairball.)

Some of our users liked using Hairball for extensive segmentation, but they wanted to create segments within segments in Hairball, which they could then import as one segment in MailChimp.

Hairball simplifies that process. Maybe you want to create a segment of subscribers in particular locations who open and click your campaigns, so you can invite them to local events. That’s easy: Build a segment based on activity, and from there, narrow down the segment based on address. Or maybe you want to target inactive subscribers who were recently added to your list, so you can reach out. You can even create percentage-based segments for testing, and build a segment within one of those groups of people who didn’t open or click, to see if new content gets them to open your email. The possibilities are endless.

Still with me? Good.

Here’s an interesting example of how one of our customers wanted to use Hairball: She was having deliverability issues when she sent to a large list. She thought that certain email-address domains were causing problems, and predicted that by removing inactive subscribers with problematic email addresses, her delivery problems would go away. She can now use Hairball to create a nested segment of people who have email addresses that contain bad domains, and haven’t opened any of her emails. She can then send a MailChimp campaign to everyone else.

Interested in doing some similar segmentation? Here’s how it works:

Build two segments. First, a segment of people with suspected problem domains in their email address. We’ll call it "Bad Domains." Select match any of the following, and enter separate email address > contains > domain conditions for each domain you want to test.










Next, create your nested segment. Let’s call this one "Bad Inactives." Set the segment to match all of the following, because this is where we’re combining two sets of conditions.

To pinpoint people who haven’t opened any campaigns, choose subscriber activity > did not open > any campaign.

But people who just signed up for your list wouldn’t have opened any campaigns and aren’t necessarily inactive, so add another condition that says these people were added before the last campaign was sent (date added > is before > the last campaign was sent).

Finally, we want these inactive subscribers to be within the bad-domain segment we just created. Select Hairball segment > member is part of > Bad Domains.










Click create segment. You now have a nested segment containing the people you’re going to leave out of this test. Upload the segment to MailChimp and log in. Create a campaign, and send to everyone but the people in the segment you just created (static segment > member is not part of > Bad Inactives). If your deliverability improves, then you’ve found the problem.









Basically, this new feature gives you a quick path to nest segmentation queries, and we didn’t have to get crazy complicated in the query builder or the UI of the segmentation screen. Everybody wins!

Update Hairball to make it happen: