I’ve been using ActiveCampaign for about 3 months now to capture subscribers on my blog. I’m going to share with you a behind the scenes look at why I picked ActiveCampaign and what my setup looks like.
Why I chose ActiveCampaign
I’m an active user of Marketo, Silverpop, Pardot, and Salesforce Marketing Cloud, which are all great tools, however, all those tools are too expensive for a personal blog. So I decided to check out some cheaper options. Mailchimp was one of my top contenders and it’s free for up to 2,000 subscribers but I decided to not go with it because I wanted more marketing automation features.
Well Designed
The interface is so well designed I didn’t need to do any training up-front.
Pricing
Their pricing model is hard to beat. For $9 a month you can get all the marketing automation features and email marketing features. They have no setup fees and you can cancel at any time, making it perfect for a personal blog.
List Setup
The first thing I did was create 2 lists within the platform. The first list was for newsletter subscribers, the second list was for resource downloads.
Fields
I then created all the fields for each of the lists.
Newsletter List Fields
- First Name
- Last Name
- Email Address
- Blog Segment
- Blog Source
Most of these fields are pretty standard except for blog segment and blog source. Since each one of my blog posts has an option for a person to subscribe at the bottom, I wanted to be able to track which posts were generating the most subscribers. The blog source field is setup to capture the post name of the blog post where the form is located. The blog segment field captures the category that the blog post is under.

