ReviewedMeta / Facebook
Craft DigitalMeta / Facebook Portfolio Audit
Prepared forJoshua Tree Experts

Joshua Tree Experts
Meta / Facebook Portfolio Audit

All active Meta ad accounts across the Joshua Tree Experts franchise portfolio.

Audit Completed

Jul 24, 2026

Meta portfolio review

Scope

Franchise Portfolio

All active Meta ad accounts

Channel Reviewed

Meta / Facebook

Prospecting and retargeting surfaces

The Meta program is uneven. There is no consistent strategy across locations, and the build leans into some of Meta's algorithmic strengths while ignoring others. The largest measurable gap is optimization: locations are optimizing toward the browser Lead pixel event, while the actual business KPI, Qualified Lead, only flows in as an offline reporting signal. Standard Meta reporting understates true lead volume and inflates cost per lead. Every location is missing dedicated retargeting, and every active ad set runs a single ad, which limits creative learning across the portfolio.

Overall Takeaway

Move optimization onto Qualified Lead, add retargeting per location, and give the algorithm real creative variety to test.

01 · Executive Summary

The build is uneven and pointed at the wrong signal.

01

Optimization Is Pointed At The Wrong Event

Locations optimize toward the browser Lead pixel event. The true KPI, Qualified Lead, flows in as an offline CAPI signal for reporting only, so delivery is learning from an earlier and noisier signal than the one the business cares about.

02

No Consistent Strategy Across Locations

Campaign structure, audience targeting, and creative testing differ location to location without a clear pattern. The most repeated theme is broad targeting and a brand wide lookalike, which is not the strongest starting point for local lead generation.

03

Contradictory Use Of Meta's Platform

The build leans into some algorithmic features, like multi asset creative and lookalikes, while ignoring the ones that matter most: CBO, Advantage+, meaningful audience testing, and above all a real creative testing program. The account is neither fully manual nor fully algorithmic, which limits both approaches.

04

Retargeting Is Missing Portfolio Wide

No dedicated retargeting campaigns and no retargeting ad sets on any location. Given how much traffic Google Ads is pushing at these markets, this is one of the clearest missed levers on the Meta side.

02 · Core Finding

Optimization is running on the wrong conversion event.

Core Finding

The setup. Each location optimizes campaigns toward the Franchisee Pixel's Lead event, a standard browser event fired when someone submits or intends to submit a lead form on site. Qualified Leads, the downstream business outcome, are sent into Meta separately through the Franchisee Dataset as offline Conversions API events.

What Meta can and cannot do with that. The offline Qualified Lead events are available for attribution and reporting, but they are not available as optimization events. That means Meta can show Qualified Lead numbers in a separate reporting column, but the delivery algorithm is still learning from browser Leads, not from the qualified outcome that matters most.

The consequence. Standard Results and Leads metrics understate real campaign performance because Qualified Leads sit in their own column. Cost per lead in the default view is inflated, and creative and audience decisions get made against a signal that does not match the KPI the business is scoring against.

Our take

Review the tracking architecture so Qualified Lead can drive optimization, not just reporting. If a direct browser or server side Qualified Lead event is possible, campaigns should optimize on that. Until then, expect reporting to under count and delivery to prioritize the wrong outcome.

03 · Call Tracking

Meta is counting short calls as leads, and CallRail is not wired in.

Call Tracking On Meta

CallRail is not connected to Meta, and short calls are counting as leads

The setup. Meta is using its own built in call tracking to count calls placed from ads. No CallRail events are being sent to Meta, and the ad UTMs are missing the CallRail standard parameter fb_ad_id={{ad.id}}, so CallRail cannot fully attribute Meta driven calls either.

Why it matters. The majority of the calls Meta is currently counting are under 20 seconds, so they are unlikely to be real leads. They do not affect the Leads column or cost per lead in reporting, but they do inflate the picture on the calls tab and make the account look busier than it is on that surface.

The fix. Send CallRail call events to Meta and add fb_ad_id={{ad.id}} to Meta ad URLs so CallRail can attribute calls back to the ad. This tightens both call reporting inside Meta and cross channel reporting inside CallRail.

04 · Account Setup

Structure sets a low ceiling before creative even runs.

Campaign naming does not carry structure

Campaign names do not encode budget type, objective, or intent. A naming convention makes optimization work far easier and is worth adopting going forward. Not worth retroactively renaming years of campaigns.

One campaign per location, all ABO

The portfolio is built as one campaign per location, all on ad set budget optimization. Running ABO exclusively means budget stays where it was placed even when a different ad set is clearly outperforming. A mix of ABO and CBO would let Meta allocate against performance where that is the goal.

Broad targeting reused across locations

Most locations reuse the same broad targeting shape, often paired with a brand wide lookalike. Broad can work, but reusing an identical broad setup across different local markets removes the audience signal Meta could otherwise learn from, and pairs poorly with the tracking mismatch above.

