How to Set Up a QR Code Postcard Campaign in GoHighLevel
A Complete Guide to Building Automated Direct Mail Campaigns with QR Codes, Landing Pages, Forms, Surveys, CRM Automation, Appointment Booking, and Lead Tracking in GoHighLevel

015,000 Postcards, Zero Answers

A business sends 5,000 postcards to a target neighborhood. Some get thrown away before the mail carrier is out of sight. Some sit on a kitchen counter for a week. A handful of people visit the website. A few call the number on the card. A few scan the QR code printed in the corner.
And then, almost universally, the business is left with no real answer to the questions that actually matter: who scanned, which specific postcard design worked, which neighborhood responded, which offer generated the calls, and whether the campaign generated more revenue than it cost to print and mail. Direct mail has always suffered from this exact blind spot, real engagement happening in the physical world with almost no way to trace it back to a specific piece of marketing.
A GoHighLevel QR code campaign solves this by turning a postcard from a one-way broadcast into the opening move of a fully tracked, fully automated customer journey. This guide covers the complete build, from planning the campaign around the customer journey rather than the postcard design, through generating a trackable QR code, through the landing page and form or survey behind it, through CRM automation, appointment booking, segmentation, and the reporting that finally answers the question direct mail marketers have been guessing at for decades: which piece of mail actually made money.
This blind spot has persisted for so long largely because the tools historically available to fix it lived in separate systems that never talked to each other: a QR code generator that showed scan counts but knew nothing about who actually became a customer, and a CRM that knew about customers but had no way to connect them back to a specific postcard. Building the entire chain inside one platform, from the code itself through to the closed sale, is what actually closes that gap rather than just moving the disconnect from one system boundary to another.
02The Campaign Architecture, End to End

The full journey runs from a printed postcard, through a QR code scan, into a mobile-optimized landing page, into a form or survey capturing the visitor's details, into the CRM as a tracked contact, into a workflow that branches based on what was captured, out through personalized email and SMS follow-up, potentially into a booked appointment, and finally into a sales pipeline stage, with every step along the way tagged back to the specific campaign, offer, and even neighborhood that originated it.
Every stage depends on the one before it being built correctly. A QR code pointed at a generic homepage instead of a dedicated, trackable landing page throws away most of the attribution value the whole campaign is built to capture. The sections that follow walk through building each stage properly, starting with planning the campaign around the customer's actual journey rather than starting with postcard design, which is where most direct mail campaigns go wrong from the very first decision.
03Section 1: Planning the Campaign Around the Customer Journey
The most common mistake in direct mail is designing the postcard first and figuring out what happens after a scan later, if at all. It works better in reverse: define the campaign goal, generate booked appointments, generate quote requests, build a list for a future promotion, before deciding anything about design. Define the target audience and geographic areas precisely enough that the offer can speak directly to that specific group rather than something generic enough to apply to anyone.
From there, define the offer and call-to-action clearly enough that a recipient understands exactly what happens if they scan, a free inspection, a discount, a downloadable guide, and design the landing page and follow-up strategy before the postcard itself gets finalized. A postcard built without knowing what the landing page will say, or what the follow-up sequence will do with a lead's information, routinely ends up disconnected from everything that happens after the scan, forcing a rebuild once the rest of the campaign gets designed around it instead of the other way around.
04Section 2: Designing the Postcard
Everything on the postcard exists to earn a scan, which means the headline and offer need to be legible and compelling within the few seconds someone spends deciding whether to keep reading or toss it. A clear, benefit-driven headline, a specific and credible offer, and a short list of concrete benefits, rather than vague brand messaging, consistently outperform a design built primarily around looking polished.
QR code placement matters more than businesses often expect: the code should be large enough to scan easily even after a bit of wear in a mailbox or a wallet, placed somewhere it won't be trimmed or folded, and paired with a short, explicit instruction, "Scan to book your free inspection," rather than assuming the code alone communicates what scanning it will do. Branding and contact details should still appear for the recipient who prefers to call directly rather than scan, since not every prospect will engage the same way, and a mobile-friendly mindset should extend beyond the landing page itself to the postcard's own instructions, since the entire next step happens on a phone.
05Section 3: Creating the QR Code
GoHighLevel includes a native QR Code Builder, found under Sites in a sub-account, that generates scan-ready codes linking directly to a website, a funnel page, a form, a survey, a quiz, a review page, a payment link, a phone call, an SMS conversation, or a WhatsApp chat, all without needing a separate third-party QR code tool. Codes can be customized with brand colors, shapes, and a logo, and exported as PNG, SVG, or PDF for print. For campaigns needing many unique codes at once, a bulk creation option accepts a CSV file and generates a full batch in one pass, useful for assigning a distinct code to each neighborhood, sales rep, or postcard variation in a larger rollout.
One detail worth understanding clearly: GoHighLevel's QR codes are dynamic by design, meaning the destination URL behind a printed code can be updated at any time without needing to reprint or reissue the physical postcard. This is a meaningful advantage over a plain static QR code generated by a basic online tool, since a campaign's landing page can be refined, or even swapped for a different offer entirely, after tens of thousands of postcards are already sitting in mailboxes.
For attribution down to the individual postcard batch, appending UTM parameters to the destination URL, before generating the QR code, lets the business track exactly which campaign, offer, or print run each scan came from once that data reaches GoHighLevel's or an external analytics platform's reporting. Before any code goes to print, testing it thoroughly, scanning it with several different phone models and QR reader apps, checking the destination loads correctly on a cellular connection rather than only office WiFi, and confirming the URL and any UTM parameters are exactly correct, catches the kind of error that would otherwise only surface once thousands of postcards are already undeliverable to fix.
Print quality deserves its own check as well. A QR code that scans perfectly on a laptop screen can still fail once shrunk down and printed on glossy cardstock, particularly if the surrounding design crowds it too tightly or a background color reduces contrast against the code itself. Requesting a physical printed proof, not just a digital preview, and testing the scan from that actual printed card before committing to the full run, catches print-specific failures a screen preview simply can't reveal.
06Section 4: Building the Landing Page
The landing page a QR code opens should mirror the postcard's offer precisely; nothing kills conversion faster than a scan landing on a generic homepage that doesn't obviously connect to what the recipient just read on the physical card. A strong landing page repeats the specific offer clearly near the top, backs it up with a short list of concrete benefits, and includes enough social proof, a testimonial, a review count, a recognizable client logo, to reassure a visitor who's never interacted with the business online before this exact moment.
The form or survey capturing the visitor's information should sit prominently on the page rather than requiring scrolling to find, and the whole page needs to load quickly and render cleanly on a phone, since essentially every visitor arriving from a QR scan is on a mobile device standing wherever they happened to be when they decided to scan. A landing page that takes several seconds to load, or that renders with broken formatting on a phone screen, will lose a meaningful share of visitors before they ever see the offer clearly, regardless of how well the postcard itself performed.
07Section 5: Forms vs. Surveys for QR Landing Pages
GoHighLevel offers both Forms and Surveys, and the choice matters for a QR-driven landing page specifically because mobile visitors have even less patience for friction than desktop visitors do. A Form, short and single-page, name, phone, email, and maybe one qualifying question, is generally the better default for a QR landing page, since minimizing friction at the exact moment someone is standing somewhere with their phone out is usually worth more than the extra depth a longer survey would capture.
A Survey becomes the better choice when the campaign specifically needs qualification before the next step matters, a home services campaign asking which service is needed and roughly what budget range applies, or a healthcare campaign asking a few intake questions before recommending a specific appointment type. Because surveys support page-level branching, a QR campaign advertising several different services from one postcard, for instance, can use a survey to route each visitor toward the specific follow-up relevant to what they actually need, rather than funneling everyone into an identical generic sequence regardless of which service brought them to the page.
08Section 6: CRM Integration
Every form or survey submission from the landing page creates a new contact or updates an existing one if the email or phone number already matches an existing record, which matters for a direct mail campaign specifically because postcards are often sent to a purchased or existing list that may already partially overlap with the CRM. Confirming duplicate handling works as expected, rather than assuming it does, avoids fragmenting a single prospect's history across two separate, disconnected contact records.
The campaign itself should be tracked directly on the contact record, both through a dedicated campaign tag applied at submission and through UTM parameters carried from the QR code's destination URL into GoHighLevel's built-in attribution tracking, which captures session source, medium, and campaign data on funnel and website visits. Mapping that attribution data to custom fields makes it reliably filterable and reportable later, in workflows, Smart Lists, and dashboards, rather than sitting only in the raw attribution panel on an individual contact record. Where the campaign is meant to generate a sales opportunity directly, the same submission should also create an opportunity in the appropriate pipeline, tagged clearly enough that a manager glancing at the pipeline can immediately tell which deals originated from this specific postcard run.
09Section 7: Workflow Automation
Once a scan turns into a form or survey submission, GoHighLevel's Form Submitted or Survey Submitted workflow trigger fires the automation that turns a single data point into a full follow-up sequence: applying the campaign tag, creating or updating the opportunity, sending an immediate confirmation, and enrolling the contact into whatever email and SMS sequence matches what they submitted. Filtering the trigger to the specific form or survey tied to this campaign, rather than leaving it open to any submission account-wide, keeps this automation cleanly scoped to just this campaign's traffic.
Where the landing page uses a survey with branching questions, the same layered logic covered in survey automation generally applies here: the workflow itself reads the custom fields and tags the survey applied, then branches into service-specific or urgency-specific paths from there, since the trigger alone doesn't evaluate individual answer values directly. A visitor indicating a specific service and high urgency should end up on a meaningfully different path, a faster response time, a direct calendar link, an immediate internal alert, than a visitor who was mostly just curious and provided minimal qualifying information.
10Section 8: Appointment Booking From a QR Campaign
For a campaign built around generating booked consultations, quotes, or inspections, routing a qualified respondent directly to the right calendar, rather than a single generic booking page, meaningfully improves both booking and show-up rates. A respondent who indicated a specific service or urgency level through a survey question can be shown a booking link tied to whichever team member or calendar actually handles that service, with confirmation and reminder automation running exactly the way it would for any other appointment booked through the CRM.
No-show prevention matters more for direct mail-sourced appointments than for many other lead sources, since a prospect who scanned a postcard while standing at their mailbox may have moved on mentally by the time the appointment date arrives. A confirmation immediately after booking, a reminder a day or two before, and a same-day reminder closer to the appointment time all help close that gap between initial interest and an appointment the prospect still remembers agreeing to.
11Section 9: Lead Segmentation
A QR campaign generates several dimensions of genuinely useful segmentation data almost automatically, provided the tagging was set up deliberately. Location, tracked through a distinct QR code or UTM parameter per mailing area, tells the business which specific neighborhoods are actually responding. Service requested and stated budget, captured through the landing page's form or survey, allow different follow-up sequences for different needs and price points rather than one generic message trying to speak to everyone. Whether a respondent is an existing customer or a brand-new prospect, detectable through the CRM's duplicate matching, should also change the follow-up entirely, since a returning customer scanning a new postcard deserves a different message than someone encountering the business for the first time.
None of this segmentation happens automatically just because the data was technically captured; it requires the tags, custom fields, and workflow branches to actually be built around these dimensions deliberately, the same discipline covered throughout this guide's automation sections, rather than assuming rich data alone will translate into better conversion on its own.
12Section 10: A Multi-Step Follow-Up Sequence
A well-built follow-up sequence for a QR-sourced lead moves through a deliberate cadence rather than a single generic email. Immediately after submission, a thank-you email confirms the request was received and sets expectations for what happens next. Within about five minutes, an SMS reinforces that confirmation in a channel more likely to be seen quickly, especially useful since the prospect is very likely still holding their phone from the scan itself. A day later, an educational email addresses a common question or concern related to the offer, followed a few days after that by a case study or testimonial relevant to the specific service requested, building the trust a cold direct mail lead hasn't had the chance to develop yet.
Around a week out, a gentle reminder re-engages anyone who hasn't yet booked or responded, and by two weeks, a time-limited special offer gives a final, clear incentive to act before the lead is moved into a longer-term nurture sequence rather than being abandoned entirely. The specific timing here should flex to match the offer's own urgency, a same-week service call needs faster cadence than a seasonal promotion with weeks of runway, but the underlying principle, moving from immediate confirmation, through trust-building, through a clear final call to action, holds across most direct mail follow-up sequences.
13Section 11: AI Personalization
The data captured through a QR-driven landing page, service requested, stated urgency, location, budget range, is a solid input for AI-assisted personalization, provided the specific capability being used is verified directly in the account rather than assumed. Practical applications include drafting a personalized follow-up email or SMS a human reviews before sending, generating a short lead summary for whoever picks up the call so they aren't starting cold, or preparing a brief sales prep note ahead of a booked consultation.
Because GoHighLevel's AI feature set continues to evolve, and because exactly which tools are available depends on the current subscription tier and account configuration, confirming what's genuinely available directly inside the account, rather than assuming a specific AI capability exists because a similar one exists elsewhere in the platform, avoids building a campaign around functionality that turns out not to be available on a given plan. As with any AI-assisted communication, a human should review anything customer-facing before it goes out, particularly for a direct mail lead who has no prior relationship with the business yet.
14Section 12: Reporting
GoHighLevel's native QR Code analytics track total and unique scans over time, performance broken down by QR type, and filterable date ranges, all viewable in real time from the QR Code library. That scan-level data answers the first half of the attribution question, how many people actually engaged with the physical piece of mail, but the more valuable half of the picture comes from connecting those scans through to what happened afterward inside the CRM: form submission rate relative to scans, conversion rate from submission to booked appointment, and ultimately revenue closed and attributed back to the originating campaign.
Cost per lead and overall campaign ROI require combining the print and mailing spend with what the CRM shows came out of it, a calculation the platform doesn't perform automatically but that becomes straightforward once every contact, opportunity, and closed deal is properly tagged back to the specific campaign, offer, and QR code that originated it. Neighborhood-level and offer-level performance, comparing conversion and revenue across different QR codes or UTM parameters assigned to different mailing areas or postcard variations, is where the real strategic value of this whole setup shows up, since it tells the business specifically where to spend the next print run's budget rather than mailing the identical list again on a hunch.
One limitation worth being direct about: GoHighLevel's native QR analytics do not currently include a geographic scan-location map showing where physically a code was scanned; that level of granular geo-tracking has been a requested feature rather than something available today. Businesses wanting neighborhood-level attribution should rely on assigning a distinct QR code or UTM parameter to each mailing area rather than expecting the platform to infer location from the scan itself.
It's worth establishing a simple reporting cadence from the very first campaign rather than treating attribution as an afterthought: a weekly check on scan volume and submission rate while the campaign is fresh, and a fuller review of appointments booked and revenue closed once enough time has passed for the sales cycle to play out. Direct mail response often trails the mailing date by days or weeks rather than arriving immediately, so judging a campaign's performance too early, before its natural response curve has had time to develop, risks drawing the wrong conclusion about what actually worked.
15Section 13: Advanced Campaign Ideas
Once the core system works reliably, the same architecture supports considerably more sophisticated attribution. Generating a distinct QR code, using the native bulk creation tool for volume, for each neighborhood in a mailing run lets the business directly compare which areas actually convert rather than treating an entire city or zip code as a single undifferentiated audience. The same approach applied to different services, different customer types, existing customers versus new prospects, or even different sales reps assigned to different territories, turns a single postcard design into several parallel, independently measurable experiments running at the same time.
This kind of granular attribution is exactly what direct mail has historically struggled to provide, and it's also what makes it possible to make a genuinely informed decision about where to spend the next campaign's budget, rather than repeating the same blanket mailing list because nobody could say with confidence which parts of the last one actually worked.
16Section 14: Common Mistakes Worth Avoiding
The same handful of failures show up across most underperforming QR campaigns. A landing page that isn't genuinely mobile-optimized loses visitors who arrived exclusively on a phone. A QR code that wasn't tested thoroughly before printing can send thousands of recipients to a broken or incorrect destination with no way to fix it without a costly reprint. No automation behind the form means leads sit unactioned until someone manually reviews submissions, losing the speed advantage that made the campaign worth building this way in the first place.
No appointment booking built into the flow leaves a warm, freshly-scanned lead to cool off while waiting for a manual callback. No CRM tracking or campaign tagging means the business ends up right back where traditional direct mail always left it, unable to say which piece of mail actually produced results. No follow-up beyond a single confirmation email wastes the multi-touch opportunity a proper sequence provides, and a weak call-to-action or an unclear, uncompelling offer undermines everything else, since no amount of tracking or automation compensates for a postcard nobody was motivated to scan in the first place.
17Section 15: A Complete Campaign Example
A roofing company mailing 8,000 postcards across three neighborhoods after a hailstorm is a useful illustration of the full system working together. Each neighborhood received a postcard with an identical offer, a free roof inspection, but a distinct QR code generated in bulk through GoHighLevel's CSV upload, one code per neighborhood, each pointed at the same landing page with a neighborhood-specific UTM parameter appended to the destination URL.
A scan opened a mobile-optimized landing page repeating the free inspection offer, backed by a short list of recent local reviews, with a brief survey asking about the type of roof, whether they'd noticed visible damage, and their preferred timeframe for an inspection. Submission created a contact tagged with both the campaign and the specific neighborhood, applied a qualification tag based on the reported damage and urgency, and triggered a workflow that sent an immediate SMS confirmation, routed the contact to a booking calendar for a roofing inspector, and notified the sales team by SMS the moment a respondent indicating visible damage and an urgent timeline came through. Two weeks in, the neighborhood-level reporting showed one of the three areas converting at nearly triple the rate of the other two, information the business used directly to concentrate the next print run's budget on similar neighborhoods rather than mailing the same broad area again.
18Section 16: An Implementation Roadmap
Building this properly moves through the pieces in a deliberate sequence rather than starting with postcard design. It starts with campaign planning, the audience, the offer, the geographic areas, and the desired outcome, followed by designing the postcard itself once the rest of the journey it needs to support is already understood. From there, the QR code gets generated with the correct destination and UTM parameters, and the landing page and its form or survey get built and tested thoroughly before anything goes to print.
The later phases close the loop: configuring the CRM's tagging and attribution mapping, building the branching automation and follow-up sequences, and testing the entire flow end to end, scanning an actual printed proof, submitting a real test entry, and confirming every downstream step fires correctly, before committing to a full print run. Launching is not the final phase; ongoing reporting and optimization, using neighborhood, offer, and channel performance to refine the next campaign, is what turns a single successful mailing into a repeatable, improving system rather than a one-time experiment.
19The Bigger Picture
A QR code is not the campaign; it's the bridge between a physical piece of mail and everything GoHighLevel can automate once someone crosses that bridge. The businesses getting real value from this approach aren't the ones printing the most postcards; they're the ones who built a complete, trackable journey behind the scan, so that every mailing becomes a measurable experiment rather than an expensive act of faith.
Direct mail has always had genuine strengths, physical presence, high open rates relative to email, and reach into households digital advertising alone can miss. Combined with proper CRM automation and honest attribution, it stops being a channel businesses use because it's traditional and becomes one they use because they can prove, campaign by campaign, exactly what it returns.
20How We Help
Building a QR code campaign that's genuinely trackable and automated end to end, rather than a printed code pointing at a generic homepage, takes coordinated work across postcard planning, landing page design, CRM configuration, and workflow automation. New Motion IT works with home service companies, real estate agencies, healthcare practices, financial advisors, and local businesses to build exactly this kind of system inside GoHighLevel.
A QR Code Campaign Strategy Session reviews the business's marketing goals, customer journey, landing pages, CRM setup, automation, and reporting, and results in a direct mail campaign that's fully measurable from the first scan through to closed revenue, rather than a postcard the business can only hope is working.
