A practical measurement dictionary for fence companies that keeps search activity, intake, site measures, estimates, bookings, and completed work separate.
A fence company can have a busy phone, a full estimate calendar, and disappointing completed work from the same campaign. That is not a contradiction. Repair requests, planned privacy-fence installations, commercial security bids, rural fencing, and deck-adjacent questions enter with different fit, decision paths, and completion lags. One “lead” total erases those differences.
This guide builds a fence contractor marketing KPI system that follows evidence from exposure to completed work. It does not supply an industry conversion target or tell you which channel wins. It gives the owner, marketer, intake lead, estimator, scheduler, and operations lead one auditable language for finding the first handoff that changed.
Define the decision before the KPI
A useful fence marketing KPI begins with a decision, then specifies the exact records, calculation, time window, source, owner, exclusions, blind spot, comparison, and review action. Starting with a dashboard label such as “leads” invites departments to count different events. Starting with a decision forces one definition before anyone reads the number.
Write the decision as a question that can produce a bounded keep, change, or stop action. “Should we change the intake rule for repair enquiries outside our normal service radius?” is usable. “How is marketing doing?” is not. The first question identifies a cohort, a transition, an owner, and a possible action without pretending that marketing alone controls the outcome.
| Monthly KPI contract field | Required entry | Fence-company example |
|---|---|---|
| Decision | The one keep, change, or stop question | Keep the current landing-page message for planned residential fence enquiries? |
| Formula | Named numerator and denominator | Qualified enquiries divided by unique attributable enquiries |
| Window | Cohort dates plus allowed downstream lag | One declared 28-day intake cohort; later stages mature for the recorded lag |
| Source | System holding each underlying event | Intake record joined to channel-source record |
| Owner | Person accountable for definition and review | Intake owner |
| Exclusions | Records removed and approved reasons | Duplicates, spam, applicants, vendors, wrong trade, unsupported area or work |
| Blind spot | What the evidence cannot establish | Unknown source for an enquiry without a valid join |
| Baseline comparison | Like cohort and period from company history | Same job class and prior-year window when available |
| Action review | Owner, bounded test, and next review date | Intake lead tests one revised qualification prompt for one cohort |
Lock the contract before viewing results. If someone changes the qualification rule, attribution window, or exclusions, version it and start a new comparable series. This broader principle also appears in our contractor marketing KPI guide; here, the definitions are narrowed to fence-job intake and delivery.
Define fence-job cohorts before comparing marketing
Fence marketing comparisons become useful only after enquiries are separated by the work the buyer requested and the path the company actually uses. Record cohort, service radius, internal ticket band, season or weather context, eligibility review, crew or material dependency, and completion lag. These are company fields, not universal fence-industry values.
Do not infer urgency from the word “repair” or assume every commercial request follows a formal bid. Intake should record the customer’s stated need and the company’s classification. Likewise, the ticket band belongs to the company’s internal reporting; publishing a portable dollar range would ignore scope, material, access, market, and local requirements.
| Job/intake class | Urgency recorded by company | Measure/estimate path | Eligibility checks | Crew/material dependency | Completion lag | Exclusions |
|---|---|---|---|---|---|---|
| Fence repair | Customer-stated damage, access, containment, or safety context | Record whether remote review, site measure, or direct scheduling is used | Area, supported repair, property/buyer, capacity, locally required review | Repair crew and matching or approved replacement material recorded | Actual company-defined lag from enquiry to completion | Wrong trade, unsupported repair, duplicate, no capacity |
| Urgent replacement | Reason and requested timing; never assumed from channel | Record the company's inspection, measure, and estimate sequence | Area, scope, ownership/authority, capacity, eligibility review | Removal, installation crew, material, and access dependencies recorded | Observed lag for this cohort | Unsupported scope, failed eligibility gate, unreachable |
| Planned residential installation | Customer timeline and planning status | Scheduled/completed measure and estimate events kept separate | Service radius, property and buyer type, supported system, company review fields | Crew, selected material, access, and known dependencies recorded | Cohort-specific booking and completion lag | Out of area, unsupported material/system, withdrawn request |
| Commercial/security fence | Requested timeline and procurement status | Consultation, measure, estimate or bid path as actually used | Project geography, scope, buyer authority, bonding/licensing review where relevant | Commercial crew, access, specified material, procurement dependencies | Actual lag retained through completion | Unserved project type, failed eligibility review, no-decision |
| Agricultural/rural fence | Buyer-stated use and timing | Site review and estimate path recorded, if used | Service radius, property type, supported fence system, capacity | Travel, terrain/access, crew, and material dependencies recorded by company | Observed cohort lag | Outside radius, unsupported system, inaccessible or withdrawn request |
| Deck-adjacent enquiry | Fence component and deck component recorded separately | Route through the workflow the company supports | Whether the company offers deck work; fence fit assessed independently | Separate supported-service and crew fields | Separate lag when retained as a supported cohort | Deck-only request when deck work is unsupported |
A firm may add internal subcohorts, such as privacy, ornamental, chain-link, gate, pool-related, or other supported systems, but it should use its real service catalog. The classification is for comparison, not a claim that every fence contractor installs each system. A deck-only request must never be smuggled into fence demand.
Keep every funnel stage separate
The fence marketing funnel needs a distinct business rule, timestamp, source system, and owner for impression, click, call click, form, unique enquiry, qualified enquiry, site measure or consultation, estimate issued, booked job, and completed job. Each event proves only itself; later status must come from the system where that handoff occurs.
| Stage | Exact business rule | Timestamp | Source system | Owner | Does not prove |
|---|---|---|---|---|---|
| Impression | Platform reports one eligible display under the declared filters | Platform-reported display date/time | Search Console, ad, or listing platform | Search/channel owner | A click, profile view, call, or enquiry |
| Click | Platform reports a click for the identical declared slice | Platform-reported click date/time | Search Console, analytics, or ad platform | Search/channel owner | A profile view, contact attempt, or enquiry |
| Call click | Tracked tap activates a phone action | Click timestamp | Analytics, listing, or ad record | Channel owner | That a call connected or intake occurred |
| Form | Submitted form passes the company's submission rule | Submission timestamp | Form system | Intake owner | A unique or qualified enquiry |
| Unique enquiry | Intake creates or matches one person/property request after deduplication | First valid enquiry-created timestamp | CRM or intake log | Intake owner | Fence-job fit or eligibility |
| Qualified enquiry | Unique enquiry passes the written fence-job fit rule | Qualification decision timestamp | CRM or intake log | Intake owner | A measure, estimate, or booking |
| Site measure/consultation | Scheduled and completed statuses are separately recorded when workflow uses this step | Scheduled and completed timestamps | CRM, calendar, or estimating workflow | Estimator/office owner | An issued or accepted estimate |
| Estimate issued | Estimate version is delivered under the company's workflow | Issue timestamp for each version | Estimating system | Estimator/office owner | Acceptance, scheduling, or completion |
| Booked job | Qualified enquiry has one confirmed installation or repair booking | Booking-confirmed timestamp | Scheduling or job management | Scheduling owner | That work started or finished |
| Completed job | First-time job is marked completed under the governed operations rule | Completion timestamp | Job-management system | Operations owner | Payment, review, or future work |
Search Console performance reporting includes search-result impressions and clicks. Those fields are useful at the top of the dictionary, but they are not offline enquiries or jobs. GA4 likewise recommends distinct lifecycle events such as generate_lead, qualify_lead, working_lead, and close_convert_lead; the business still has to define and configure what those events mean.
Want help turning your marketing activity into a clearer acquisition plan?
Measure intake and qualification against fence-job fit
A qualified fence enquiry is a unique request that passes the company's written fit rule for geography, supported material or system, repair versus installation, property and buyer type, schedule and capacity, relevant eligibility review, and deck-work policy. Intake must record the decision, timestamp, reason, and owner rather than infer fit from a call or form.
The form should collect enough information to route the request without asking the buyer to perform the estimator’s job. Useful prompts identify location, requested fence work, repair or new installation, property or buyer context, timing, and whether the request includes deck work. The intake owner can then verify missing facts by phone or message.
Use explicit disposition codes: qualified; out of area; unsupported material or job type; wrong trade; duplicate; spam; vendor; applicant; capacity unavailable; unreachable after the company's documented process; eligibility review failed; or deck-only when unsupported. Preserve the original record. Deleting rejected requests makes channel mix look cleaner and prevents an audit of why they failed.
Eligibility is not a marketing shortcut. Licensing, permits, bonding, and utility-locate responsibilities vary by location and job. Store the local review result and responsible owner where relevant; this article does not give legal eligibility advice. For Google Business Profile, eligible businesses must have in-person customer contact during stated hours, while online-only and lead-generation businesses are ineligible. A service-area business must represent its real location and service area accurately under Google's guidelines.
A complete formula contract for qualified-enquiry rate
Numerator: unique enquiries marked qualified under the written fence-job fit rule. Denominator: all unique attributable enquiries created in the same cohort. Evidence window: one declared 28-day intake cohort. Source: CRM or intake log joined to the channel-source record. Owner: intake owner. Exclusions: duplicates, spam, applicants, vendors, wrong trade, unsupported service or geography, and failed eligibility or capacity gates.
The rate compares intake fit within one declared cohort. It does not measure estimate quality or job completion. If the source join is missing, keep the enquiry in operational totals and label attribution unavailable; do not assign it to direct, organic, or another convenient bucket.
Preserve site-measure and estimate handoffs
Where a fence company uses site measures or consultations, scheduled, completed, cancelled, and missed events need separate statuses. Estimating then records issue, revision, acceptance, decline, expiry, and no-decision independently. This sequence shows where a qualified repair, installation, commercial, or rural request paused without prescribing how to measure or price the fence.
A scheduled measure is a capacity commitment, not evidence that the property was accessed or measured. A completed measure is not an issued estimate. An accepted estimate is still not a booked job unless the scheduling rule is satisfied. Preserve these distinctions even if one employee owns several steps; ownership and event meaning are different questions.
| Handoff | Record separately | Question it answers |
|---|---|---|
| Measure/consultation | Scheduled, rescheduled, completed, cancelled, not completed | Did the required site step occur? |
| Estimate | Drafted, issued, revised, accepted, declined, expired, no-decision | What customer-facing estimate event occurred? |
| Scheduling | Booking offered, confirmed, rescheduled, cancelled | Was work actually placed on the governed schedule? |
| Delivery | Started, incomplete, completed, cancelled | Did the booked fence job reach the completion rule? |
A complete formula contract for estimate-issue rate
Numerator: unique qualified enquiries receiving an issued estimate under the company's workflow. Denominator: all unique qualified enquiries eligible for an estimate in the cohort. Evidence window: the declared intake cohort plus its stated measure and estimate lag. Source: estimating system linked to the CRM or intake ID. Owner: estimator or office owner. Exclusions: advice-only requests, disqualified jobs, duplicates, and requests withdrawn before measure.
Review the excluded records alongside the rate. A growing withdrawn-before-measure group may justify checking scheduling messages or cohort composition, but it does not prove either is the cause. The next action should test one documented possibility.
Reconcile channel records to booked and completed work
Attribution becomes auditable when the channel interaction, call or form, intake record, estimate, booking, and completed job share durable IDs or a documented join. Each source system retains authority for its event. Marketing may assemble the review table, but it must expose unmatched records instead of forcing every fence job into a channel.
| System | Source-of-truth role | Join field to retain | Boundary |
|---|---|---|---|
| Search Console | Organic search-result impressions and clicks for declared filters | Landing page, query detail where available, device, geography, date | Does not establish enquiries or offline jobs |
| GA4 | Configured website interactions and business-defined events | Session/user identifiers and captured campaign fields | Configured event names do not create operational truth |
| Ad platform | Its spend, impressions, clicks, and configured platform events | Campaign/ad identifiers and click parameters | Platform attribution is not a completed-job record |
| Call tracking | Tracked call attempt and connection evidence where configured | Call ID, tracking number, time, permitted source fields | A call click and a connected call remain different |
| Form | Submission payload and time | Submission ID and captured source fields | Submission is not qualification |
| CRM/intake | Unique enquiry, cohort, qualification, disposition | Enquiry ID plus linked call/form IDs | Does not establish an issued estimate or completion |
| Estimating | Measure and estimate statuses or versions | Estimate ID linked to enquiry and property/job ID | Acceptance does not establish completion |
| Scheduling | Confirmed booking and reschedule/cancellation state | Booking/job ID | Booking is not completion |
| Job management | Governed started, incomplete, cancelled, and completed states | Job ID linked back to enquiry | Completion does not repair missing attribution |
The source map is a design pattern, not a claim that theStacc supplies these systems. theStacc's Content SEO module researches, drafts, scores, queues, and publishes content. Its Local SEO module covers GBP posts, review replies, citations, and rank tracking. Neither should be presented as CRM, call tracking, estimating, scheduling, or job management.
Three formula contracts worth reconciling
Click-through rate: numerator = search-result clicks for the declared page, query, device, and geography slice; denominator = impressions for the identical slice; evidence window = one declared reporting window plus same-prior-year comparison when available; source = Search Console; owner = search owner; exclusions = paid activity, mismatched filters, and anonymized or unavailable query detail disclosed.
Booked-job rate: numerator = unique qualified enquiries with a confirmed booked installation or repair; denominator = all unique qualified enquiries from the cohort; evidence window = declared intake cohort plus stated booking lag; source = scheduling or job-management system; owner = scheduling owner; exclusions = reschedules counted once, while cancellations remain booked but not completed.
Cost per completed first-time job: numerator = direct attributable channel spend for the cohort; denominator = unique first-time jobs from that cohort marked completed; evidence window = declared acquisition cohort plus completion lag; source = channel invoice plus job-management record; owner = marketing owner with operations sign-off; exclusions = recurring phases, cancellations, incomplete jobs, unattributable jobs, and owner labor unless explicitly costed.
Those calculations do not create a universal good result. They create comparable first-party evidence after the cohort matures. For execution details outside this measurement scope, use the dedicated guides to Google Ads for contractors, construction contractor SEO, and contractor website conversion.
Read seasonality and job mix before acting
Read a fence KPI change inside the same job cohort and a comparable company period before changing marketing. Record season or weather context, material dependency, permit or locate review, service-area mix, capacity state, internal ticket band, and completion lag. These fields support investigation; none should be declared the cause without evidence.
Start with the same prior-year window when one exists and definitions match. Then split repair from planned residential installation, commercial/security, agricultural/rural, and supported deck-adjacent work. A higher share of enquiries that require a measure and revised estimate can lengthen the observed path even when intake quality is unchanged. That is a hypothesis to verify from event timestamps.
Do not compare an immature acquisition cohort with an older cohort whose jobs had time to finish. Freeze the intake membership, state the allowed booking and completion lag, and mark records still open. Reissue the report after the maturity date rather than interpreting unfinished records as failures.
- Check whether the metric definition or source integration changed.
- Check whether the cohort mix or service geography changed.
- Review company-recorded weather, season, capacity, material, permit, locate, and eligibility fields.
- Inspect the first adjacent stage transition that moved.
- Choose one bounded test and preserve the untreated comparison where practical.
Run a monthly keep, change, or stop review
A monthly fence marketing review should validate definitions and joins first, then locate the earliest changed transition in a mature, like-for-like cohort. The owner records whether to keep, change, or stop one bounded practice, names the test and review date, and leaves uncertain attribution visible. The review is diagnostic, not a performance promise.
- Audit the contract. Confirm numerator, denominator, window, sources, owner, exclusions, blind spot, and version.
- Check maturity. Separate open estimates, booked work awaiting delivery, cancellations, and completed jobs.
- Reconcile IDs. Count unmatched calls, forms, enquiries, estimates, bookings, and jobs instead of silently dropping them.
- Compare like with like. Use the same cohort definition and prior-year period where available.
- Find the first changed transition. Start at impression-to-click and move downstream one boundary at a time.
- Read failure states. Inspect reasons, not just the total failure count.
- Assign one action. Name the owner, bounded test, untouched fields, and review date.
| Failure-state checklist | Required treatment |
|---|---|
| Duplicate, spam, vendor, applicant, wrong trade | Retain disposition; exclude only under the written contract |
| Deck-only request when unsupported | Keep as unsupported-service disposition, outside fence-qualified totals |
| Out of area or unsupported material/job type | Record requested geography or scope and qualification reason |
| Eligibility review failed or no capacity | Preserve as separate failure reasons; do not relabel channel quality |
| Unreachable | Apply the company's documented process before disposition |
| Measure not completed | Keep scheduled and completed events separate; record reason |
| Estimate not accepted | Separate decline, expiry, withdrawal, and no-decision |
| Cancellation or incomplete job | Retain booked status; exclude from completed denominator where contract states |
| Attribution unavailable | Report it explicitly; never force a source |
Review systems should also preserve legitimate customer feedback. Google permits businesses to ask genuine customers for reviews but prohibits incentives and manipulation. Review acquisition and reputation execution belong in the review management guide; a review is not a substitute for a completed-job record.
Need a practical review of your contractor acquisition plan?
Frequently asked questions about fence marketing KPIs
Fence marketing KPI questions usually come back to four boundaries: activity versus enquiry, enquiry versus qualification, estimate versus booking, and booking versus completion. The answers below address edge cases that a monthly dashboard often hides, including source authority, deck-only requests, cohort maturity, and why a portable cost target cannot govern a local fence company.
What marketing KPIs should a fence company track?
A fence company should track separate transitions from impression through completed job, including click, call click, form, unique enquiry, qualified enquiry, site measure when used, estimate issued, and booked job. The useful rates connect adjacent governed stages, use the same cohort, and state their window, source, owner, exclusions, and blind spots.
Is a call click, phone call, or form submission a fence lead?
No single one automatically qualifies as a fence lead. A call click records an attempt to start a call, a connected phone call records contact, and a form records submitted information. Intake must deduplicate the person or property into one unique enquiry, then apply the written fence-job fit rule before marking it qualified.
When does a fence enquiry become qualified?
A fence enquiry becomes qualified only when the intake owner records that it meets the company's written rule for service geography, supported fence work or material, buyer and property type, schedule and capacity, and any required eligibility review. The timestamp and reason must be stored; an unanswered request remains an enquiry, not a qualified one.
Should site measures and estimates be separate marketing stages?
Yes, when the company uses a site-measure step. A scheduled measure, completed measure, issued estimate, revised estimate, accepted estimate, and booked job are different events with different owners and timestamps. Keeping them separate shows whether a cohort is waiting for access, measurement, estimating, customer decision, scheduling, or another documented handoff.
What is a good cost per fence job?
There is no portable good cost per fence job. Calculate direct attributable channel spend divided by unique first-time completed jobs from the same acquisition cohort, after allowing its documented completion lag. Compare that result with the company's own like-for-like history and disclose incomplete, cancelled, recurring, and unattributable records instead of importing an industry target.
How should a fence company account for seasonality and job mix?
Tag each enquiry with its fence-job cohort, geography, company-defined urgency, season or weather context, internal ticket band, capacity state, material dependency, and expected completion lag. Compare like cohorts with the same prior-year window when available. Treat weather, permits, locates, materials, and capacity as review fields, not assumed explanations.
Which system should be the source of truth?
Use the system that creates each event: Search Console for organic search impressions and clicks, analytics or an ad platform for its interactions, call and form records for contact attempts, CRM or intake for qualification, estimating for estimates, scheduling for bookings, and job management for completion. Join IDs; do not let one dashboard overwrite the source events.
Should deck enquiries be included in fence marketing KPIs?
Only if the company actually offers deck work, and even then deck-adjacent enquiries need their own cohort tag. A deck-only request is an unsupported-service failure state for a fence-only firm. Never merge deck demand, qualification, estimating, or completion with fence work merely because one campaign or intake form mentions both services.
Build the dictionary before judging the channel
A defensible fence marketing report starts with cohorts and event rules, not a universal target. Give every stage its own timestamp, source, and owner; join records through estimating, scheduling, and completion; disclose missing attribution; and compare mature like-for-like cohorts. Then the monthly meeting can change one real handoff instead of debating what “lead” meant.
Begin with one recent cohort and sample records across repair, replacement, planned residential, commercial/security, agricultural/rural, and deck-adjacent intake. Trace each record manually. Fix the first broken definition or join, version the KPI contract, and only then automate the report. Contractors wanting broader marketing support can review theStacc for contractors.
Turn your measurement questions into a focused marketing plan.
Sources & references
Blog SEO, Local SEO, and Social Media — one dashboard, no headaches.