05 · Campaigns & Ad Sets

Single ad ad sets and reused broad audiences leave the algorithm nothing to learn from.

Every active ad set runs a single ad

Multi creative on a single ad still counts as one ad. The creative testing story is covered in its own section below.

Lookalike is built off the brand wide list

Locations lean on a brand wide customer list to build lookalikes. A localized customer list per market would produce a more relevant seed and pairs better with local retargeting.

Creative themes are not distinct

Ads on file lean on similar visuals and copy. See the Creative section for why this is the biggest lever on Meta and how it ties to the email work already underway.

06 · Creative Testing

On Meta, creative is the lever. It is not getting worked.

Creative Testing

Why creative matters on Meta. Audience targeting on Meta has been progressively anonymized over the last several years. There is not much left to pull on from a targeting perspective, and what remains is largely handed to the algorithm. What actually drives performance today is Meta's delivery system paired with its ability to find winning creative. Creative is the primary lever.

What is happening in the account. Every active ad set runs a single ad. Concepts across locations lean on similar visuals and copy. There is no visible cadence of new creative going into the account, and no structured testing framework to identify winners, retire fatigued concepts, or feed the algorithm real variety to choose between. For a channel where creative is the main input, this is the gap that matters.

The opportunity. Craft Digital is already producing content for Joshua Tree's email campaigns and sequences. That same production line can feed a real creative testing program on Meta at low marginal cost. Email creative becomes paid social creative, ad sets run three to four concept distinct ads, and fresh concepts rotate in on a cadence so the algorithm always has something new to test against what is already working.

Our take

This is a serious commitment, not a one time fix. Running Meta well means a standing cadence of new creative, structured tests, and quick calls on what to scale or retire. It is the difference between the algorithm having something to work with and not.

07 · Location Callouts

Two locations that need direct attention.

Location

Denver

Running max impressions with broad targeting. Even accounting for other lead events, this campaign has one of the highest costs per lead in the portfolio. Objective and targeting both need a rethink.

Location

Greater North Atlanta

Four ad sets with near identical audience targeting inside a single campaign. This is not audience testing in a meaningful sense and creates redundant delivery. Consolidate, then test one variable at a time.

08 · Retargeting

The clearest missed lever on Meta.

Retargeting Gap

No dedicated retargeting anywhere in the portfolio

There is no dedicated retargeting campaign on any location, and no retargeting ad sets inside the prospecting campaigns. Every location running Google Ads is paying to send new traffic that Meta could re engage cheaply through custom audiences of site visitors, lead form openers, video viewers, and page engagers. Adding a lean retargeting layer per location is one of the clearest wins on this channel and pairs directly with the Google spend already in market.

09 · Prioritized Recommendations

Eight moves, sequenced by leverage.

1

Optimize toward Qualified Lead, not the browser Lead event

Review the tracking architecture so Qualified Lead can be used as an optimization event, not only a reporting signal. Until that is in place, delivery will keep learning from a shallower signal than the KPI the business scores itself against.

2

Connect CallRail to Meta and fix the ad UTM

Send CallRail events to Meta so real calls are counted the same way form leads are. Add fb_ad_id={{ad.id}} to ad URLs so CallRail can attribute Meta calls at the ad level.

3

Add per location retargeting

Stand up a retargeting layer for every location: site visitors, lead form openers, video viewers, and page engagers. This is the clearest missed lever on Meta and is inexpensive to launch alongside existing prospecting.

4

Build a localized customer list per market for lookalikes

Move away from a single brand wide lookalike. Seed each market's LAL from its own customer list. The audience becomes more locally relevant and pairs naturally with per location retargeting.

5

Run three to four concept distinct ads per ad set

Every active ad set currently runs a single ad. Move to three to four ads per ad set built around distinct concepts, not variations of the same image. This gives Meta something real to choose between and creates a fallback when a concept fatigues.

6

Introduce CBO alongside ABO where budget should follow performance

Running ABO exclusively locks budget where it was set. Add CBO in campaigns where the intent is to let Meta shift spend toward the ad sets that are working. Keep ABO where per audience budget floors are the point.

7

Tighten and differentiate audiences per market

Stop reusing an identical broad audience across every location. Layer local interests, local lookalikes, and retargeting audiences so audience testing produces information that can act on.

8

Clean up outlier ad set structures

Consolidate cases like the Greater North Atlanta four ad set setup where audiences are effectively identical. Isolate one testing variable per ad set so results can be read cleanly.

10 · The Account Ownership Question

A fair question about consistency and attention.

Meta Ownership Question

Consistency and creative testing are the attention gap

As with Google, the individual builds are not broken. But the picture across locations shows inconsistent strategy, a mismatch between the KPI and the optimization event, no retargeting anywhere in the portfolio, and single ad ad sets that never generate real creative learning. These are attention and consistency problems more than they are craft problems, and they are worth raising directly with the vendor.