How CallRail attributes your lead interactions

If you have a lead interaction associated with a web session (call or text to a website pool, form submission, or chat), we will provide you with data regarding the user journey that led to that interaction.  We acquire this via a two-step process:

  1. We try to determine the source network, such as when Google, Facebook, or Twitter show an ad or search result to a customer.

  2. If the source network can be determined, we check whether the customer responded to an ad or an organic listing.

If the interaction is not associated with a web session (as with calls or texts to source-tracking numbers), we rely on the source-level attribution settings associated with the number. This applies whether or not the number has swapped via dynamic number insertion.

Attribution by UTM parameters

A common way that CallRail determines the source network of an interaction is via UTM parameters. These are parts of a URL that give you control over what information is passed for data collection purposes. A site's owner can manually “tag” their URLs with UTM parameters for the purpose of tracking & attribution. For example, a customer adding a link to a LinkedIn post might format their link like this:

When we read URLs to pick up UTM source parameters, we are first looking for utm_source= . If that tag is misspelled, we will not read the URL correctly.

Once we've detected the UTM source parameter tag, we'll read the string of text that follows it. The first step is to check for keywords that will trigger our automatic attribution. All of the sources that we automatically attribute work this way: we check for a keyword and use that clue to attribute to a source on a predefined list.

For instance, if the utm_source string contains "linkedin" we will automatically attribute the session to LinkedIn. Note that this also means that if the utm_source was "not-linkedin," we will still attribute to LinkedIn since it contains that specific text string.

If we don't read any of these keywords, we will save the string that follows the utm_source tag as the source for the session. This gives you the flexibility to track from sources that we do not automatically attribute.

Attribution by click IDs

We will also utilize the specific click IDs that some networks issue in addition to UTM parameters. These click IDs can be used to determine the source network (and in some cases also paid vs. organic) and are automatically populated by the ad-serving network.

Their primary purpose is to uniquely identify a click, but we can use the labels to determine click sources. (For example, gclid is issued by Google Ads and indicates a source of Google Ads or YouTube Ads.)

Source networks CallRail automatically attributes

CallRail will automatically attribute the following sources:

- Google

- Bing

- Facebook

- Instagram

- YouTube

- Yelp

- NextDoor

- Twitter

- LinkedIn

- Spotify

- DuckDuckGo

- Pinterest

What happens if we can’t attribute to any source?

In the event that we don't recognize a source from this list or find a UTM parameter to save, we will default to a source of either "Direct" or the referrer domain if that's available. Leads that navigate to a site without a search engine or digital ad are considered to have learned of the company through direct marketing, such as when someone enters the website URL directly in their browser.

Ads vs. organic

After we've determined the source network, the next step is to decide whether the traffic was via a paid advertisement or organic. As before, in the absence a click ID, we’ll use the UTM parameters to figure this out. Specifically, we are interested in the utm_medium parameter.

Marketers have established some general patterns that we follow when reading this part of the URL:


If utm_medium contains "ppc", "cpc", "paid_social", "paid", or “_ad”, this indicates to us that this was a paid marketing campaign and we will mark it as such with Ads.


If utm_medium contains "organic", "social", "organic_social", "social_network", "social_media", or "sm", we will attribute this to an organic effort. If we don’t find anything that indicates attribution as Paid/Ads, we’ll default to Organic.

There is the possibility for error if words are misspelled. Attribution and campaign tracking may be unintentionally hampered if the spelling of any parameter's contents is incorrect. Also note that as your campaigns change, you will need to keep your UTM parameters updated to ensure successful tracking.


Why doesn’t the source in the report match the source on the timeline? 
CallRail is focused on reporting first-touch attribution data. We will track and record attribution data for all sessions and interactions, but we will report on the attribution data for the first-touch milestone. On reports such as the Leads report, there is the option to adjust the attribution model to something other than first-touch.

Was this article helpful?
0 out of 0 found this helpful

Articles in this section

Ask the Community
Find best practices, post, and learn from CallRail users.
CallRail Support Hours
Weekdays 9:00am - 9:00pm EST