Home Projects Myles Shephard
Local Real Estate

Built for the listing conversation, not the click.

ABSG Tech built and operates MylesShephard.com — a property-first lead funnel for a 5.0-rated Saginaw, Michigan REALTOR®, complete with an in-browser voice-call widget that lets sellers and buyers reach Myles live without ever leaving the page.

mylesshephard.com 5.0 — Google & Zillow Tri-Cities, Michigan In-browser WebRTC

A Saginaw realtor who needed more than a profile page

Myles Shephard is a REALTOR® and Associate Broker with Pinnacle Realty in Saginaw, Michigan. He works the part of the state locals know as the "Tri-Cities" — Saginaw, Midland, and Bay City — along with the surrounding communities of Freeland, Frankenmuth, Hemlock, Shields, and Auburn.

His track record tells you why the website matters. Across Zillow he carries a 5.0 rating across 116 team reviews, 15 sales in the last twelve months, 515 total career sales, and twelve years in the business. On Google he sits at 5.0 across 27 reviews. Those numbers are the kind that convert — if a potential seller actually sees them, and if there is a clean, fast way for that seller to raise their hand without filling out yet another generic contact form.

That was the problem ABSG Tech set out to solve. A Zillow profile sends the lead to Zillow. A Realtor.com profile sends the lead to Realtor.com. Both platforms take a cut of attention, control the conversation, and bury the agent's number under a wall of competitor advertising. MylesShephard.com flips that. It is a property-first, conversion-first operating system that ABSG built, hosts, and actively manages on Myles's behalf.

Why a realtor needs a real website (not a profile)

Real estate is a high-trust, high-dollar referral business. The decision to list a home is almost never made on a single visit — but the first visit is where you either earn the right to a second, or get forgotten. A modern listing site has to do four things at once:

  1. Capture intent before it cools. Sellers think about listing for months before they call anyone.
  2. Sort the lane. A seller and a buyer need completely different conversations.
  3. Brand the agent, not the brokerage. Pinnacle Realty pays the desk fees, but it's Myles's face, voice, and reviews that close listings.
  4. Pick up the phone, live. Sending high-intent visitors to a "we'll call you back in 24-48 hours" form loses them to the next agent who can.

The two-lane lead funnel: sellers and buyers, separated

The site runs two distinct intake flows with shared identity underneath.

The seller lane (the home page itself)

The visitor begins typing an address into a live autocomplete field powered by Google Places, with a Mapbox fallback when Google's quota throttles. The moment they pick a suggestion, the workspace expands. A satellite preview and a Street View pane snap in, both fully movable so the visitor can confirm "yes, that's my house" before they ever consider giving up an email address. Behind the scenes, that interaction creates a row in property_inquiries and writes events to site_events — meaning even an anonymous address-only visitor becomes a tracked, reviewable record in the admin queue. Only once the property is confirmed does the form ask for name, phone, email, timeline, motivation, estimated value, notes, and a consent checkbox.

The buyer lane lives at /buyers

Buyers do not need a satellite photo of a house they don't own yet — they need to describe the house they're looking for. The intake steps a visitor through: are you interested in a specific known home, or are you searching? Which school districts? Which cities, townships, or areas? How many bedrooms? Square-foot preference? Financing position (cash, pre-approved, working on it)? Credit readiness, when the financing answer warrants it? Must-have features? Maximum price?

Same database. Same admin. Two completely different funnels. That is the architecture that gives Myles the right conversation with the right person every time.

The live-agent widget: a phone call inside the browser

This is the feature that makes MylesShephard.com different from anything you can buy out of a template marketplace. ABSG Tech integrated the same in-house WebRTC live-call engine that powers Laleo.chat directly into the corner of every public page.

A visitor sees a persistent "live agent" button. When they click it they can chat, leave a callback request, or — and this is the part competitors don't have — request a live voice call with Myles right there in the browser. No app install, no phone number to remember, no "we'll call you back tomorrow." A WebRTC connection is opened over WebSocket signaling at /ws/site, hold music plays from the bundled audio assets, and Myles gets an instant push notification on his phone via the ABSG notify.absg.tech/MylesShephardCalls ntfy endpoint. When Myles answers, the visitor is on a live call with him before the average competitor's auto-reply email has even cleared spam filters. If Myles can't answer, the widget plays a short "not available" message and offers the visitor a voicemail recorder. If the call drops on a flaky mobile connection, a reconnect grace window keeps the session alive.

The signaling layer also lets things run the other direction. When Myles is logged into the admin portal he can see live visitors on the site, pop open a visitor detail view, and call them first — pushing a private /visitor/:id access link that opens a one-tap call surface.

