Traffic Without Leads Is Usually Intent, Friction, or a Hidden Phone Number
Traffic without leads is usually wrong intent, mobile friction, or a silent conversion failure — separate those causes before you fund a full redesign.
William Spurlock Founder — Spurlock Studios Updated 22 MIN
If your site gets visits and almost no leads, do not start with a redesign. Separate wrong-intent traffic from a broken conversion path first. Most “traffic but no leads” cases on trades and small-business sites are one of three things: people arrived for a question you cannot answer with a call, the phone or form fails on mobile, or the page never makes the next step obvious. This diagnostic sits under Websites That Feel Like Films — film-grade craft still needs a working call path.
The short answer
- Check intent before aesthetics: what queries and referrers bring sessions that never call?
- Run the mobile conversion path yourself on a real phone — not desktop DevTools alone.
- Confirm tap-to-call, form delivery, and thank-you tracking before you rewrite the homepage.
- Fix silent failures first (dead
tel:links, image phone numbers, forms that never arrive). - Redesign only after measurement shows the path works and still underperforms.
Why is traffic without leads usually not a pretty-site problem?
Owners often assume low leads mean the design looks cheap. Sometimes that is true. More often the site is attracting researchers, job seekers, or out-of-area browsers, or the conversion plumbing is broken on the device that matters. Trades and local services win on phone and form. If those two actions fail, sessions look healthy in analytics and the phone stays quiet.
| Symptom | More likely cause | Wrong first move |
|---|---|---|
| Sessions up, calls flat | Wrong intent or broken tap-to-call | New brand colors |
| Form submits = 0 in inbox | Delivery / spam / webhook failure | Longer homepage copy |
| Desktop leads OK, mobile dead | Mobile friction | Bigger desktop hero |
| Bounce high on one landing page | Intent mismatch on that URL | Sitewide redesign |
| GBP calls healthy, site number quiet | Site tel: broken or hidden | Full visual refresh |
| Analytics “leads” up, inbox empty | Event fired, delivery dead | Another landing-page A/B test |
Aesthetics can help trust. They cannot fix a phone number that is not tappable. I have shipped hundreds of production sites; the quiet-phone cases that resolve in a week are almost always plumbing, not taste.
How do you separate wrong-intent traffic from a broken path?
You need two piles of evidence: who showed up, and what happened when they tried to act. Do not mix the piles. A DIY query on a blog post is not a broken Call button. A Call button that opens nothing is not a branding problem.
Intent pile (who):
- Top landing pages by sessions for the last 28 days.
- Top queries in Search Console for those URLs (brand, service, DIY, careers, “near me”).
- Geography and device split — out-of-area mobile research often looks like “interest.”
- Referrers: marketplace listings, directories, social vs organic service queries.
Path pile (what broke):
- Did anyone click Call, Submit, Book, or Get estimate?
- Did those clicks produce a real phone event, inbox email, CRM row, or calendar booking?
- Did the thank-you or confirmation fire in analytics?
Google Search Console’s Performance report is built for the intent pile. Group by Queries and Pages, then click a query and switch to Pages to see which URL actually absorbed that search (Performance report overview; common tasks). Label each high-click query before you touch Figma.
| Query shape | Example | Treat as |
|---|---|---|
| Buyer / urgency | “AC not cooling tonight”, “emergency plumber [city]” | Money traffic — path must work |
| Service + geo | “roof replacement Tampa” | Money traffic if you serve that area |
| DIY / how-to | “how to reset HVAC filter” | Research — keep the post, stop counting it as a lead channel |
| Careers | “HVAC installer jobs” | Hiring — do not judge the homepage by it |
| Brand | your company name | Existing demand — path still has to work |
| Wrong service | a trade you do not offer | Attract/repel copy, not a redesign |
If intent is wrong, redesigning the fold will not manufacture buyers. If the path is broken, redesigning the fold while the form still fails is theater.
What does a five-second homepage test actually catch?
Open the homepage on your phone. Cover the logo with your thumb for one second, then uncover it. Without scrolling, answer:
- What do they do?
- Who is it for (city / trade / urgency)?
- What should I do next — call, book, or request?
If you need a second scroll to find the phone number or the primary CTA, the fold is failing the job. Pair this with the composition rules in Above the Fold That Works: one job, one proof, one action — not a dashboard of badges.
Nielsen Norman Group’s 5-second test is built for first impressions of style and prominence, not for reading a paragraph. Use it on the first phone screen. If five people cannot name the next tap, you have a fold-job problem — after you have already proved the tap works.
Illustrative example (not a client result): a HVAC homepage that leads with a lifestyle hero and “Learn more” while the phone sits in a footer image will collect sessions from “AC not cooling” searches and still get few calls. The fix is rarely a new font.
Fold-job checklist:
- Service named in the first screen, not only in the logo wordmark
- City or service area visible without a menu
- Primary action is Call or Request — not “Learn more”
- Phone is HTML text inside a
tel:link, not a JPEG of digits - Sticky bar, if present, does not hide the submit button
- Same test run on the highest-traffic service URL, not only
/
Which mobile failures do owners never see from a laptop?
Most owners review the site on a laptop in the office. Leads arrive from phones in a driveway. Desktop DevTools can fake a width. It cannot fake a fat thumb, a cellular handshake, a carrier dialer, or a spam filter on the owner’s phone.
Run this checklist on a real device on cellular data:
- Phone number in the header is a real
tel:link, not plain text that looks linked - Phone number is not an image of digits (screen readers and taps both lose)
- Tap-to-call opens the dialer with the correct number — including tracking numbers
- Sticky call bar does not cover the form submit button
- Form fields use the right input types (
tel,email) so the correct keyboard appears - Required fields do not trap the user in a loop with no error message
- Submit shows a clear success or failure state — not a silent button freeze
- After submit, a confirmation email or CRM notification actually arrives within five minutes
- Autofill does not break custom masked phone fields
- Cookie / chat widgets do not block the primary CTA on small screens
MDN is explicit that input type="tel" exists so mobile browsers can show a phone keypad; it does not validate a worldwide format for you (<input type="tel">). If your “phone” field is type="text" with a clever mask, you are taxing every driveway tap.
Tap size is not taste. Nielsen Norman Group recommends a minimum rendered target of 1 cm × 1 cm so a fingertip can hit it without error (Touch Targets on Touchscreens). Apple’s Human Interface Guidelines ask for a hit region of at least 44 × 44 pt (Buttons). WCAG 2.2 SC 2.5.5 (AAA) uses the same 44 × 44 CSS pixels floor for custom targets (Target Size (Enhanced)). A 12-pixel footer phone that “looks linked” on a 27-inch monitor is a hidden number on a phone.
One silent failure is enough. A form that “submits” in the browser and never reaches the inbox produces the same owner story: “we get traffic but no leads.”
How do hidden phone numbers fail tap-to-call?
“Hidden” here does not mean you forgot the number. It means a human can see digits and a phone cannot act on them. That is the most expensive class of pretty-site failure I still find on live trades sites.
| What you see | What the device gets | Typical cause |
|---|---|---|
| Digits in the header | Nothing happens on tap | Styled <span>, not <a href="tel:"> |
| A “Call” button | Opens a # or a contact page | Designer used a button for look, never wired the URI |
| A photo of the van with the number on the door | An image, maybe with empty alt | Phone burned into a JPEG |
| A tracking number in the hero | A different, dead number in the footer | CMS partials drifted after a publish |
| Correct digits, local formatting | Dialer error on some devices | URI not in global form |
The tel URI is an IETF standard, not a Webflow trick. RFC 3966 defines tel: as the scheme for resources identified by telephone numbers. On a public HTML page, put the global form in the href even if the visible text stays local — tel:+18135550199 next to “(813) 555-0199”.
WCAG 1.4.5 tells you not to use an image of text when real text can do the job (Images of Text). A phone number in a PNG fails that rule and fails tap-to-call at the same time. If the only “link” is the image, you also risk WCAG 2.4.4 / 4.1.2 failures when the image has no accessible name.
Phone-path procedure (ten minutes):
- View source or inspector: find every visible number.
- Confirm each is an
<a href="tel:+1…">with the live number, not a leftover tracking digit. - Tap from iPhone and Android on cellular — not office Wi-Fi only.
- Watch the dialer: country code, extension, and tracking swap all have to be right.
- Call through and confirm a human or voicemail on the business line, not a disconnected tracking pool.
- Repeat on the top three landing pages, not only the homepage.
If step 2 fails, you do not have a conversion-rate problem. You have a missing link.
Why does a dead form look like “nobody wants to hire us”?
A dead form is worse than no form. The visitor did the work. The owner sees traffic. Nobody has a lead. Both sides write the wrong story: visitors “aren’t serious,” the site “doesn’t convert,” so the next invoice is a redesign.
GA4 will happily count a browser event that never became an email. Enhanced measurement can fire form_submit when a user submits a form (automatically collected events). Google’s recommended lead event is generate_lead when someone submits a form or a request for information (recommended events). Neither event proves the inbox, the CRM, or the SMS ping.
On Webflow specifically — the stack on many of the sites I inherit — notification mail is a separate system from the thank-you state. Webflow’s own help lists the usual killers: a custom form action that bypasses Webflow entirely, spam filtering on the recipient, role-based addresses (info@, admin@) that providers treat as junk, and addresses that landed on Webflow’s blocklist after prior bounces (Why am I not receiving form notification emails?; Form submissions).
| Layer | What “success” means | How it lies |
|---|---|---|
| Button state | Spinner stops, page thanks you | JS success with a 500 on the webhook |
GA4 form_submit / generate_lead | Event in Realtime | Fired on click, not on delivery |
| CMS form inbox | Row exists in Webflow / Netlify / host | Email notification never left |
| Owner inbox | Message arrived | Buried in spam or a rule |
| CRM / sheet | Row with the unique test phrase | Zap / Make / n8n pointed at a retired URL |
| Human follow-up | Someone called back | Notification went to an ex-employee |
Delivery test I run on every discovery:
- Submit every live form with a unique phrase (
TEST-0816-driveway). - Do it on a phone, on cellular, with autofill on and off.
- Start a five-minute timer.
- Check the CMS form log, the notification inbox, spam, and the CRM.
- If any layer is missing, stop the redesign conversation. Restore the pipe.
A form that only works from the owner’s office Wi-Fi is still a dead form for the driveway.
How many form fields is friction versus qualification?
Form length is not a moral virtue. For local services, every extra field is a reason to call a competitor instead. That is a friction diagnosis, not a brand diagnosis.
Baymard’s checkout research is ecommerce, not HVAC — do not steal their percentages and paste them onto a lead form. What you can take is the mechanism: users get intimidated by a wall of fields, and complexity is a documented abandonment reason. Baymard’s public write-up on minimizing fields cites checkout complexity as an abandonment driver and treats field count as a first-order cost (Checkout Optimization: Minimize Form Fields). Nielsen Norman Group’s form-usability piece points at the same class of failure: guideline-breaking forms produce more errors and slower completes (Website Forms Usability).
| Goal | Field budget that usually works | Often too many |
|---|---|---|
| Emergency call-back | Name, phone, short problem | Address, square footage, upload, “how did you hear” |
| Estimate request | Name, phone, email, service type, ZIP / city | Full project questionnaire before first contact |
| Contact | Name, email or phone, message | CAPTCHA stacked on CAPTCHA with no SMS option |
Rules of thumb I use in discovery (not universal laws, not lift claims):
- If the business lives on phone calls, put Call equal to or above the form.
- Ask only what changes routing or urgency on the first submit.
- Move qualification to a human follow-up or a second step after contact.
- Test delivery weekly — spam folders and dead webhooks kill “conversion” invisibly.
- Prefer
type="tel"andtype="email"over maskedtextfields that fight autofill.
Friction vs qualification — decide with this list:
- Does this field change who gets the lead tonight?
- Does this field change how fast you should call back?
- If the visitor skips it, can a human ask it on the phone in ten seconds?
- If yes to the last question, cut it from the first submit.
If you need square footage to price a job, collect it after the callback is booked. A quiet phone is not fixed by a longer form.
What trust signals matter when the ask is a phone call?
Trust is not a wall of logos. For trades and SMB, proof that reduces the risk of a bad hire — placed next to the ask, not in a footer collage.
- Real job photos of the crew’s work (not stock kitchens)
- Service area named in plain language
- License / insurance language where it is true
- Response-time expectation (“same-day estimate windows” only if you keep it)
- Reviews linked to a real profile the visitor can verify
- Clear contact path above the fold on mobile
Stock photography and vague “quality you can trust” copy do not replace a tappable phone number and a photo of a finished install. Proof belongs next to the ask.
| Signal | Earns a tap when… | Becomes theater when… |
|---|---|---|
| Job photo | It is this crew, this trade, this city | Stock kitchen, watermark, or another company’s van |
| Review | Count + source the visitor can open | “5-star service” with no profile |
| License line | Number is real and current | Badge pack from a template kit |
| Response promise | Dispatch actually keeps it | “24/7” on a site that voicemails until Monday |
| Logo wall | Named, relevant, countable | Six grey blobs under “as seen in” |
For trades-specific IA and page jobs, Trades SMB Website Playbook covers structure; this post stays on diagnostic order. Craft still matters — it just is not the first lever when the number is an image.
What order should you measure before funding a redesign?
Run this sequence in one week. Do not skip ahead to mood boards. The order is the point: intent, then friction, then hidden phone / dead form, then craft.
- Baseline the business outcome. Count calls, form emails, and booked estimates for 14–28 days. Analytics alone is not enough.
- Map landing pages → outcomes. Which URLs produce contact events? Which produce bounce-only sessions?
- Intent audit. Label top queries: buyer, DIY, careers, brand, wrong service.
- Mobile path test. Complete Call and Form yourself; record screen video.
- Delivery test. Submit a form with a unique phrase; confirm inbox / CRM / SMS.
- Tracking sanity. Confirm key events (or call tracking) fire when you act — not only when the page loads.
- Friction fix list. Ship the silent failures before any visual redesign.
- Only then decide whether the fold, offer, or proof needs craft work.
If steps 4–6 fail, you do not have a design problem yet. You have an operations and engineering problem dressed up as marketing.
| Day | Output you should hold | Pass / fail question |
|---|---|---|
| 1 | 14–28 day lead count (phone + form + booked) | Do we have a baseline, or a feeling? |
| 2 | Top 10 landings labeled by intent | Is the traffic even for sale? |
| 3 | Screen recording of Call + Form on a phone | Did the dialer and the inbox both work? |
| 4 | Unique-phrase delivery proof | Which layer dropped the lead? |
| 5 | Fix list ordered silent-failures-first | What ships this week without a redesign? |
When is a redesign the wrong first move?
Redesign is the wrong first move when:
- Forms never arrive and nobody tested them last month
- The phone number is not tappable on mobile
- Top traffic is careers, DIY, or out-of-area research
- You changed hosting / DNS / spam filters and “leads stopped” the same week
- You have no baseline of calls vs sessions, only a feeling
- Google Business Profile is carrying the calls while the site number is a decoration
- A chat widget or cookie wall covers Submit on a 390px screen
Redesign becomes reasonable when the path works, intent is mostly right, and the fold still fails the five-second test — unclear offer, weak proof, buried CTA, or a layout that fights urgency. That is craft work under the same standard as Websites That Feel Like Films, not a template swap for its own sake.
| Situation | First move | Redesign? |
|---|---|---|
tel: missing or image-only | Wire the URI, test both phones | No |
| Form events ≠ inbox | Restore delivery, weekly test ritual | No |
| DIY post is the top landing | CTA block + stop treating it as a lead URL | No |
| Path works, fold fails five-second test | Fold / proof / offer sprint | Yes, scoped |
| Path works, IA is a maze | Information architecture, then visuals | Maybe — not a paint job |
| You want it to “feel more premium” | Name the failure first | Not yet |
If you cannot name whether the failure is intent, friction, or a hidden phone / dead form, you are not ready to buy a new homepage.
What does “converting” mean on a small-business site?
For many local operators, conversion is a phone call in under two taps, or a short form that routes to a human within minutes. Vanity metrics (time on site, scroll depth, homepage bounce) can mislead.
GA4’s bounce rate is not the old Universal Analytics bounce. An engaged session lasts longer than 10 seconds, has a key event, or has two or more page/screen views. Bounce rate is the share of sessions that were not engaged — the inverse of engagement rate (Engagement rate and bounce rate). A driveway visitor who taps Call at second eight and leaves can look like a bounce if the tap is not a key event. That session did its job.
| Metric | Useful when… | Misleading when… |
|---|---|---|
| Bounce / engagement rate | Comparing similar landing pages | Judging a call-first page that did its job |
| Sessions | Capacity planning | Equated with demand quality |
| Form events | Matched to inbox / CRM rows | Counted without delivery proof |
| Click-to-call events | Call tracking is configured | Number is an image or plain text |
| Time on page | Long-read content | A successful tap-to-call exit |
| Scroll depth | Diagnosing a buried CTA | Treated as purchase intent |
If you only watch bounce rate, you will “fix” pages that successfully sent someone to the dialer. Do not quote a universal site conversion rate here — I will not invent one. Compare your calls and inbox rows to your sessions for 14 days, then decide.
How do you tell call tracking from website analytics?
Many trades sites use a tracking number in the header and a different number on Google Business Profile. That is fine until someone updates one and not the other, or the tracking script fails after a CMS publish.
Google’s Business Profile performance report counts Calls as the number of times a customer clicked the call button on the profile — not as answered jobs, and not as website taps (Understand your Business Profile performance). If you blame the website for a quiet week, open that report first. The demand may already be calling the listing.
| Source of truth | Question to answer |
|---|---|
| Call tracking dashboard | Did the website number ring? |
| Phone system / cell log | Did a human answer and log the job? |
| GA4 click-to-call events | Did the tap fire (if instrumented)? |
| Google Business Profile calls | Is GBP carrying demand the site is blamed for missing? |
Website tel: in the DOM | Is the live number even present after the last publish? |
Decision grid:
- GBP calls healthy, website number quiet → inspect site
tel:, tracking swap, and fold CTA. This is often a hidden-phone problem. - Both quiet, sessions up → intent and service-area mismatch before a redesign.
- Website tap events up, phone log quiet → tracking number, after-hours routing, or a disconnected pool.
- Inbox empty, GA4
generate_leadup → dead form, not demand.
If GBP calls are healthy and the website number is quiet, you may have a site conversion problem — or the site number may simply be wrong or unclickable. Do not buy a redesign to fix a swapped tracking script.
Two more quiet-phone impostors that look like a website problem and are not:
| Impostor | What you will see | What to do first |
|---|---|---|
| After-hours voicemail | Site taps and GBP clicks exist; nobody answered | Check hours, overflow, and who owns the night phone |
| Directory / Maps only | Sessions exist, but calls never used the site number | Compare GBP + Apple Maps + Yelp to the site tel: |
| Paid call extension | Ads report calls; the site still looks “dead” | Do not judge the homepage by campaign call assets |
| Old tracking pool | Taps open a disconnected or shared number | Kill the swap script; hard-code the live line until it is stable |
Directory listings are a second conversion surface. If the listing number works and the site number does not, the site is failing tap-to-call even while the business is getting work. That is still a hidden-phone diagnosis — just not the one the analytics dashboard was built to show.
Where do leads actually die — homepage or service pages?
Homepage vanity hides service-page failure. For many local businesses, paid and organic land on /services/ac-repair or /roof-replacement, not /. Run the five-second test and the mobile checklist on those URLs too.
| Page type | Common failure | First fix |
|---|---|---|
| Homepage | Pretty, weak CTA | Fold job + visible tel: |
| Service page | Walls of SEO text, phone only in footer | Sticky Call + short form |
| Blog DIY post | No path to hire you | Service CTA after the answer |
| Area page | Thin duplicate content, no proof | Real photos + local proof + Call |
| Contact page | Form only, no tap-to-call | Phone equal to form |
| Thank-you page | No confirmation, no next step | “We got it — expect a call by …” |
Fix the highest-traffic money URL first. A redesigned homepage will not rescue a service page that never offers a call.
Service-page pass (use on the top three money URLs):
- H1 names the service and, if honest, the city
- First screen has Call or Request
- Proof is a real job, not a stock hero
- Form field count matches the table above
- Same
tel:as the header, not a leftover - Unique-phrase submit lands in the inbox
Worked diagnostic: sessions healthy, phone quiet
Illustrative walkthrough (composite, not a named client result). Numbers are a teaching shape, not a benchmark and not a promised lift.
| Week | Finding | Action |
|---|---|---|
| Day 1 | 2,400 sessions / month, ~40 form events in GA, 3 emails in inbox | Suspect delivery, not traffic |
| Day 2 | Form webhook pointed at retired Zap / inbox rule | Restore delivery; add test submit ritual |
| Day 3 | Header phone was styled text, not tel: | Wire tap-to-call + sticky mobile Call |
| Day 4 | Top landing page was a blog DIY post with no CTA | Add service CTA block + related service link |
| Day 5 | Search Console showed heavy “how to reset…” queries | Keep the post; stop treating it as a lead channel |
Read that table as a triage order, not as a case study with a conversion rate. Outcome shape you should expect: recovered form delivery and tap-to-call often move lead volume before any redesign budget is spent. Exact percentages vary by market — do not trust anyone who quotes a universal lift, including me if I ever sound like I have one.
What this walkthrough is not:
- A claim that 40 GA events should become 40 jobs
- A claim that wiring
tel:produces a fixed percentage lift - A named client
- A reason to skip the unique-phrase test on your forms
What can you run this week without a mood board?
- List top 10 landing pages and label intent
- Pull Search Console queries for those URLs and tag buyer / DIY / careers / geo-miss
- Call your own
tel:link from iPhone and Android - View-source the header: confirm
href="tel:+1…" - Submit every active form with a unique test string
- Confirm spam folder, CRM, and notification SMS
- Compare GA4
form_submit/generate_leadto inbox rows - Open Google Business Profile performance and compare listing calls to site calls
- Watch a teammate use the site on mobile without coaching
- Note every tap that does nothing
- Write a one-page fix list ordered by silent failures first
- Only then open a redesign brief — if the path already works
If you want the craft pass after the path is honest, that work lives on /websites and in the lane pillar. Do not start there.
A one-page brief I will accept before a redesign conversation:
- Intent labels on the top ten landings (buyer / DIY / careers / geo-miss / brand).
- A 20-second phone video of tap-to-call opening the correct dialer.
- A screenshot of the unique-phrase test in the inbox, not only in GA4.
- GBP call clicks vs site call events for the same 14 days.
- The named failure: intent, friction, or hidden phone / dead form.
If item 5 is blank, we are still in triage. Mood boards can wait.
FAQ
Is my bounce rate the real problem?
Usually not by itself. In GA4, bounce is the inverse of engagement: sessions that did not last over 10 seconds, fire a key event, or view two pages. That mix includes successful call-outs, DIY exits, and confused visitors. Pair bounce with landing-page intent and real lead counts before you redesign for “engagement.”
How many form fields is too many?
For a first contact on local services, more than name, phone, and a short problem description often starts costing completes. Add fields only when they change routing or urgency — not to make the form look thorough. Ecommerce field-count research is a warning about intimidation, not a lead-form conversion rate you can copy.
Should the phone number be in the header?
For call-led businesses, yes — visible and tappable on mobile without opening a menu. Use a real tel: URI in the global form, not an image of digits. If phone is a primary revenue path, burying it in the footer is a self-inflicted tax.
Do I have a tracking problem or a conversion problem?
If analytics shows submits or click-to-call but the inbox and phone are quiet, you have a tracking or delivery problem. If analytics shows almost no attempts, you have intent or friction. Prove both before you pick a fix. A generate_lead event is not a job on the board.
What trust signals matter for local services?
Real work photos, clear service area, verifiable reviews, honest response expectations, and license/insurance language when accurate. Stock trust theater underperforms a clear Call button next to proof. Put the proof beside the ask, not in a logo graveyard.
When is a redesign the wrong fix?
When tap-to-call, forms, or notifications are broken; when traffic intent is wrong; or when you have no baseline of real leads. Fix measurement and the conversion path first, then decide if craft needs a sprint. Intent, friction, and a hidden phone / dead form are cheaper to name than a new homepage.
CTA
Quiet phones with busy analytics are a diagnostic problem — not a mood-board problem.
Explore /websites or book a sprint at /contact?intent=websites-sprint.
What questions does this article answer?
- Is my bounce rate the real problem?
- Usually not by itself. In GA4, bounce is the inverse of engagement: sessions that did not last over 10 seconds, fire a key event, or view two pages. That mix includes successful call-outs, DIY exits, and confused visitors. Pair bounce with landing-page intent and real lead counts before you redesign for “engagement.”
- How many form fields is too many?
- For a first contact on local services, more than name, phone, and a short problem description often starts costing completes. Add fields only when they change routing or urgency — not to make the form look thorough. Ecommerce field-count research is a warning about intimidation, not a lead-form conversion rate you can copy.
- Should the phone number be in the header?
- For call-led businesses, yes — visible and tappable on mobile without opening a menu. Use a real `tel:` URI in the global form, not an image of digits. If phone is a primary revenue path, burying it in the footer is a self-inflicted tax.
- Do I have a tracking problem or a conversion problem?
- If analytics shows submits or click-to-call but the inbox and phone are quiet, you have a tracking or delivery problem. If analytics shows almost no attempts, you have intent or friction. Prove both before you pick a fix. A `generate_lead` event is not a job on the board.
- What trust signals matter for local services?
- Real work photos, clear service area, verifiable reviews, honest response expectations, and license/insurance language when accurate. Stock trust theater underperforms a clear Call button next to proof. Put the proof beside the ask, not in a logo graveyard.
- When is a redesign the wrong fix?
- When tap-to-call, forms, or notifications are broken; when traffic intent is wrong; or when you have no baseline of real leads. Fix measurement and the conversion path first, then decide if craft needs a sprint. Intent, friction, and a hidden phone / dead form are cheaper to name than a new homepage.
Last reviewed
Websites
Websites Linktree is a leak — build the house
Spotify does not send you the fan’s email. Instagram rents the following. Linktree is a hallway with no register. The House is the owned room: site, membership, checkout, follow-up.
Websites The shop site that answers the phone
A Midwest shop does not lose the job to a prettier hero. It loses the job to whoever looks real and picks up. Here is what the site has to do on a Saturday.
Websites A media kit the brand can steal in sixty seconds
Influencers need a brand-safe /media or /kit with rates and demographics you can stand behind — not a Google Doc with dead links. This is not a booker EPK.
Websites Creator Site or Business Site for the house?
Creator Site ($3,500) is tour, listen, join, buy. Business Site ($8,000) is the register. Pick after the $1,500 sprint — not before you have seen the house.
Will's Journal in your inbox.
What I learned this week building for shops, floors, and houses.
You're on the list.
Sign-up failed — try again.
By subscribing, you agree to the Privacy Policy.