Skip to content
Construction tools Storefront + paid media strategy

EZpanl: The Search Campaign I Killed Before It Ran

EZpanl makes a siding hook kit for panel crews. I own the positioning, the storefront, the content layer, and the media plan. The owner supplied the logo. The most valuable thing I delivered in the first month was a written recommendation not to spend the search budget, and the reasoning that got there.

STOREFRONT + STRATEGY
EZpanl: The Search Campaign I Killed Before It Ran
Conner Crowe

The numbers

Claims governed by a written claim library
23
Live URLs swept before launch
24
Prospecting campaigns I recommended building
0
Operator across brand, storefront, and ads
1
EZpanl storefront showing siding hooks that hold a full sheet.

02   The breakdown

The Setup

EZpanl makes a siding hook kit. Sixteen powder-coated hooks in 11-gauge steel, plus one handle, $199. A two-person crew sets the hooks at the panel’s required bottom-edge height, the sheet rests on them at the right height, and the wall carries its weight while the crew positions and fastens it.

It is a good product with a hard marketing problem. The buyer is a foreman with a purchase order, not a consumer. He has seen a hundred jobsite gimmicks and his default posture is suspicion. He does not buy on specifications. He buys on labor math, and only after someone he trusts has used the thing.

I own the brand here. Positioning, voice, storefront, content, media strategy. The owner supplied the logo and the product. Everything between that and the customer is mine, which is a rarer arrangement than it sounds and it is why this one is worth writing up.

The Claim Library Came Before the Copy

The first artifact I built was not a page. It was a claim library.

Construction tools carry liability. A siding hook that a crew trusts with a full sheet of panel sits close to a jobsite injury if the copy oversells what it does. On top of that, the competitor set sells on solo installation, and EZpanl cannot make that claim, because the product is specified for a minimum two-person crew.

So every claim on the site is governed by a table before it reaches a page. Twenty-three claim lines. Fourteen are approved as written. Nine are usable only with a stated qualifier attached, and the qualifier travels with the claim wherever it goes. Each row carries its evidence source.

The table also carries a prohibited list, and that list earned its place. An early version of the copy said the method leaves no holes to patch. The hooks install with nails. The nail ends up behind the finished panel, which is the actual benefit and a good one, but “no holes” is false. By the time I caught it, that phrasing had reached ten instances across seven surfaces. My own written inventory of where it appeared said seven places across four surfaces. The inventory was three short, and two of the phrasings were invisible to a literal-string search.

That is the argument for the library in one paragraph. A claim you have not written down is a claim you cannot audit.

I swept twenty-four URLs on the build before it went live: zero prohibited absolutes, zero em dashes, product schema intact, BreadcrumbList on every URL, and the two competing FAQ-schema mechanisms consolidated down to one.

The Storefront

Shopify, custom sections, built around one decision: give the foreman the labor math and the install sequence up front, and stop selling him on specifications he already knows how to evaluate.

The live EZpanl homepage on a phone: siding hooks headline, the $199 kit button and the key specs
The live storefront at ezpanl.com on a phone, captured October 15, 2026.

The site carries a how-it-works sequence, a guides layer written for crews rather than for search engines, a dealer path for the wholesale side, and a product page built around the install sequence. The pages are structured for extraction by AI search as well as by Google, because a foreman asking an assistant “what holds a panel while you fasten it” is a real query pattern now and the category has almost no content written for it.

The plan was a Google Search prospecting campaign at launch. I had argued for it. The keyword volume cleared the threshold I set, and I wrote the build spec.

Then I ran the unit economics properly and reversed my own position in writing, the same day I had argued for it.

Three findings did it, and any one of them is sufficient.

The category noun is taken. Every page-one result for “siding hooks” is a wreath and Christmas-light hanger. Menards files the term under Holiday Decorations. Ace lists it under Christmas Indoor Decor. Bidding the obvious category term buys homeowners hanging garland, at Q4 seasonality, at a few dollars of intent. Earlier reasoning in this project treated the category noun as unowned and free to claim. It is not unowned. It is owned by a consumer decoration category, and that reasoning was wrong.

The test could not be read. Strip the wrong-buyer terms out and on-target volume is a few hundred searches a month. That is fifteen to thirty clicks. The confidence interval around any conversion rate you observe at that click volume is wide enough to contain both a dead product and a live one, so the “it is only a test” defense fails on statistical grounds before it fails on financial ones.

Smart bidding would never have left the learning phase. Expected conversions came in around five against Google’s fifteen-conversion minimum.

Underneath all three sat the binding constraint: at launch in July 2026, the store had zero reviews. Paid traffic sent to a $199 tool with no social proof yet, in a category where the buyer’s default posture is suspicion, converts at a rate that no bid strategy repairs.

The seeding tactic that solves review scarcity has its own constraint. Under the FTC’s rule on consumer reviews and testimonials, you can put product in a crew’s hands, but you cannot condition it on the review being positive, and the relationship has to be disclosed. That makes seeding a slower, smaller program than the version that gets proposed in a planning meeting, and it changes the timeline the media plan sits on.

So the recommendation was to hold the search budget, spend the month on price, proof, and the dealer channel, and build brand defense only.

Why This Is the Case Study

An agency bills for the campaign. The campaign was in the plan, the plan was approved, and building it would have been the easy invoice.

The reasoning above is the deliverable. It is also the part that only shows up when the person doing the analysis is the same person who would have run the media, with no incentive to protect a build that had already been scoped.

The storefront is live at ezpanl.com. The paid program starts when the proof exists to point it at.

03   More work

Other accounts, same approach.

Custom furniture Website build

58 pages in the live sitemap: Getting a Furniture Maker Off Weebly, On His Schedule

When Weebly began winding down in 67 countries, a custom furniture maker in Geneva, Illinois decided not to wait for it to reach him. Seven weeks after he forwarded me the news, his new site was live: 58 pages in its sitemap, his own photographs in the galleries, and 112 of 113 old addresses still resolving. The figures come from launch-day checks of the live site and from the build and account records.

Read the breakdown→
HEALTHCARE
A Practice Website and Its Ad Account, Cut Over Together
Conner Crowe
Healthcare Website build + Google Ads

533 legacy urls inventoried before the move: A Practice Website and Its Ad Account, Cut Over Together

I rebuilt handandwristinstitute.com off WordPress and moved the Google Ads account onto it in the same week. 533 legacy URLs carried forward, two DNS records changed, mail never in the blast radius, and 276 live ad changes. Every figure here is one I checked myself against the live domain.

Read the breakdown→

Free ads audit, written by me

Want this kind of breakdown on your account?

Add me as a read-only user and I'll write the audit myself: where the leak is and what to fix first, 5 to 7 pages, back within 24 hours of access. No call needed. If you'd rather talk first, a call is open too.