I’ve heard from a handful of advertisers recently who were experiencing issues with their Meta events not firing properly. In each case, the problem was caused by using “URL equals” when setting up events. The solution is simple: Use “URL contains” instead.
In this post, let’s talk about the many times this choice comes up for advertisers. And then I’ll explain why “URL equals” is causing problems and the best practices for using “URL contains.”
When Does This Come Up?
It comes up a lot, frankly…
1. Creating a Custom Conversion.
The default rule for Custom ConversionsCustom conversions let you create rules for events or URLs so that you can better track and optimize for specific actions with Facebook ads. More is based on URL.
2. Creating a Website Custom AudienceA website custom audience matches people who visit your website with people on Facebook. You can then create ads to show to that audience. More.
When you create a Website Custom AudienceThis is the group of people who can potentially see your ads. You help influence this by adjusting age, gender, location, detailed targeting (interests and behaviors), custom audiences, and more. More for people who visited specific web pages, you’ll need to make this choice.
3. Creating Standard Events with the Event Setup ToolIf you have the Facebook pixel installed on your website, you can add standard events without any code using the Event Setup Tool. More.
When you create an event based on URL using the Event Setup Tool, the default logic will be “URL equals.”
4. Third-Party Tool Integration.
You’ll see this outside of the Meta-branded tools as well. An example is Google Tag Manager, which is a tool that I use to manage the pixel. When creating a page view trigger, you’ll need to decide between “URL equals” and “URL contains” there as well.
The Problem with URL Equals
If you use “URL Equals,” the event will only fire when the URL equals exactly what you put into the text field.
Here’s an important clarification from Meta:
We only count a conversion when the URL exactly matches what you put in the URL field for your custom conversion. If someone lands on a version of the URL with any additional text beyond what is pasted into the URL field (for example, UTM parameters, http vs. https, or even an extra “/” at the end) we won’t count the conversion.
There are so many potential issues that can arise here…
1. Mistyping: If you typed manually and don’t add the closing “/” the event won’t fire.
2. www: Does “www” actually appear in the URL? Whether or not you include it in this rule will matter.
3. SSL: If it’s possible that people can access your website via HTTP in addition to HTTPS, the event won’t always fire.
4. UTM Parameters: Whether manually added or automatically injected, the URL may be transformed so that it does not match your rules.
There are so many potential mistakes that can be made with this that “URL equals” should only be used in specific cases when you know that you want to exclude any variations of the URL (usually for testing purposes).
Best Practices and URL Contains
Meta actually recommends that you use “URL contains.” If you’ve been using “URL equals” in any of the situations outlined above, you are likely losing events.
Before you set these up, follow these steps…
1. Go Through the Conversion Process. Most advertisers will grab the URL for the confirmation page without much thought. But actually go through the process of completing a conversion to reachReach measures the number of Accounts Center accounts (formerly users) that saw your ads at least once. You can have one account reached with multiple impressions. More that confirmation page. Don’t assume what the URL will be.
2. Use “URL Contains.” Yeah, you knew that.
3. Grab the Minimum Portion of URL. Meta recommends using “the minimum portion of the URL needed to distinguish this page from any other pages on your website.” The danger of “URL contains” is that it could potentially include multiple URLs. There’s a rather simple solution for that.
This is not a good use of “URL contains”…
The above rule will capture any URL that has “thank-you” in it. This could conceivably include any confirmation page on your website if you use “thank-you” on those pages.
But be careful. Let’s stick with the example of a confirmation page that includes “thank-you” in it. This wouldn’t solve everything either…
For the same reason that this wouldn’t…
In both cases, there could be multiple URLs that contain that text, but with something different before or after.
The solution, in most cases, is this…
By adding the “/” to both sides, you clarify that there can’t be additional text before or after it. The only exception would be if that “thank-you” path could exist on multiple domains or subdomains in which your pixel fires. If that’s the case, you’ll want to include the domain — and maybe more if you run into the issue of subdomains (rare situation).
I recorded a video about this, too. Check it out below…
Do you use “URL contains” when creating your events and audiences based on URL?
Let me know in the comments below!