Google Local Services Ads: Job Type Leads Improvements

I led the redesign of the new Job Types leads UX and team for Google Local Services Ads. Local service provider-advertisers use this interface to control the leads for which they pay and appear on SERP results.

LSA is a leads-only ad product and as such, the UX to control leads is critical in increasing advertiser retention which was declining at a steady rate since before I joined the team.

 

Role

UX Design Lead, all Buy-side

Deliverables

UI + UX Design

Prototypes

Usability Testing

Team

3 UX Researchers

2 Product Managers

1 UX Writer

3 Engineers

Duration

3 months


Context

Why are Job Type Leads important to Local Service Advertisers?

Research proved lead quality and quantity is the number one indicator of retention and spend for service providers.

If a service provider doesn’t get at least one lead in the first 30 days after signing up and their ad goes live, they tend to churn and stop spending on our platform. Though quantity is prioritized over quality in the initial period after an advertiser’s ad goes live to deliver at least one lead to them in their first 30-day period, over time, poor quality leads result in churn/attrition.


Problems

Not enough granular control over leads.

over which leads users were contacted and paid for. Charged lead disputes to our call centers and sales teams cost LSA significant $X million/year of OpEx for adjudication.

No way to turn off vertical leads to only get job type leads, and vice versa

Turning off all service type leads (e.g. “unpaid overtime”) doesn’t turn off a vertical lead (e.g. Labor Lawyer) and vice versa. These leads were not built independent of each other, because the vertical head query (Plumber) was used as the function to pause an ad. If user wanted to stop receiving leads for “plumber near me” or “plumbing”, they would have to pause their entire ad, causing them to stop receiving related service leads if they wanted to stop paying for vertical lead types (“plumbing"/”plumber”).

Pausing an ad causes users to restart verification all over again.

This causes understandable churn. Verification can be long and tedious based on a provider’s vertical(s) because it involves rigorous background checks by a third party, submitting license and certification documents, and verifying employees, if any. This complexity is compounded in European markets as the process to verify businesses advertising on Google can be stricter.

Why verify users?

LSA is one of the only Google Ad products that verifies advertisers since Google guarantees satisfaction (or screens, in the case of professional verticals like lawyers) if an advertiser gets work through an LSA ad. This makes LSA a verticalized, lead-gen-only product. Customers are refunded if they aren’t satisfied with a provider contracted through LSA, so verification (and the ability to pause it) is critical to LSA’s trustworthiness and success on the sell (customer) side.

 
 

No way to add multiple verticals without calling LSA to add another vertical

Again, OpEx could be reduced via self-serve UX

Super-general verticals like “lawyers”, “doctors” identified as a needed lead type

We learned there were consumers who don’t know which vertical to search for (navigational) and do broad categorical searches for superverticals such as “Lawyers” and “Doctors.” The volume of categorical search meant we were leaving money on the table for ourselves and advertisers, and necessitated a third level of hierarchy such that:

  1. Super-verticals: “Lawyers” “Doctors”

  2. Verticals: “Labor Lawyer” “Pediatricians”

  3. Job type: “Unpaid overtime” “Ear infections”


Early Usability Testing

I tried early iterations where I separated the vertical lead toggle from the job type lead toggles, and even added a counter at the top right corner to indicate that the vertical/industry name is also a lead type. However, user research showed the vertical lead toggle was seen as a master toggle. So I placed it below the job type leads in a 2nd version, and participants were even more confused because they thought the master switch should be above the job type leads. After these two usability tests, it was clear that I had to approach this new modal with a more radical UX, not a 1.2, but a “2.0”.


Goal/Solution

With all the user problems and business updates, the solution couldn’t be an incremental change. I had to overhaul the modal to be more robust and feature-rich as to empower users to better control their leads while being mindful not to feature bloat.

  1. We found that customers search for general leads like “lawyers” and “doctors near me”, so this general lead needed to be added as another lead type, with the distinction from vertical leads (e.g. “Immigration law”, “Estate law”) and from service/job type leads (“unpaid overtime”)

  2. New UX modal allows pausing and unpausing serving ads in a specific vertical without restarting verification. This was a huge technical win.

  3. New modal allows users to search for and add multiple verticals without calling our call centers (self-serve)

  4. Top right quadrant upsells verticals that a user might be certified to serve ads for


Identifying problems during the design process

With the introduction of a new 3 level hierarchy, I identified an important problem: some vertical names and their job type might repeat. For example, “Labor Lawyer” (vertical) has a job type called “Labor law”, and same for “Plumbing” (vertical) and “plumbing” (job type). Since we wanted to decouple vertical, or “head-query,” leads from job-type leads to enable users to pause their ads, I had to make it clear to users which type of lead they toggle on or off. I decided more content was needed to explain the difference between vertical leads from services leads and opted to use tooltips.

Another problem I uncovered were edge cases of error-handling; entering queries with no matches in the Search for industries box. If user typed in “Underwater basket weaver”, for example, what do they get as a result? An error message, “No matches”, or “Contact us to add your vertical to industries GLSA may serve in the future”? It is then that I realized creating a robust search engine that can intelligently return contextually relevant results is an incredibly monumental task, and needed to be de-scoped in order to launch this new modal. The solution I arrived at is that if there’s no vertical that matches the search, including typos that don’t match any verticals, the dropdown will prompt a message for the user to contact LSA to add that vertical as an option in the future.


Critical User Journeys

CUJ 1: Add a new vertical to an unrelated super-vertical

E.g. “plumbers” to “law

CUJ 2: Pause a vertical (ad)

CUJ 3: Delete a vertical

Since adding multiple verticals was now possible and self-serve with this design, I had to come up with a way to allow users to remove a vertical for which they weren’t qualified to serve ads in, or for which they didn’t want to get verified.


Changes needed to Profile & budget page, Job Types box

To complete the changes to Lead preferences, I wanted to make design updates to the Job Types box on the Profile & budgets page and not just copy. With more and more providers signing up for multiple verticals, we heard from them that they wanted a high-level overview of their leads on this page level. So I suggested a more organized hierarchy than just a list of all the job types in the box, as was the previous design:

Previously:

Proposed:


What did I learn?

Reflections

With the agreed upon scope from my PM and Eng partners, and usability research with my UX Research partner, we made a lot of improvements to this UX. But the reality is that Google are generalists and we will never completely predict the vast needs of small businesses and service providers unless we conduct more field research and collect the necessary data to understand the specific services providers offer in their industry to mitigate unqualified leads and dissatisfied users on both sides of the transaction.

Changes need to be made on sell-(customer) side because the advertiser X depends on SERP.

As a designer on the Buy-side, I’m able to see areas of opportunity that sell-(customer-facing) side isn’t able to easily see. I realized the solution can’t be improvements only to the buy-side: There has to be a holistic, end-to-end treatment for both sides of the “match” to work coherently.

Pragmatically, this meant working with the large SERP org to negotiate for more space for our advertisers to appear on SERP even if that meant years of negotiations and stalled progress as larger ad units mean implications on incrementality. So I started conversations with the SERP team on how GLS can get more space so more advertisers appear without customers clicking on anything to see more. Do more appear horizontally upon clicking a chevron, much like Shopping ads? Do more ad boxes appear on hover?

My recommendation to bridge the gaps/opportunities between buy and sell sides seems to have stuck because the interaction on SERP now expands the list of Google Guaranteed/Screened advertisers down, instead of opening a new immersive page of vetted providers, which was the previous behavior. Essentially the UX changed so that if users clicked the “More (providers) in (local area)” link below the ad unit, it keeps users on SERP with inline expansion – instead of taking them to a new immersive page list of providers. This interaction behavior works much better because it shows more advertisers while keeping users on the same (SERP) page, and protects ads vs. organic search result incrementality by ONLY showing more ads if customers show intent and click “Show more”.