Behind the WebRTC layer sits a dedicated coturn TURN server (the mylesshephard-turn container) listening on UDP/TCP 3478 with a UDP media range of 49152-49251. That is what makes the calls survive carrier-grade NAT, hotel Wi-Fi, and locked-down office networks — the kind of connections where consumer chat widgets quietly fail. Visitor presence is tracked with a 45-second heartbeat, NTFY alerts are throttled to fire only on a fresh return after sixty seconds of inactivity (so Myles isn't paged every time a visitor navigates), and call ring timeouts run a full three minutes before falling back to voicemail.

Visitor and call notification payloads are deliberately rich. Each alert includes new-vs-returning visitor status, previous-visit timing, current page and title, browser, OS, device type, viewport size, screen size, WebRTC readiness, IP address, and — when the visitor matches an existing lead — the matched lead summary. Myles answers the phone already knowing whether it's a brand-new seller from Frankenmuth, a returning buyer who looked at three Saginaw market pages last Tuesday, or a re-engagement from a five-month-old listing prospect.

The tech stack, end to end

The whole platform runs out of /docker/mylesshephard/ on ABSG's production host and is composed of four containers, defined in docker-compose.yml:

Outside the box, ABSG wires in Google Maps Platform (Static Maps, Street View, Place Photos, Places autocomplete, Place Details for reputation), Mapbox as the autocomplete and geocoder fallback, the U.S. Census geocoder as the primary address verifier, Amazon SES for outbound email, and HostGator IMAP for inbound mail across the admin@, myles@, and [email protected] mailboxes. Analytics flow into both Google Analytics 4 and StatCounter, plus a first-party event log in Postgres that ABSG operations actually reads.

Listing presentation, contact forms, and lead routing

Every lead that lands gets a real workflow, not an email forward. Inside /admin, ABSG built Myles a multi-section operations console: live-agent overview, searchable leads index with twelve listing stages, every property inquiry indexed by address, landing-page analytics with UTM attribution, IMAP browsing across three real mailboxes, HTML-first email template editing, role-scoped users (owner/admin/Pinnacle agent/third-party referral), operations queues (new leads, overdue follow-ups, assigned-but-uncontacted leads, address-only visitors who never finished the form), and an account workspace.

When a lead is assigned to a team member the system fires a templated assignment email, drops a system note on the lead, and writes a row to lead_assignments. Nothing falls through.

SEO for a local realtor

Local real estate SEO is its own game. People do not search "REALTOR" — they search "Frankenmuth REALTOR," "homes for sale Bay City MI," "best listing agent Midland." MylesShephard.com is built for that shape of intent.

ABSG published a full set of static SEO market pages for the eight communities Myles services: Saginaw, Midland, Bay City, Freeland, Frankenmuth, Hemlock, Shields, and Auburn. Each city has three URLs: an overview page, a /buy subpage, and a /sell subpage — twenty-four indexable pages with their own H1, meta description, canonical URL, Open Graph image, Twitter card metadata, and city-specific hero artwork. Each city hero is a silent, optimized MP4 photo video with a GIF fallback and a JPEG poster, tied to VideoObject and ImageObject structured data so Google's image and video crawlers understand what they're looking at.

Every page emits a structured-data graph that includes a RealEstateAgent entity for Myles, a WebSite entity for the domain, and a WebPage entity for the current URL — all cross-referenced so Google's knowledge graph can stitch them together. The agent record carries his address, telephone, email, the Google Maps and Zillow profile URLs in sameAs, area served, and his knowsAbout topics. Production sitemap, robots.txt, canonical metadata, and share-image routing are all locked to mylesshephard.com.

What ABSG Tech Built & What We Manage

Who this is for, and why this template wins for local agents

This platform is the right shape for any single agent or small team that owns their local market reputation, wants the lead to land in their database (not a portal's), knows the difference between a seller conversation and a buyer conversation, will actually answer the phone, and cares about owning the canonical SEO real estate for the cities and school districts they work.

The template wins because every component is built around a real workflow, not a marketing brochure. The address-first funnel respects how sellers actually think. The buyer flow respects how buyers actually search. The live-agent widget respects the fact that high-intent visitors do not want to wait. And the admin console respects that Myles is one person who needs to walk into his office, see the queue, and work it down.

At a Glance

See the listing strategy site live, or have ABSG build yours.

If you're an agent, broker, or local-services business losing leads to bigger franchises with bigger marketing budgets, the Myles Shephard pattern is the asymmetric weapon: not more ad spend, a faster downstream funnel.

Visit MylesShephard.com Schedule a Call