Every PRO campaign should be optimizing for something. In FunnelEnvy, that something is called a Behavioral Conversion Goal, or just a Goal. In this article you'll learn about common Goals, and how to create and configure them.
Choosing a Goal
The most common goal is revenue. If you're able to measure revenue directly on-site, you should be optimizing for it! Other common goals include scheduling a demo, signing up for a free trial, or account upgrades. In all cases, you have the option of attaching a dollar amount to the goal (even if it's just an estimated value), allowing you to optimize for value rather than just conversions.
Creating a Goal
To create a new goal, select the GOALS menu on the left, then click "+ GOAL"
Next, choose BEHAVIORAL
There are two types of Behavioral Goals in FunnelEnvy:
Page Goals
These goals are fired every time a visitor navigates to a new page on your site. There's no implementation required on your end. To create one:
Give the goal a Name and Description
Click 'Edit' in the Page field to enter Targeting information
Enter a URL pattern and Match Type
Save your Goal
For example, if visitors land on www.yoursite.com/demo-signup-thanks after signing up for a demo, your Page Goal might look like this:
... with the following Page Targeting details:
(Note that you can leave the 'Event' field blank when creating a 'Page' goal.)
Event Goals
If there's not a distinct page view that corresponds to your goal, or if your site is a single page application (SPA), you'll need to use an Event Goal. To create one:
Give the goal a Name and Description
Type a unique event name into the Event field
Save your Goal
For example, if you want to optimize for account upgrades, your Event Goal might look like this:
(Note that you can leave the 'Page' field blank when creating a 'Event' goal.)
Creating your Event Goal in FunnelEnvy is only one part of the setup. To use it in a campaign, you'll need to send data (or "fire an event") to FunnelEnvy whenever a conversion occurs on your site.
Implementing Event Goals on your site
When a visitor converts on the goal you've chosen, two things must be true:
The FunnelEnvy snippet must be present on the page
A small snippet of JavaScript must execute
The JavaScript snippet that fires the event to FunnelEnvy looks like this:
/* Fire event to FunnelEnvy */ window.funnelEnvy.push({ event: '/* Unique Event Name */', attributes: { type: '/* More info about the event */', value: /* Value in dollars */ } });
... where /* Unique Event Name */ is the exact event name you used when you created the Event Goal. To continue the "upgrades" example from above, here's what the snippet would look like for an upgrade to the "Team" plan worth $350:
/* Fire event to FunnelEnvy */ window.funnelEnvy.push({ event: 'AccountUpgrade', attributes: { type: 'Team Plan', value: 350 } });
Where to implement Event Goals
If you're lucky enough to have a developer who can add code to your site, send them a link to this article, the exact event name you chose when creating the Goal, and a description of when and where the event occurs on-site. (If appropriate, also let them know how to calculate the event value.) Once the event code is added to your site, you're ready to launch a campaign!
If adding code directly to your site is not an option, there are other approaches you can follow.
Google Tag Manager
The implementation with Google Tag Manager is essentially the same as adding the code to your site. Create a Tag containing the customized JavaScript snippet. The Trigger should fire only when the conversion event occurs on site. For help with this, feel free to reach out to our Services team - that's what we're here for.
Other tools
Segment users who have already followed the integration instructions here can simply note the Segment event name and use it when creating the FunnelEnvy Goal - no additional code required!
If you're using Tealium, the approach is similar to Google Tag Manager. If you have Optimizely, you can add code to ProjectJS to detect conversions and fire the appropriate event to FunnelEnvy.
If none of these approaches sounds appropriate for your site and stack, please reach out! We'll be happy to put together a custom solution so you can start optimizing.