How to Troubleshoot Poor PPC Performance

How To Troubleshoot Poor PPC Performance

Perhaps you’ve just started a ppc account for your business or you’ve been utilizing ppc as a marketing channel for a while. At some point, you’ll likely experience less than stellar performance – and that’s okay as long as you know what steps to take to right the ship.

In paid search, there are endless factors that can have an affect on your account’s performance: competition and industry bid costs, seasonality, world events, low account Quality Score, a new account that needs to build history, ineffective ad copy and landing pages, and the list goes on. Below, we’ve outlined a series of steps you can follow to start pinpointing when and how your account took a turn for the worse.


Step 1: Determine the time frame that your PPC account hasn’t been performing at an ideal level.

Start by running reports that compare this time frame to previous similar periods (week-over-week, month-over-month and year-over-year as available). It can also be helpful to know if your account typically performs consistently based on the day of the week so that you can spot emerging issues as they occur. When running your reports, you can start at the top level (think: campaigns or accounts if necessary) and work your way down to trouble ad groups and keywords. By looking at key metrics across various time frames such as: clicks, position, average cost-per-click, impression share, click-thru rate and conversion rate you can start to figure out if your issue stems from bids, new ad copy, an emerging competitor, or perhaps a landing page issue.

It also helps to dig in to your change history or notes to see what major tests or seemingly small changes you made that actually had a larger than expected impact. You can easily adjust or reverse these changes if you find them directly in Adwords.


Step 2: Utilize Analytics 

If your conversion rates have stalled or even been declining, it can be helpful to dig in to analytics and see what you can discover about how your ppc users are navigating your pages. One place to start in all of the analytics data available to you would be your landing page bounce rate. Some bounces are fine and to be expected, but if your rate is exceptionally higher than average on some page or has been increasing, it could be cause for concern. Figuring out which landing pages and more specifically, keywords, have high bounce rates can help you determine where to focus your optimizations. To decrease bounce rates, you can implement strategies such as: better directing keywords to pages that match a user’s search query, implement a more logical and functional path to conversion, and/or test your page’s call-to-action. In addition to these higher-level findings, be sure to drill in to deeper insights such as how your traffic is performing by device type.


Step 3: Check Conversion Tracking

A more obvious step in the process is to check on conversion tracking. If you have many conversion points on your site such as call tracking, a form, email links, and secondary/tertiary “soft” conversion points like clicks to specific pages, etc. you’ll want to know how to check in on these points when something seems off. For Adwords conversion tracking, a quick look under the conversion section (Tools > Conversions) of your account will help you identify any conversion points that haven’t recently been seen or fired on your website. Navigate to the Tracking Status column to see how each one is performing. If the status shows unverified or tag inactive, you likely have an issue. You can follow these steps to troubleshoot the tracking issue. An easier way (especially if you’re an agency or a representative of a company) to implement and keep tabs on conversion tracking is to utilize Google Tag Manager or GTM. This tool is especially helpful when your marketing, development and client teams are working toward similar goals but separated from one-another. You can easily use Google’s Tag Assistant to check that pixels are firing as they should when goals are completed. Google Tag Manager is also especially helpful in multi-site situations, such as multiple locations or multiple brands under the same umbrella.


Step 4: Check Your Automation

PPC automation can be a very helpful tool, but it can also work against you if left unchecked. You can set up your automation to email you every time the system makes a scheduled change, but this can still cause an out-of-site-out-of-mind mentality. By periodically checking in on automated rules or rules set within 3rd party bid management software that are intended to control bids and make changes based on performance you can avoid this mentality.


Step 5: Be proactive and keep tabs on your account’s trends and Quality Score over time.

Lastly, I recommend finding a way to be proactive when it comes to emerging ppc trouble. Find a reporting method that works for you and keep tabs on your accounts on at least a weekly basis and compare your performance week-to-week so you can predict when your cost-per-lead is going to spike or leads will be below a needed threshold. The main way to see how your efforts are paying off involves Quality Score. You can’t see your historical Quality Score, so it’s a good idea to find a way to keep tabs on it. Adwords offers many scripts to improve your ppc and reporting such as Quality Score tracking.