Resources List Fields
- First Name
- Last Name
- Email Address
- Newsletter Opt-in (checkbox)
- Resource Download Name
- Segment
The resource download name field is used to capture the name of the resource. Having this field allows me to have 1 list setup for all resource downloads, then have separate automated campaigns based on that field.
Forms
After all my fields were created it was time to use their form builder. I create 2 forms (one for each list).
Newsletter Form
As you can see from the screenshot, my form contains all the fields I set up previously in my list and blog source and blog segment are hidden fields. There are some options to customize the theme/style of the form, but I knew I wanted to embed the form code on my website so I didn’t play around with it.
The form generates some HTML so you can easily integrate it with any site. The default HTML code looked something like this:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 |
<style> ._form { position:relative; background:#fff; width:400px;/*F*/ padding:0!important; text-align:left; } ._form em { color:#9a9a9a; } ._form a { margin-left:3px; } ._form ._field, ._form ._field ._label, ._form ._type_radio, ._form ._type_checkbox, ._form ._type_captcha, ._form ._field table { background:none; } ._form ._field { position:relative; width:100%; cursor:move; font-style:normal; margin:1.2em 0; padding:0; overflow:hidden; } ._form ._field input[type="text"] { width:100%; padding:8px; font-size:16px; border:1px solid #b6b6b6; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } ._form ._field ._label { display:block; margin:0 0 0.5em; padding:0!important; font-size:15px; } ._form ._field ._option input[type="checkbox"], ._form ._field ._option input[type="radio"] { position:relative; width:13px; height:13px; margin:-4px 0 0 1px; cursor:pointer; vertical-align:middle; } ._form ._field ._option input[type="submit"], ._form ._field ._option input[type="button"] { margin:0; cursor:pointer; height:35px; width:auto; font-size:15px; } ._form ._field ._option select { display:block; margin:0; padding:0; width:auto; font-size:15px; border:1px solid #b6b6b6; } ._form ._type_radio ._option, ._form ._type_checkbox ._option { font-size:13px; font-weight:normal; line-height:1.8; } ._form ._type_date ._option input[type="text"] { float:left; width:100px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } ._form ._type_date ._option input[type="button"] { width:37px; height:36px; margin-left:5px; padding:20px; background:url(http://jennamolby.activehosted.com/admin/css/../images/icon_calendar.gif) no-repeat 0 0; border:none; outline:none; text-indent:-9999px; } ._form ._type_captcha img { float:left; margin:0 6px 0 0; width:70px; height:33px; border:1px solid #b6b6b6; } ._form ._type_captcha input[type="text"] { margin:-14px 0 0 0!important; width:25%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } ._form ._field table { width:100%!important; } ._form ._field table tbody tr td { width:50%!important; font-size:15px; } ._form { width:400px;/*F*/ padding:16px!important; background:#eff9fd; color:#2c2c2c; font-weight:normal; border:1px solid #c4d5da; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; } ._form #notice { margin:10px 0 0 -3px!important; padding:0; color:#959c9f; font-size:11px; font-family:helvetica,arial,sans-serif; } ._form #notice a, ._form #notice a:visited { color:#959c9f; text-decoration:underline; } ._form ._field, ._form ._field ._label, ._form ._type_radio, ._form ._type_checkbox, ._form ._type_captcha, ._form ._field table { background:none; } ._form ._field { position:relative; width:100%; cursor:default; font-style:normal; margin:0 0 16px!important; padding:0!important; overflow:hidden; } ._form ._field input[type="text"], ._form ._field input[type="email"] { width:100%; margin:0!important; padding:4px!important; font-size:16px; border:1px solid #b4c5cb; border-top:1px solid #a5b4b9; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } ._form ._field ._label { margin:0 0 0.3em!important; color:#546f79; font-size:14px; font-family:helvetica,arial,sans-serif; font-weight:700; } ._form ._field ._option { margin:0; padding:0; color:#546f79; font-size:13px; font-family:helvetica,arial,sans-serif; font-weight:normal; line-height:20px; } ._form ._type_header ._label { width:100%; font-style:normal; font-size:20px!important; line-height:24px; color:#546f79; margin:0 0 5px!important; padding:0 0 10px!important; overflow:hidden; border-bottom:1px solid #e0e0e0; } ._form ._type_input ._option textarea{ width:97%!important; background:#fafafa; border:1px solid #b4c5cb; border-top:1px solid #a5b4b9; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; } ._form ._field ._option input[type="submit"], ._form ._field ._option input[type="button"] { width:auto; margin:10px 0 0!important; padding:8px 15px!important; cursor:pointer; font-family:helvetica,arial,sans-serif; font-weight:700; font-size:16px; color:#ffffff; background:#82aebe; border:1px solid #6a9eb0; border-bottom:1px solid #5f8e9f; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; text-shadow:0px 1px 1px #5f8e9f!important; } ._form ._type_input ._option input[type="submit"]:hover, ._form ._type_input ._option input[type="button"]:hover { background:#6494a6; } ._form ._type_radio ._option label { display:inline; font-size:16px; font-weight:normal; line-height:18px; } ._form ._type_radio ._option label input[type="radio"] { position:relative; width:13px; height:13px; margin:-4px 0 0 1px!important; cursor:pointer; vertical-align:middle; border:none; line-height:18px; } ._form ._type_date ._option input[type="text"] { float:left; width:100px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } ._form ._type_date ._option input[type="button"] { float:left; width:24px; height:24px; margin:2px 0 0 5px!important; padding:0; background:url(http://jennamolby.activehosted.com/admin/templates/form-themes/simple-blue/images/icon_calendar.gif) no-repeat; border:none; outline:none; text-indent:-9999px; } ._form ._field ._option select { display:block; margin:0; padding:0; width:auto; font-size:16px; border:1px solid #cce0e7; } ._form ._type_captcha img { float:left; width:88px; height:44px; margin:0 6px 0 0; border:1px solid #cce0e7; } ._form ._type_captcha input[type="text"] { margin:0!important; width:40%; font-size:16px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } ._form ._field table { margin:0; padding:0; border-collapse:collapse; width:100%!important; table-layout:fixed; margin-bottom:18px; font-size:13px!important; border-collapse:collapse; border-spacing:0; } ._form ._field table td { padding:0 10px 0 0!important; line-height:18px; text-align:left; font-size:13px!important; color:#606060; } ._form ._type_input ._option table tbody#_forward_rcpt input {margin:0 0 5px 0!important; width:96%!important;} ._form ._type_input ._option table tbody#_forward_rcpt img.image_addrcpt {cursor:pointer;} .form_errors{ text-align:center; font-size:15px; margin:10px; color:#900; font-family:Arial, Helvetica, sans-serif; font-weight:bold; margin-bottom:20px; } </style> <form action='//jennamolby.activehosted.com/proc.php' method='post' id='_form_1029' accept-charset='utf-8' enctype='multipart/form-data'> <input type='hidden' name='f' value='1029'> <input type='hidden' name='s' value=''> <input type='hidden' name='c' value='0'> <input type='hidden' name='m' value='0'> <input type='hidden' name='act' value='sub'> <input type='hidden' name='nlbox[]' value='2'> <div class='_form'> <div class='formwrapper'> <div id='_field100'> <div id='compile100' class='_field _type_input'> <table cellpadding='0' cellspacing='0'> <tr> <td> <div class='_label '> First Name </div> </td> <td> <div class='_label '> Last Name </div> </td> </tr> <tr> <td> <div class='_option'> <input type='text' name='firstname' > </div> </td> <td> <div class='_option'> <input type='text' name='lastname' > </div> </td> </tr> </table> </div> </div> <div id='_field91'> <div id='compile91' class='_field _type_input'> <div class='_label '> Email * </div> <div class='_option'> <input type='email' name='email' > </div> </div> </div> <div id='_field101'> <div id='compile101' class='_field _type_hidden'> <div class='_option'> <input type='hidden' name='field[2]' value=''> </div> </div> </div> <div id='_field102'> <div id='compile102' class='_field _type_hidden'> <div class='_option'> <input type='hidden' name='field[3]' value=''> </div> </div> </div> <div id='_field92'> <div id='compile92' class='_field _type_input'> <div class='_option'> <input type='submit' value="Subscribe"> </div> </div> </div> </div> <div class="preview_part"> <div id="notice"> <a href="http://www.activecampaign.com/" title="email marketing" target="_blank">email marketing</a> by activecampaign </div> </div> </div> </form> |
I pasted the generated form code into Sublime Text and stripped out all the CSS and generated DIVs, leaving me with a clean HTML form to embed on my website.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<form action="//jennamolby.activehosted.com/proc.php" method="post" id='_form_1029' accept-charset='utf-8' enctype='multipart/form-data'> <input type='hidden' name='f' value='1029'> <input type='hidden' name='s' value=''> <input type='hidden' name='c' value='0'> <input type='hidden' name='m' value='0'> <input type='hidden' name='act' value='sub'> <input type='hidden' name='nlbox[]' value='2'> <div class="row"> <label>First Name</label> <input type='text' name='firstname' class="form-control" required> </div> <div class="row"> <label>Email Address</label> <input type='email' name='email' class="form-control" required> </div> <div class="row"> <input type='hidden' name='field[2]' value='<?php the_title(); ?>'> <input type='hidden' name='field[3]' value='<?php echo $marketing_category ?>'> <input type='submit' value="Subscribe" class="btn-subscribe"> </div> </form> |
I implemented this form on every single blog post page by putting it in my WordPress theme. Since it’s located inside my WordPress theme, I can use standard WordPress code to populate the hidden fields dynamically.
1 2 |
<input type='hidden' name='field[2]' value='<?php the_title(); ?>'> <input type='hidden' name='field[3]' value='<?php echo $marketing_category ?>'> |
Resource Form
I pretty much followed the same process for this form as I did for the newsletter form. The only difference is I did not put it into my WordPress theme since it will only be needed for specific posts. Instead, paste the form HTML into each post that has a resource download.
Automations
The last thing I did was create some automations. I have 3 automations currently setup.
Newsletter Opt-in
I created a simple automated flow to alert me when someone signs up for my newsletter.
Newsletter Opt-in Through Resource Form
This automation is to subscribe anyone who fills out the resource download form and selects “opt me into the newsletter”, to the newsletter list.
Resource Download Notification
This automation is to notify me when someone downloads a particular resource.
That’s it!
That’s all I’ve setup in ActiveCampaign so far. Did you find this post helpful? Do you have any questions? Email me, or send me a tweet @jennamolby.
Hi Jenna,
Love this article… And your approach with 2 lists. I’ve been attempting to just use one main one in AC, like many other people recommend – but this method makes so much more sense to me.
I’m curious about the last image in this post. Was it originally going to be an automation workflow vs the download screenshot? If so, I’d love to see your process.
Thanks again! This post really helps!
Hi Loralee,
So happy you found this post helpful! You are absolutely correct, it was supposed to be an automation workflow vs a download screenshot. Here’s a screenshot of the last step in my process.
Thank you! 🙂
hi jenna,
i try to import an active campaign form on my blog but when I copy the html code i have a lot of blank space between my last sentence and my form.
How can i remove it?
it’s something about html codes but I don’t know which parameter should i fix.
Hi Loralee. Great explanation here. I’m curious – how do you then communicate your new posts to your subscribers? I imagine it’s simply creating a new campaign or automating but both seem like time consuming methods. Do you have anything setup (through WordPress, ActiveCampaign or third party integrations) that sends an email to your subscribers once you post a new blog? I’m trying to figure out a simple way but can’t seem to find one.
Oops, I meant Hi Jenna.
Hi Cindy! I have a template set up in ActiveCampaign that I use when I post a new blog. Currently, I do it as a manual process since I want to have more control over what I’m sending out, but ActiveCampaign can automatically send out blog subscription emails based off an RSS feed.