Retreaver uses tags to represent call data attributes, using tags ensures that the caller reaches the most applicable person suited to handle the call.
Utilizing tags offers the ability to set extremely specific requirements for:
- Which Call Handler (Buyer) is able to accept a call, and under what condition.
- When to trigger call conversions, including customized payouts for various collaborators.
- When to trigger webhooks, including which attributes to send out.
- When to trigger third party integrations, including which attributes to send out.
This guide will cover the process of creating tags, and utilizing them to drive certain actions within the Retreaver call tracking platform.
Retreaver Tag System Overview
Context Based Tag Behaviour Explained
The behavior of tags will vary depending on where they are utilized:
- When tags are applied to endpoints, they act as filters to determine how calls will be routed.
- When tags are applied to numbers, they will preemptively tag any leads calling that number.
- When tags are applied to a conversion criteria or webhook, Retreaver will be instructed to only trigger those events if matching tags are found within that call similarly to a filter.
Assigning Tags to a Retreaver Component
- When working with a tag field, typically named "Matches" or "Tag List" - You may click on the Wizard icon next to any tag input field to open the tag wizard helper. These input fields can be found in Call Endpoints (Buyers), Numbers, Conversion Groups, and Webhooks.
- Once you open the Tag Wizard, you'll first need to choose which data type this tag is going to be.
- You can select the Tag Key you want to use, which is used to define the name of the data attribute you wish to represent. If you would like to use a custom Tag, you will first need to Create a Tag.
- Now select the relevant Operator and Value for the type of tag you're adding. Retreaver will evaluate the tag value present on a call using the operator you selected. If the call conforms to the resulting expression, we'll consider it a match and trigger the actions associated with that component.
- Lastly click Add to complete adding a Tag using the Wizard, you can choose to add more tags or continue with the individual page you're on.
Warning
The Tags you added will not be active until you save the underlying Call Endpoint (Buyer), Campaign, or Number. You'll notice two different colored dot icons on Tags when working in the editor. A red dot means the Tag has just been added to the object but has not been used in your Retreaver account before. A blue dot means the Tag has just been added to the object and applied previously. You may use these dots to keep track of what you've changed.
Viewing your Call Tags
Reporting in Retreaver includes all call tags that have been associated with a call, these tags are visible in your call log, call overview & call reports to help you monitor and analyze your phone calls.
Tags are visible in your Call Log under the "Tags" column. Hovering over the tags will display their values.
Tags are also visible on the call overview page. Click on a specific UUID in your call log to view the call overview page.
You can also view your tags in a call report by including tags as a column when exporting your report.
Retreaver provides commonly used tags out of the box but also give you the freedom of creating your own tags allowing for flexible control and customization over your call tracking efforts.
Enabling IVR prompts for unresolved tags
You may enable prompts on tags to trigger an IVR or audio file and prompt callers for any unresolved tags. Only unresolved tags that are currently utilized on a campaign or call-buyer will trigger the prompt.
Example: If a caller previously filled out the tag value in a form submission, the tag prompt will be skipped, otherwise prompt the caller for additional information before attempting to route the call.
View our "How to Tag and Filter calls using Prompts guide" to learn more.
Substituting Tag Values using Replacement Tokens
Tags can be used to substitute values for outbound webhooks and even IVR message prompts by employing a concept of "replacement tokens".
Substitute a tag value by placing the tag key and surrounding it with square brackets, this will instruct Retreaver to automatically substitute the tag key with the associated tag value if it is present on that action.
Note* If the tag value is empty at the time when performing an action, no value be will be inserted. This could cause critical webhook errors down the line, avoid any issues by ensuring that your calls contain all the necessary data when utilizing them inside of webhooks.
Substituting values inside of a webhook:
Say you wish to substitute tag values into a CRM webhook to create a customer profile, you could do so by filling out the field name, followed by the replacement token value as so:
www.CRM.com/create_lead/?phone_number=[caller_number]&publisher=[affiliate_id]
Substituting values inside of an IVR message:
Say you wish to utilize the first name you previously tagged to a call inside an IVR greeting message, you could do so by modifying the prompt text to include:"Hello [first_name], we will connect you to an agent shortly".
View our "How To Use Tag Values To Create Dynamic Prompts" guide for a demonstration on using replacement tokens inside IVR prompt messages.
List of available Tag Data Types
Below are the different Tag types available when creating a new Tag.
The variety of types should make it easy to track and route calls based on any type of tag you require. You can track and route calls based on data such as your caller's credit rating under a numeric type or first name under a text type for example. Each tag data type will offer different operators that you may utilize to control actions within Retreaver.
Possible uses of date tags include:
- Sale date for a mortgage.
- Date of birth for insurance.
- Graduation date for education.
- End or open date for a time-based offer.
Possible uses of numeric tags include:
- Sale price for a home mortgage.
- The credit rating for loans.
- The purchase price for auto.
Possible uses of the text tags include:
- State of employment.
- Over the age of 18.
- Name of a caller fetched from a CRM.
- Lead status of the caller.
- Session cookie or ID.
Using Tag Operators
Using tags with operators, you can more selectively control which Buyers get routed to, which conversion group is used, or which Webhooks are fired.
Text Tag Operators
You can use matching operators =~ and !~ on text tags to test for the presence or absence of a string or regular expression. Also available is the exclusion or not equal to operator, allowing you to block calls with certain attributes.
- ==
- Exactly equals. The value on the call is exactly this value. This is the default operator.
mortgage_type:==purchase
- !=
- Not equal to. The value on the call is anything that is not this value.
mortgage_type:!=refinance
- =~
- Matches. Exactly matches the given string or regular expression.
caller_state:=~california|new york
- !~
- Does not match. The value tagged on the call does not match the given string or regular expression.
keyword:!~free
Numeric, Date, and Date-time Tag Operators
We now support a full range of operators on numeric, date, and date-time Tags. You can create ranges by adding more than one Tag. For example, a Buyer tagged with loan_amount:>100000 and loan_amount:<600000 will only receive calls where the caller is looking for a loan between $100,000.00 and $600,000.00.
Note regarding numeric, date and date-time tag operations and comparisons:
Such tags must be created inside of the Retreaver platform. This will register tag values as their respective data types, otherwise tags will be treated as strings/text by default. Not creating/registering tags could cause unexpected behaviors during the comparison process.
- == [default]
- Equals. The value on the call is exactly this value.
loan_amount:==1500
- !=
- Is not equal to. The value on the call is anything but this value.
callback_at:!=2014-12-25
- <
- Less than. The value on the call is less than the given value.
loan_amount:<1000000
- >
- Greater than. The value on the call is greater than the given value.
loan_amount:>0
- <=
- Less than or equal to. The value on the call is not greater than the given value.
loan_amount:<=1000000
- >=
- Greater than or equal to. The value tagged on the call is not less than the given value.
loan_amount:>=100000
Note: sub_id=test and sub_id:test both represent an "equal to" operator regardless of tag data type.
Checking for the Presence or Absence of a Tag Value
Certain call networks might require the presence of certain tags to ensure TCPA consent is present, or they might require the absence of a tag to ensure a lead is valid through the absence of a fraud_score attribute.
In either scenario, you can achieve the desired filter results by applying the following regular expressions to your tag values:
You can test for the presence of a tag using the ".+" regular expression. IE "leadid:~.+"
Use the "matches" operator when filtering for text tag presence inside of the tag wizard.
You can test for the absence of a tag using the ".+" regular expression. IE "fraud_caller_score:!~.+"
Use the "does not match" operator when filtering for text tag absence inside of the tag wizard.
Matching buyers using multiple tag values
Created tags that are associated on a buyer level act as a filter for that agent. You can add duplicate keys with different values but at least one value must match with the key in order to route to that buyer.
You generally also want to have a fallback Buyer that takes any value for a given key. If a buyer accepts all values for a tag key, simply leave it untagged.
A Buyer could accept several different values for an offer and exclude certain other ones: Product_Interest:Insurance, Product_Interest:Healthcare, Product_Interest!=Phoneplan will route calls to that buyer if they are interested in Insurance or Healthcare but NOT Phoneplans
You could create a buyer that only accepts calls from a specific publisher or callers from specific states looking for a specific service. Any criteria you can think of can be used to direct traffic within Retreaver using tags.
List of System Tags available in Retreaver
Retreaver supplies various default tags for use in your routing, integrations, and reporting below:
Text Tags
Tag | Description |
---|---|
campaign_id | The ID of the Retreaver campaign the call was routed through. Not the same as the system_campaign_id, which is the unique identifier for the campaign within Retreaver. |
campaign_name | The name of your call tracking campaign. |
source_id, publisher_id, affiliate_id |
The ID of the source of the call. These three tags are interchangeable, and will appear differently depending on the edition of Retreaver you use: Marketer: source_id |
affiliate_first_name, publisher_first_name | The primary name of the call source or first name of the publisher. |
affiliate_last_name | The secondary name of the call source or last name of the publisher. |
affiliate_company | The name of the company associated with the call source. |
handler_id, buyer_id, target_id |
The ID of the Call Endpoint (Buyer) that the call was routed to. These three tags are interchangeable, and will appear differently depending on the edition of Retreaver you use: Marketer: handler_id |
target_name |
The name of the call endpoint / buyer that the call was routed to. |
system_target_group_id |
The ID of the Call Endpoint (Buyer) group that the call was routed to. |
sub_id | The sub-affiliate ID responsible for the call. Typically used with the Performance edition of Retreaver. |
called_number | The phone number the caller used to call in. |
target_number, call_forwarded_to |
The phone number of the Call Endpoint (Buyer) that the call was routed to. |
call_uuid | The unique identifier generated by Retreaver for the call. |
retreaver_url | The link to a particular call, will appear as "https://retreaver.com/calls/#{uuid}". |
call_key | The secret key used to postback conversion data to the call. Used in combination with a call_uuid to enable postback functionality for a Call Endpoint (Buyer). |
caller_number | The phone number of the caller as it appeared on caller ID. |
caller_number_digits | The phone number of the caller, without the leading "+" prefix on a caller ID. |
nanp_caller_number | The phone number of the caller, without the leading "+1" for North American numbers. |
caller_city | The caller's city based on their phone number. The precise city if caller entered a zip code or it was passed via API/ Retreaver.js. |
caller_state | The caller's state or province based on their phone number. The precise state if caller entered a zip code or it was passed via API/ Retreaver.js. |
caller_zip | The zip code the caller entered, if any. |
caller_country | The country of the caller, based on their phone number or zip code. |
call_recording_url | The URL of the MP3 recording for the call. |
call_status | The status of the call when it ended. |
click_to_call | A boolean value to indicate if the call was generated using the click-to-call functionality. |
keys_pressed | Returns a list of digits a caller pressed during the call, used to infer which prompts or routing decisions were chosen by the caller. |
fired_pixels_count | Returns the number of webhooks that were sent out specific to this call. |
hung_up_by | Who hung up the phone first, the caller, or the Call Endpoint (Buyer). |
converted | A boolean value indicating if the call was converted. |
duplicate | Whether the call was a duplicate call that was routed to a Call Endpoint (Buyer) in the same Conversion Group it has previously converted in. |
repeat | Whether the call was a repeat caller that recently returned to your campaign using the same tracking number. |
conversion_name |
The name of the conversion criteria that was used for the call. |
google_analytics_client_id | The Client ID used to identify a unique lead session. Anonymously identifies a page view instance. Used to trigger Google Analytic Events. |
google analytics_tracking_id | The tracking ID / web property ID in "UA-XXXX-Y" format of a google lead engagement. Used to trigger Google Analytic Events. |
visitor_url | The visitor URL pointing to the landing page that presented a Retreaver tracking number. Used to confirm any existing URL parameters and web source for dynamic numbers. |
Date-time Tags
Tag | Description |
---|---|
call_start_time | When the caller called the trackable phone number. |
call_forwarded_time | When the caller was forwarded to a Buyer. |
call_finish_time | When the call ended. |
call_start_time_day_of_week_et | Returns a numerical representation of the weekday when the call occurred. IE: 1 = Monday, 7 = Sunday. Note*: Timezone specifiers come in _utc , _at , _ct , _mt , _pt , _et variants. |
Numeric Tags
Tag | Description |
---|---|
system_buyer_id | The Retreaver system Buyer ID of the endpoint the call was routed to. |
call_forwarded_duration, call_connected_duration |
The number of seconds the caller was on the line with the Buyer. |
call_duration | The total duration of the call, from start to finish, in seconds. |
call_ivr_duration | The total IVR duration of the call, including all prompts. |
call_hold_duration | The total hold duration of the call, including any on hold music or messages played while waiting. |
billable_minutes | The total number of minutes you were billed for the call. |
charge_per_minute_in | The price per minute you were billed for the inbound call. |
charge_per_minute_out | The price per minute you were billed for the outbound call. |
charge_total | The total cost you were charged for this call. |
conversion_seconds | The conversion timer that was reached. |
revenue | The amount earned on the call, based on the conversion setting. |
receivable | A boolean to indicate if a revenue value is present for a call. |
receivable_converted_duration | The duration used to qualify a call for a revenue value. |
receivable_duplicate | A booelan to indicate if the call resulted in a duplicate conversion. |
payout | The cost of the call, not including Retreaver charges, based on the conversion setting. |
payable | A boolean to indicate if a payout value is present for a call. |
payable_converted_duration | The duration used to qualify a call for a payout value. |
payable_duplicate | A booelan to indicate if the call resulted in a duplicate conversion. |
Comments
Please sign in to leave a comment.