Photo Credit:

Creating a Custom Facebook Audience by Passing Variables from Your Website with Google Tag Manager


Let’s say your company owns 10 car dealerships in 3 different cities. Dealerships A, B, & C are located in City 1, Dealerships D, E, & F are located in City 2, and Dealerships G, H, I, & J are located in City 3. Each of these dealerships offers 3 types of car: Trucks, Sedans, and Minivans.

Let’s say a potential customer visits Dealership A’s website and looks at a Sedan, but does not convert. We might assume that the user is looking for a Sedan in City 1, but has not yet made a decision on which Sedan to buy. Using a custom Facebook audience, we could show this user an ad containing links to the different Sedan offerings at Dealerships A, B & C, since they are all located in City 1. Using the Data Layer and Facebook’s Conversion Pixel, this is actually a fairly simple setup.

Define Variables with Data Layer and Google Tag Manager

For our example, we really only need to know two things:

1. The city where the dealership is located
2. The car type that the user viewed

Let’s define these variables as dealerCity and carType. You will need to pass these variables to the data layer, which is a subject you can learn more about here.

Now you will need to create these variables within Google Tag Manager. Navigate to the User-Defined Variables box in the Variables tab, and click New. Assuming that the values of these variables will be available in your site’s data layer, you can choose the Data Layer Variable configuration type, and simply input the variable name in the field.

Note: If you are having trouble getting your data layer to populate properly, but you can define either of these variables with URL information (such as a query string containing something like ?dealerCity=Indianapolis&&carType=Sedan), then you might try creating a lookup table instead of a data layer variable. You can read more about the lookup table macro here and here.

Facebook Pixel Tag

If you have not yet created your Facebook pixel, read how to do so here.

Now you’ll need to add your Facebook Pixel as a tag in GTM. Create a new tag and name this tag Facebook Pixel All Pages, or, whatever naming convention you’d like to use to indicate that this is your base tag for Facebook. Paste the code generated by Facebook into a Custom HTML Tag Configuration, and set this tag to fire on all pages. This will ensure that Facebook’s pixel is always active and ready to pass data back to your Facebook Ad Account.

Tag for Custom Facebook Event

Now we want to create a custom event tag that passes your custom data into Facebook. Facebook uses the fbq call to indicate data arrays, and the trackCustom call for passing non-standard arrays (Facebook supports 9 standard data types, which you can read about here).

The code below is intended to send a City_Cars event array to your Facebook conversion pixel, containing the variables dealerCity and carType. Within Facebook, the variables dealercity_id and cartype_id will carry the data layer values in {{dealerCity}} and {{carType}}.

Note that you must define these variables in both the fbq call and the query string on the URL within the <noscript> section. The number contained in id=1111111111111111 will be equal to the ID number in your standard Facebook conversion pixel. Set ev= to the name of the event (City_Cars in our case), and then follow the format &cd[variable_id]={{GTM variable name}} for all values contained within the fbq array.

Under Tag Sequencing, make sure that your Facebook Pixel All Pages tag is firing first. This is important, as your Facebook Pixel must be active before data can be passed through it.

Set Up Custom Audience in Facebook

Let’s now create the remarketing list for potential customers looking for Sedans in City 1.

Go to the Audiences section of your Ads Manager and click Create Audience. Under the Website Traffic dropdown, choose Custom Combination. Then, under the Include drop-down, choose Event, and enter City_Cars in the Choose an event field. Now you will be able to add the individual parameters dealercity_id and cartypes_id and choose the values City 1 and Sedan, respectively.

Now you can use your new audience to target potential buyers who are interested in finding a Sedan in City 1. You can also set up an audience for each city and car type combination, and set up ads that target each unique pairing.


Photo Credit: