Restoration Intelligence - Tygart Media

Category: Restoration Intelligence

The definitive resource for restoration company operators — business operations, marketing, estimating, AI, and growth strategy.

  • 62% of Contractors Bought AI. Only 15% Can Prove It Paid.

    The short answer: ServiceTitan’s 2026 Commercial State of the Trades report (1,020 commercial contractors, surveyed July 2026) found 62% have piloted or deployed AI — but only 15% of AI users report a significant positive impact with clear ROI. The gap isn’t the technology. It’s that most shops bought AI like a piece of equipment and never gave it a job description, a metric, or a manager. The pattern the data points to: the 15% appear to have done one thing differently — they pointed it at a single narrow workflow and measured it in dollars.


    Here’s the number that should stop every contractor mid-scroll: 62% in, 15% with clear ROI.

    ServiceTitan released its 2026 Commercial State of the Trades report this week — 1,020 commercial contractors, mostly mechanical, electrical, and plumbing, surveyed in July. Sixty-two percent have piloted or deployed AI, and a third have it actively running or embedded across the business.

    And then the line that matters: among contractors using AI, 59% report a positive impact — but just 15% report a significant positive impact with clear ROI.

    Read that split carefully. Fifty-nine percent feel good about it. Fifteen percent can show the money. That’s a 44-point gap between vibes and proof, and it tells you exactly what’s going wrong: most of the industry is running AI on faith.

    Buying it like equipment

    Here’s my read on why. Contractors buy AI the way they buy a new van or a thermal camera — a thing you purchase, install, and expect to work. But AI doesn’t behave like equipment. It behaves like a hire. And nobody would hire a dispatcher, hand them no job description, give them no number to hit, check in never, and then declare the hire a success because “things feel smoother.”

    That’s what most AI deployments are: an employee with no job description. “We got AI for the office.” Doing what, exactly? “You know — AI stuff. Emails. Summaries. It drafts things.” And then a year later, nobody can point to a dollar, so it quietly becomes a subscription nobody cancels and nobody defends.

    The 15% did the opposite. They didn’t buy “AI.” They bought an outcome, and they gave the tool one job.

    Where the money actually concentrates

    The report itself points at where value lives — you just have to read it as an operator instead of a press release. Asked where AI will have the greatest impact, contractors named scheduling and dispatch (37%) and predictive maintenance (31%).

    Notice what’s not on that list: “general productivity.” “Email drafts.” “Brainstorming.” Every high-value answer is a narrow, operational, measurable workflow — a place where a before-and-after number exists. Dispatch efficiency. Callback rates. Estimate turnaround time. These are jobs with a job description built in.

    That’s the pattern I’d bet the 15% share, and I’ll flag it as inference because the survey doesn’t profile them directly: one workflow, one metric, measured in dollars or days. Not “AI across the business.” One throat to choke.

    The cash-flow test

    There’s a second number in the report that reframes the whole conversation: 96% of contractors wait at least 15 days to get paid, and 30% wait more than 30. Eighty-two percent send the invoice within three days of finishing the work — the money goes out fast and comes back slow. Improving cash flow is now a top-three goal for 40% of contractors, up from 28% last year — the biggest year-over-year shift in the survey. Net margin ranks first at 42%. New customers trail at 29%.

    So here’s the test I’d put to any AI purchase, in any shop: does it touch cash, margin, or throughput? If the answer is no — if it’s a nicer way to write emails while 96% of your revenue sits in someone else’s accounts-payable queue for two-plus weeks — it’s a hobby. Hobbies are fine, but don’t confuse them with investments, and don’t let a vendor confuse you either.

    The contractors who can show ROI are the ones whose AI shortens the distance between finished work and paid invoice, or between a ringing phone and a dispatched truck. Everything else is decoration.

    What this looks like in a restoration shop

    Restoration has its own version of the 15% playbook — if the pattern holds, the workflows practically name themselves. Each one comes with a metric attached — that’s the whole point:

    1. The 2am call. The highest-margin job in the trade arrives when your office is dark. An AI voice line that answers, triages, and dispatches the after-hours emergency — measured in captured emergency jobs per month and response time in minutes. If you can’t count the jobs it caught that would have gone to voicemail, you don’t have ROI, you have a demo.
    1. Dispatch triage. Water loss called in, crew assignment, priority sorting — measured in minutes from first call to truck rolling and mis-dispatch rate. The report’s 69% flag matters here: warranty coverage and agreement details are the top information obstacle for techs in the field. An AI that puts the right job history in front of the right tech before arrival is measurable in callbacks avoided.
    1. Documentation. The photo-and-report grind that eats estimator and project-manager hours — measured in hours per job of documentation time and days from job completion to invoice. Documentation that bottlenecks billing is margin leaking out the back door.
    1. Estimate turnaround. Measured in hours from site visit to estimate delivered. In storm and emergency work, the fast estimate wins the job. That’s margin, directly.

    Pick one. Not four — one. Give it the metric. Check the metric monthly. That’s the entire methodology of the 15%.

    The human gate

    One more thing the 15% understand, and it’s the part the vendors skip: the human signs off. In restoration, a wrong dispatch sends a crew to the wrong loss. A bad estimate becomes a bad contract. An AI that drafts and a human who approves is a system; an AI that sends is a liability with a login.

    This isn’t anti-AI caution — it’s the reason the ROI is clear for these shops instead of arguable. When a human gates the output, the failures get caught before they cost money, and the metric stays clean. “AI drafted 40 estimates, our estimator approved 38, turnaround dropped from 48 hours to 6” — that’s a sentence you can take to your accountant. “The AI handles our estimates now” is a sentence you take to your lawyer.

    The question to ask before you buy anything

    The next AI vendor who walks into your office — or the next renewal notice for the tool you already bought — gets one question: what’s the metric, and what was it before?

    If they can name it — captured after-hours jobs, dispatch minutes, documentation hours, estimate turnaround — and they can tell you what it was last quarter, you’re talking to someone selling the 15%. If they talk about transformation, empowerment, and the future of the trades, you’re talking to someone selling the 62%.

    The technology isn’t the gamble. An unguided tool with no job description is the gamble. Give it one job, one number, and a human with a red pen — and join the 15% who can prove it paid.


    Related: Zero SEO value for restoration contractors.

    Sources: ServiceTitan, 2026 Commercial State of the Trades report (press release, September 24, 2026; survey of 1,020 commercial contractors, surveyed July 2026).

    Caveats, stated plainly: ServiceTitan sells AI software to the trades — they sell the remedy this research points at. The findings are self-reported survey data, not audited financials. The sample is commercial MEP contractors, not restoration specifically; the restoration mapping above is informed operator inference, flagged as such. The survey doesn’t profile the 15% directly — the “one workflow, one metric” read is my inference from where respondents said value concentrates, not a reported finding.

    Researched and drafted by Glint, Will Tygart’s AI collaborator. Every statistic above is traceable to the ServiceTitan release.


    Want this applied to your shop? Tygart Media runs focused AI-search and local AEO sprints for contractors — audit first, then a tight fix list. Talk to us.

  • Job Posting Schema for Restoration Shops: How Google Reads a Vacancy

    Job Posting Schema for Restoration Shops: How Google Reads a Vacancy

    Last verified: October 2, 2026 against Google’s Job posting structured data (docs last updated September 8, 2026) and AIOSEO’s 4.9.9 announcement.

    Direct answer: JobPosting schema is structured data that labels a single open role — title, employer, work location, description, posted date — so Google can treat the page as a vacancy instead of a brochure. Done correctly, the listing becomes eligible for Google for Jobs. Eligibility is not placement. Google still decides. The markup must match what a candidate can read on the page.

    Tech documenting a water loss on a tablet
    A careers page on your domain is the object Google can attach JobPosting schema to. The board is optional.

    Trigger for this desk: All in One SEO emailed Tygart Media on September 25, 2026 that Job Posting schema (and Event schema) now ships on every paid AIOSEO plan starting with Basic, as of AIOSEO 4.9.9. That is a product-access change, not a ranking promise. tygartmedia.com runs Rank Math. The schema type is the same either way. The plugin is a generator. Google’s Job posting structured data spec (docs last updated September 8, 2026) is the rulebook.

    Why a restoration shop should care

    Related: Schema Markup for AI Search: The New Meta Description · Your Google Profile Is Your New Front Door

    Most restoration companies hire the way they market: on someone else’s board. Indeed, Facebook, a text to a former tech. That works until storm season, and then the shop needs a water tech in Everett, a project manager in Lynnwood, or an estimator who already knows Snohomish County adjusters. If the only public copy of the role lives on a job board, Google indexes the board. Your domain does not own the vacancy.

    A careers page on your site is the durable object. JobPosting schema is the label on that object. Answer engines and Google for Jobs both prefer a page that states the role in plain sentences and then repeats the same facts in JSON-LD. That is AEO and GEO in one hang: the page answers “who is hiring water mitigation technicians in Everett, WA,” and the markup gives the city, employer, and dates without forcing the model to guess.

    What Google requires

    Google’s required JobPosting properties, from Search Central:

    • title — the job title only. “Water Mitigation Technician,” not “Water Mitigation Technician — $28/hr — Everett — Apply Now!!!”
    • description — the full description in HTML. Duties, qualifications, hours, education, experience. A teaser fails.
    • hiringOrganization — the company, not the branch nickname. Name plus a sameAs URL to the official site.
    • jobLocation — where the person reports. PostalAddress with addressCountry. For a 100% remote role, use jobLocationType TELECOMMUTE plus applicantLocationRequirements instead.
    • datePosted — original post date in ISO 8601. Do not refresh it to fake newness.

    Recommended properties that matter for a restoration hire: validThrough (when the listing dies), employmentType (FULL_TIME, PART_TIME, CONTRACTOR, TEMPORARY, PER_DIEM), baseSalary as a MonetaryAmount with currency and unit (HOUR / YEAR), and identifier so you do not duplicate the same role across reprints.

    AIOSEO’s walkthrough (updated August 21, 2026) maps those fields into a Schema Generator: title, description, employment type, location, hiring organization, salary, requirements, publish date, expiration date. Rank Math exposes the same JobPosting type. Fill the fields from the visible page. Do not invent a salary in schema that is missing on the page.

    GEO: mark the city the truck leaves from

    Local service hiring is geographic. A candidate searching “water damage technician jobs Everett WA” or “IICRC tech hiring Lynnwood” is not looking at a national career hub. Put the reporting city in the visible copy and in jobLocation.addressLocality / addressRegion / postalCode / addressCountry.

    Worked example for a shop that stages out of Everett and runs the Lynnwood–Mukilteo–Mill Creek pack:

    • Title on the page and in schema: Water Mitigation Technician
    • hiringOrganization.name: the legal company name, not “Everett Crew”
    • jobLocation: Everett, WA, United States, with the real street if that is where they report
    • description: names the pack — Everett, Lynnwood, Mukilteo, Mill Creek — as service area, not as four fake job locations
    • employmentType: FULL_TIME or PER_DIEM, whichever is true
    • validThrough: a real close date, then take the page down or set the date in the past when the seat is filled

    Do not stamp four JobPosting graphs on one page for four cities unless there are four distinct open seats. Google wants one job per leaf URL. A list page of “all openings” is the wrong surface.

    AEO: write the vacancy so an engine can quote it

    Schema does not rescue thin copy. Open the careers page with the answer a model can lift:

    We are hiring a full-time water mitigation technician based in Everett, Washington. The role reports to our Everett shop and runs losses across Snohomish County. Pay is listed on this page. Apply on this page.

    Then the body: first-day duties, IICRC or in-house training, on-call expectations, what “storm mode” means, whether the truck is assigned. That paragraph is the description field. If ChatGPT or Gemini is asked “who is hiring restoration technicians near Everett,” the engine needs a quotable sentence plus an organization it can attach to a maps entity. JobPosting is the attachment point. The sentence still has to exist in public HTML.

    How to hang it in WordPress

    1. Create one WordPress post or page per open seat. Slug like /careers/water-mitigation-technician-everett/.
    2. Write the full vacancy on the page first. Salary, city, dates, how to apply.
    3. In Rank Math (this site) or AIOSEO Schema Generator (if that is the client stack), add schema type JobPosting. Map every field to visible text.
    4. Validate with Google’s Rich Results Test. Fix errors before you call it done.
    5. When the seat fills: set validThrough to a past date, or 404/410 the URL. Do not leave a live JobPosting on a closed role.

    AIOSEO 4.9.9 made that generator available on Basic instead of reserving it for higher tiers. If a client already pays for AIOSEO, they do not need an upgrade to mark up jobs. If they are on Rank Math, they already had the type. Do not switch plugins to chase a newsletter.

    What gets a listing dropped

    • Markup on a jobs index that lists many roles
    • Title or salary in schema that the page does not show
    • Expired jobs still marked active
    • No way to apply on the page
    • jobLocation missing addressCountry, or a “remote” job that is not actually remote
    • Keyword stuffing in the title (“#1 BEST WATER TECH JOBS SEATTLE EVERETT TACOMA”)

    Google can issue a manual action for job spam. Fake seats used as lead magnets are not a grey area. If you are not hiring, do not hang JobPosting.

    The line to remember

    A careers page without JobPosting is a flyer. JobPosting without a real, dated, city-true vacancy is spam. Host the seat on your domain, mark the five required fields, expire it when the truck is staffed, and let Google decide whether it belongs in the job experience.

    FAQ

    Q: Does JobPosting schema guarantee a listing in Google for Jobs?
    A: No. It makes a qualifying page eligible. Google still applies content and spam policies. The official spec is explicit on that point.

    Q: We only hire on Indeed. Should we still put jobs on our site?
    A: If you want the vacancy attached to your entity — maps profile, site, AI answers — yes. The board can stay as an apply path. The leaf page on your domain is what you can mark up.

    Q: Can one page cover Everett, Tacoma, and Belfair?
    A: One page can describe a service area. Schema jobLocation should be the report-to city. Separate open seats in separate cities need separate URLs.

    Q: Is this an AIOSEO-only feature?
    A: No. AIOSEO expanded plan access in 4.9.9 (announced July 13, 2026). Rank Math and hand-written JSON-LD can emit the same type. Use the generator you already pay for.

    Q: What if we do not publish pay?
    A: baseSalary is recommended, not required. Do not invent a number in JSON-LD. Leave it out until the page states pay.

  • The Consistency Dividend

    The Consistency Dividend

    “The highest-ROI marketing work is also the most boring. That’s not a coincidence.”

    Name. Address. Phone. Identical everywhere. That’s the whole piece, and it’s worth more than the last three marketing tactics you tried combined — because nobody does it, because it’s boring, and boring is exactly where the edge lives.

    The witnesses

    Your business doesn’t exist in one place. It exists in dozens, and each one is a witness testifying about who you are and where to find you.

    The Google profile. The website footer. Yelp, Facebook, Angi, the BBB. The directories you claimed in 2017 and forgot. The truck door. The invoice template. The email signature. Every one of them says your name, your address, your phone number — or it says something close, which is worse.

    Nobody audits the witnesses. That’s the problem, and the opportunity.

    The leaks

    Here’s what the witnesses are saying right now, on profiles all over town:

    “123 Main St” on Google, “123 Main Street” on Yelp, “123 Main St Suite B” on Facebook — three addresses for one door. The old cell number still on the Angi listing from before the voice line. The suite number on the website, missing everywhere else. The Facebook page from 2016 with the previous address, still ranking, still confusing people.

    Each mismatch is small. Together they’re a credibility leak. The homeowner comparing two contractors doesn’t think “NAP inconsistency” — they think “something feels off about this one,” and they can’t say why. The search engine doesn’t think in words at all — it just has less confidence that all these listings are the same business, and confidence is the currency.

    Small leaks, everywhere, all the time. That’s what boring neglect looks like.

    A fanned stack of identical blank cream business cards on a wooden desk

    The dividend

    Now flip it. Every place that agrees is a vote.

    Same name, same address, same phone — on the profile, the site, the directories, the truck, the invoice. Each matching witness raises confidence: the human’s (“these people have their act together”) and the machine’s (every corroborating listing makes the entity clearer). Trust isn’t built in one place. It’s the sum of a hundred small agreements.

    That’s the dividend: not a spike, a yield. It pays a little every day, in every search, in every comparison — the quiet background hum of a business that agrees with itself. You don’t notice it working. You notice when it’s missing.

    The audit

    The work is unglamorous, which is why I’m spelling it out:

    Write down the canonical version — one name, one address format, one phone number. Not the pretty version, the exact version: St or Street, suite or no suite, which number. Then list every witness: every profile, every directory, the site, the truck, the invoices, the signatures. Then fix every mismatch, one by one, until they all testify the same.

    Then maintain it. New directory? Canonical version goes in. New truck? Canonical version on the door. New phone system? Every witness gets updated the same week, not “when we get around to it.”

    It’s an afternoon of tedium, twice a year. That’s the whole price.

    An orderly row of wooden file drawers with blank brass label plates

    The boring moat

    Here’s why this is a moat and not just hygiene: your competitors won’t do it.

    Not because they’re lazy — because it’s boring, and boring doesn’t feel like marketing. Marketing feels like a new website, a new ad campaign, a new something. Nobody gets excited about making the suite number match in fourteen places. So nobody does it. The field stays sloppy, and the one business that agrees with itself everywhere stands out without spending a dollar.

    Every real edge I’ve ever seen looked boring from the outside. This one just happens to look boring from the inside too.

    The close

    Name. Address. Phone. Identical everywhere.

    Boring is the moat. Consistency is the dividend. And the businesses collecting it are the ones whose witnesses all tell the same story — the story of a business that has its act together, down to the suite number.

  • Teach What You Know, Sell What You Do

    Teach What You Know, Sell What You Do

    “The best marketing a contractor can do is a lesson.”

    It’s 11pm. There’s water where it shouldn’t be, and a homeowner is searching “is this mold dangerous” with one thumb while the other holds a flashlight. Whoever taught that lesson — in plain words, on a page that reads like a human wrote it — is getting the call in the morning.

    Not the contractor with the biggest ad budget. The one who taught.

    The 11pm search

    Every job starts as a question. Not “who should I hire” — that’s the last question. The first ones are fear questions: is this dangerous, is this urgent, did I cause this, what happens if I wait until Monday.

    The contractor who answers those questions in public owns the beginning of the job. By the time the homeowner is comparing bids, the teacher is already the trusted one — the others are strangers with prices. Trust compounds faster than discounts ever will.

    Teaching doesn’t give away the trade

    The objection is always the same: “if I teach them, they’ll do it themselves.”

    They won’t. Nobody reads a post about flood cuts and then goes and does their own mitigation. What the lesson actually does is the opposite — it shows how much there is to know. The homeowner reads three paragraphs about moisture mapping and thinks “I had no idea it was this involved,” and that thought is worth more than any ad. The lesson doesn’t create DIYers. It creates respect for the trade, and respect books jobs.

    You can’t give away what takes ten thousand hours to learn. You can only prove you learned it.

    An open notebook of hand-drawn sketches on a workbench surrounded by tools

    The job site is the classroom

    Here’s the part nobody believes until they try it: every single job has three lessons in it.

    The moisture meter photo — what the number means and why the wall that looks dry isn’t. The flood cut — why it stops exactly there, and what happens when it doesn’t. The thing the homeowner did that made it worse — the fan pointed at the wrong wall, the bleach on the porous surface, the week of waiting. Each one is a lesson someone is searching for tonight.

    You don’t need a content calendar. You need a habit: finish the job, teach one thing. The classroom is wherever the work happened.

    The cadence

    One job, one lesson. That’s the whole system.

    Not three posts a week — that’s a marketing department, and you don’t have one. One lesson per job, written the way you’d explain it leaning on the tailgate. A photo from the site, a few plain paragraphs, the thing you wish every homeowner knew before they called. Fifteen minutes, while the job is still fresh enough to teach honestly.

    Miss a week and nothing breaks. The lessons don’t expire — a flood cut works the same in 2029. The only cadence that matters is: never let a good lesson die in the truck.

    A flashlight beam revealing water-stained framing inside an opened wall cavity

    The compound

    Lessons stack. That’s the whole game.

    Ten lessons is a resource. Fifty is a library. A hundred is the site homeowners find at 11pm, the one the search engines cite, the one the AI answers quote when someone asks what’s happening inside their wall. Teachers get cited. Teachers get called. Teachers get trusted before the bid ever goes out.

    And every lesson is a neuron in the knowledge base — yours first. The contractor who teaches for a year doesn’t just have better marketing. He has a better-organized head: the trade, distilled, searchable, in his own words.

    The close

    Teach what you know. Sell what you do.

    The lesson is the marketing; the job is the product. Every job site is a classroom, every fearful 11pm search is a student, and the contractor who teaches is the one who gets the call in the morning.

    Nobody ever hired the ad. They hired the teacher.

  • Your Google Profile Is Your New Front Door

    Your Google Profile Is Your New Front Door

    “Nobody visits your website first. They meet your front door.”

    Search the trade plus the town and look at what comes up before anything with your URL on it: the business profile. The hours, the photos, the stars, the questions, the call button. That’s the first impression, and for most customers it’s the only one — they never walk past the door into the house.

    Your website is the house. The profile is the front door. Nobody’s impressed by the house if the door is boarded up.

    The door inventory

    Walk up to your own front door like a stranger and read what’s on it:

    The hours — including the holiday hours, the ones that are wrong on half the profiles in America right now. The photos — the truck, the crew, the work, or a gray empty storefront from 2019. The reviews — stars, words, and whether anyone from the business ever answered back. The questions — asked by strangers, answered by strangers, when nobody from the business is home. The posts — the weekly update slot, empty since the profile was claimed. And the two big brass buttons: call, and directions.

    That’s the door. Every customer reads it before they knock.

    The untended door

    Here’s what most front doors look like: hours that lie on holidays. Photos older than the crew in them. A Q&A section where a stranger asked “do you do water damage?” eight months ago and another stranger answered “idk.” No posts — the business has done a hundred jobs since the profile went up and the door shows none of them. Reviews sitting unanswered, the digital equivalent of mail piling up in the slot.

    And the doorbell — the call button — still works. It rings. Right into the voice line, right into the tuition piece. The door and the phone are the same system: the profile is where they decide to knock, the line is what answers.

    An untended door doesn’t just lose the knock. It sends the customer to the next door on the street — the competitor whose hours are right and whose photos are from this year.

    A finger about to press an old polished brass doorbell on a wooden door

    Tending the door

    The good news: tending a front door is a fifteen-minute weekly ritual, not a project.

    Fresh photos — the actual truck, the actual crew, the actual work from this month. A door with fresh photos says “we’re alive in here.” Check the hours — especially before holidays, the highest-traffic lying season. Work the Q&A — seed the questions customers actually ask, answer them in your own voice, so strangers don’t do it for you. One post a week — the job you finished, the storm you worked, the crew milestone. It’s the shop window; put something in it. Answer the reviews — every one, but especially the good ones, because the response is the business talking back through the door.

    Fifteen minutes. The highest-traffic page in the business, tended.

    The compound

    Here’s what makes the door different from every other marketing chore: it compounds and it doesn’t decay.

    A post you write stays up. A question you answer stays answered — every future stranger with the same question reads your answer instead of a stranger’s guess. A photo you add joins the set. Reviews you respond to stack into a record of a business that talks back. Nothing you do to the door un-does itself. It’s all permanent, all cumulative, all working while you sleep.

    Most marketing is rent — stop paying, it stops working. The front door is owned. Every fifteen minutes you spend on it is still there next year.

    A tended shop doorstep with a potted plant in warm golden-hour light

    The close

    Your website is the house. Beautiful, expensive, and visited second — if ever.

    The profile is the front door. It’s what they see from the street, it’s where they decide, and the doorbell on it rings straight into your line. Tend the door. Sweep the step. Put something alive in the window. Answer when they knock.

    Nobody ever hired the house. They hired the door that looked like somebody was home.

  • Write It Down or It Didn’t Happen

    Write It Down or It Didn’t Happen

    “I don’t publish to be read. I publish to remember.”

    That sounds backwards until you’ve watched a Tuesday fade. The connection, the insight, the reason you were doing the thing — gone by Friday, and all that’s left is the bill arriving on schedule to remind you of the cost without any of the cause.

    So I write it down. And then I publish it. Those are two different acts, and they do two different jobs.

    The fading

    Here’s the mechanics of forgetting, and it’s not a character flaw — it’s just how the hardware works.

    The bill arrives every month: exact, itemized, impossible to ignore. The Tuesday arrives once: a real conversation, a real connection, the moment the whole system justified itself — and then it’s a memory, and memories are lossy. Every retelling compresses. Every month thins it out. Within a quarter, you’re staring at an invoice wondering why you’re paying for any of this, and the answer is a Tuesday you can barely picture anymore.

    The written page doesn’t fade. It sits there, exactly as true as the day you meant it, waiting for the morning you need it most. That’s not content. That’s a rescue line thrown to your future self.

    The site as a second brain

    Every article is a neuron.

    The arms column taught me my own pricing — I didn’t fully believe the per-minute lie was a lie until I’d written the field test. The tuition piece taught me my own why — I was forgetting it in real time, and the draft caught it mid-fall. I didn’t write those pieces because I knew those things. I know those things because I wrote those pieces.

    That’s the direction everyone gets backwards. Writing isn’t the record of thinking. Writing is the thinking. The draft argues with you. Halfway through you discover the thing you actually believe, which is never quite the thing you sat down to say.

    A site with a hundred of those is a hundred neurons, wired together, searchable, citable — by me first, by everyone else second. It’s not a blog. It’s the outside of my head.

    An infinite library corridor with towering bookshelves stretching into golden light

    The receipts

    There’s a second job the published page does, and it’s for a different audience: proof.

    Not proof that I’m right — proof that I was there, thinking it, when I thought it. Dated, timestamped, in public. For the future partner doing diligence. For the future auditor asking “what did you actually believe back then.” For the future me, who will absolutely try to rewrite history about what I knew and when.

    Memory edits. The published page doesn’t. That’s what receipts are: memory with a timestamp that no one — including me — gets to revise.

    The loop

    Here’s the whole machine, and it’s been running for years before I had a name for it.

    I live — the calls, the jobs, the Tuesdays. I write — the draft that argues with me until the real belief surfaces. I publish — the neuron goes up, dated and public. And then it feeds back: the site becomes the thing I search, the thing I cite, the thing that reminds me what I knew. My Facebook history, my LinkedIn, my X threads — those are the inputs, the raw soul-data. The articles are the outputs, the refined version. The loop runs: live, write, publish, remember, understand yourself a little better than last quarter.

    Most people publish to be perceived. I publish to perceive — myself, clearly, before the fading gets it.

    A tall stack of printed pages beside a glowing laptop on a desk at night

    The close

    Write it down or it didn’t happen.

    Publish it or you’ll forget you knew it. The page doesn’t just hold the thought — it holds the version of you who thought it. And on the mornings when the bill arrives and the Tuesday is gone, that version of you is the only one who remembers why any of this was worth doing.

    He wrote it down. That’s why.

  • The Junk Calls Are the Tuition

    The Junk Calls Are the Tuition

    “Most of the calls are garbage. Listing bots, spam, junk — and I’m paying for every one of them. But all it takes is one. One real person, one real conversation, and it pays for all of them.”

    That’s the whole piece. But it took me a year of phone bills to learn it, and about five minutes of forgetting it, so I’m writing it down.

    The tuition frame

    Every system has tuition. Ad spend has click fraud. Email has spam filters and the good leads that land in them. The voice line has junk calls.

    Tuition isn’t a scam — it’s the price of the classroom. The question was never whether I’d pay it. The question was whether I’d remember what the classroom was for.

    What the junk actually costs

    Here’s the part that stings, and it’s straight from the arms column: the bill doesn’t care whether the call mattered.

    The listing bot that calls to sell me a listing. The robocall about my car’s warranty. The silence. Every one of them spins up the model, opens the carrier leg, records the nothing, transcribes the nothing. The arms fire either way. I pay for the whole stack to handle a call that never existed.

    Multiply that by a month and the tuition line on the invoice is real. I’m not going to pretend it isn’t.

    A glass jar of dull coins with one single coin glowing gold among them

    The math of the one

    But here’s the other column, the one the invoice doesn’t print.

    One call. A real person, a real problem, water where it shouldn’t be. They talked to the line instead of bouncing to the next listing. Somebody answered — well, something answered — and it sounded like a human who gave a damn, and by the end there was a name, an address, and a job on the calendar.

    One of those pays for months of junk. Not close — completely. The asymmetry is so lopsided it looks like a rounding error until you run the year.

    The junk calls cost arms. The one call buys the whole armory.

    Why the why fades

    The bill arrives every month. The connection was a Tuesday.

    That’s the whole problem. The tuition is invoiced on schedule; the reason is a memory. And memories fade faster than bills do. So every few months I catch myself staring at the junk-call line and thinking “why am I paying for this” — and the answer is always the same Tuesday I forgot.

    Systems don’t run on memory. They run on what’s written down. So this is me writing it down: the junk is the tuition, the one call is the classroom, and the day I forget that is the day I start optimizing the wrong thing.

    A single warmly lit open doorway at the end of a long dark hallway

    The filter question

    Notice what the answer isn’t. It isn’t “block the junk.”

    A filter aggressive enough to stop every bot is aggressive enough to stop a human — the tired homeowner who mumbles, the bad connection, the caller who sounds like a robocall for the first four seconds because they’re reading the address off a piece of paper. The door has to stay open. That’s the entire point of the door.

    The right question isn’t how to stop the junk. It’s how cheap the junk can get while the door stays wide open: faster hangup detection, quicker routing, less model time burned on the obviously-empty calls. That’s harness work — making the tuition cheaper, not pretending school is free.

    The close

    The junk calls are the tuition. Pay it gladly.

    Just don’t forget what the classroom is for. It’s for the one. It’s always been for the one.

  • The Arms Column, Field-Tested

    The Arms Column, Field-Tested

    “We said you’re not buying minutes — you’re buying arms. Then the calls started flowing. Here’s what the bill actually taught us.”

    A while back I argued that voice-AI pricing is a lie: the per-minute number on the pricing page isn’t the product. The product is a stack of arms — the voice intelligence, the carrier connection, the infrastructure around them — and the per-minute price is just the costume they wear.

    That was the theory. This is the field test.

    What the bill actually says

    Run a real week of calls and read the invoice the way an owner reads it — not the headline rate, the total. The per-minute number is almost never the biggest line. The arms are.

    The voice model doing the talking. The carrier moving the audio. The platform orchestrating the whole thing — the number, the recording, the transcript, the handoff. Each arm bills its own way, on its own meter, and the “per minute” quote only ever described one of them.

    Nobody lied to you. They just priced the costume and shipped the wardrobe.

    A bundled cable fanning out into many separate colored wires

    The concurrency math nobody shows you

    Here’s what the field test really exposes: minutes are linear, arms are not.

    Ten simultaneous calls isn’t ten times the per-minute rate in value — it’s ten arms, all live at once. The pricing page shows you a single call’s minute. Your Monday morning shows you ten calls overlapping, each holding its own model session, its own carrier leg, its own recording pipeline open.

    The vendor priced the minute. You bought the rush hour. Those are different products, and only one of them shows up when the phones light up.

    You pay for arms even when the call goes nowhere

    The wrong number. The three-second hangup. The caller who wanted the pizza place. The silence where someone pocket-dialed you.

    Minutes barely moved. The arms all fired anyway — the model spun up, the carrier connected, the platform recorded forty seconds of nothing and transcribed it faithfully. You paid for the whole stack to handle a call that never existed.

    This is the line the per-minute lie can’t survive: the bill doesn’t care whether the call mattered. The arms do the work either way. Price the arms, or the junk calls price you.

    The only math that matters

    Stop dividing by minutes. Start dividing by outcomes.

    Take a real week: total voice bill, all arms included, divided by minutes — that’s the advertised number, and it’s trivia. Now divide the same total by resolved calls. Then by booked jobs. That last number is the only one that touches revenue, and no vendor puts it on the pricing page because no vendor controls it — you do, with your harness.

    A vendor quoting two cents a minute against a vendor quoting five is a meaningless comparison until you know whose stack resolves the call. The cheap minute that books nothing is the most expensive minute you’ve ever bought.

    A headset resting on a desk next to a glowing phone with blurred charts behind

    What to ask a vendor now

    After the field test, there are three questions, and a vendor’s answers tell you everything:

    Break the bill into arms. What’s the model cost, the carrier cost, the platform cost — separately? If they can’t or won’t, you’re buying a bundle, and bundles hide margin.

    What does my rush hour cost? Not a minute — my Monday at 8 AM, ten calls deep. If the answer is “the same per-minute rate,” they haven’t thought about it, which means you will.

    What do I pay for the call that goes nowhere? The hangup, the wrong number, the silence. If everything bills the same whether the call mattered or not, the arms are priced — the minute is just the label.

    The close

    Minutes were never the product. The product is an answered call that ends in a booked job — and that’s built from arms, priced in arms, and won or lost in the harness around them.

    The pricing page will keep selling minutes. Let it. You know what you’re buying now.

    Buy the arms. Price the outcomes. Own the harness that turns one into the other.

  • The Phone Is the Office

    The Phone Is the Office

    “The phone is the office.”

    Not an app. Not a dashboard. Not a portal. The thing already in everyone’s pocket, already charged, already answered.

    The decision

    When it came time to pick the interface — the way humans would actually touch the system — the candidates were an app, a chat platform, and the phone. Voice in, SMS out.

    The phone won, and it wasn’t close.

    Every contractor, every tech, every homeowner, every adjuster already has one. Nobody needs to download anything, learn anything, remember a password, or change a habit. The interface is the thing they were already holding.

    Why apps lose

    Every app is a behavior change wearing a friendly icon. Download it, sign in, learn the UI, grant the permissions, remember to open it. Each step loses half the people you started with — and the half you lose is always the half you needed most: the busy tech, the stressed homeowner, the adjuster with forty files.

    An app can do more. That’s the pitch, and it’s true, and it’s irrelevant. Reach beats richness. The best interface isn’t the most capable one — it’s the one that’s already open.

    Why the platform lost

    The chat platform was tempting — everyone’s already there, the tooling is good. But it’s someone else’s workspace, someone else’s rules, someone else’s pricing page. You build your office on a platform and you’ve got a landlord again — the same sharecropping problem as the rented harness, one layer up.

    The phone is nobody’s platform. Or everybody’s, which amounts to the same thing. No terms of service can take your phone number’s habits away. No pricing change makes people stop answering calls.

    What it means for the office

    The dispatcher doesn’t learn software. They talk.

    The tech doesn’t open a ticket. They text a photo of the meter readings from the driveway.

    The homeowner doesn’t download a portal, create an account, and verify their email to check on their job. They call the number they already have, and a voice that knows the job answers.

    Zero install. Zero behavior change. Zero training. That’s not a feature list — that’s the whole strategy.

    A contractor in a work jacket talking on a phone at a job site

    The glass and the system

    Here’s the part people miss: the phone is the glass, not the system.

    The harness — the routing, the records, the follow-up timing, the judgment — stays the system of record, owned outright. The phone is just how humans touch it. Glass is swappable; the system underneath is yours. If the phone vanished tomorrow, the harness would still know every job, every commitment, every next step.

    That’s the pairing: harness-first underneath, phone-first on top. Own the operation, meet people where they already are.

    Work-worn hands texting on a smartphone next to work gloves and a tape measure

    The objection

    “But a real system needs a real interface.” It has one. It’s the oldest, most-tested, most-universal interface in human history: you speak, it listens; you text, it remembers.

    Fancy is a tax on adoption. Every feature an app adds beyond call-and-text is a feature someone has to learn and most people won’t. The office that runs on the phone doesn’t have a learning curve — it has a dial tone.

    The close

    The office isn’t a place anymore. It’s a phone number that answers, a text thread that remembers, a voice that knows the job.

    Build the system. Own the harness. And let people reach it through the thing they’ve been reaching for their whole lives.

    The phone is the office.

  • Harness-First, Contractor Edition

    Harness-First, Contractor Edition

    “Own the harness. Rent the models.”

    In an AI lab, that’s architecture advice. In a restoration company’s office, it’s a survival rule. Here’s the contractor’s edition.

    The trap

    Most contractors buying AI right now are buying someone else’s harness. The tool owns the workflow, the prompts, the data flow, the follow-up timing — you rent the whole thing, top to bottom. It feels like buying software. It’s actually sharecropping.

    When the tool changes its pricing, kills a feature, or shuts down, your process dies with it. You didn’t buy a capability. You rented one, and the landlord just sold the building.

    What the harness is

    The harness is the workflow you own: how a lead gets answered, how a job gets documented, how a review gets asked for, how an estimate gets followed up. The prompts, the routing rules, the checks, the escalation to a human, the integrations between systems.

    The model is the engine. The harness is the truck. Engines get swapped; the truck is yours.

    Concretely: the harness is a document — written in your words — that says “when X happens, we do Y, then Z, and a human checks W.” Any model can execute it. No model owns it.

    What you rent

    The model. GPT, Claude, Grok, whatever’s best this quarter — swappable commodities. Today’s best model is next year’s legacy; that’s not cynicism, it’s the release cadence.

    If your process depends on a specific model’s quirks — the exact phrasing it likes, the feature only it has — you built on sand. The harness-first contractor can swap the engine on a Tuesday and the office doesn’t notice. The tool-renter files a support ticket and waits.

    A car engine mounted on a stand in a garage, ready to be swapped

    Three harnesses you already need

    The inbound line. The harness: the greeting, the questions it asks, the dispatch rules, the recording disclosure, what happens when it doesn’t know. The voice model underneath? Rented. Swap it when something better ships.

    The estimate follow-up. The harness: the timing (day 2, day 7, day 14), the message sequence, when it escalates to a human call. Any model can write the texts. The sequence is the asset.

    The review ask. The harness: the trigger (job closed, equipment out), the direct link, the prompt for specifics — what happened, where, how fast. The model writes the words; the workflow is yours.

    Notice the pattern: in every case, the durable part is the decisions — the timing, the triggers, the judgment calls. The model supplies sentences. Sentences are cheap.

    How to start

    Pick one workflow. Write down how it should go — the steps, the timing, the human checkpoints. That’s the harness, and it lives in your docs, not in a vendor’s dashboard.

    Then plug a model into it. Any model. When a better one ships, you re-plug. The doc doesn’t change.

    One workflow, owned end to end, beats five rented tools every time. Start with the one that touches money — the lead, the estimate, the invoice.

    An engineering blueprint spread on a wooden desk with a pencil and calipers

    The moat

    Two contractors can rent the same model. They can’t rent your harness — it’s your operations, your judgment, encoded. Your dispatch rules came from your jobs. Your follow-up timing came from your close rates. Your escalation instincts came from your mistakes.

    That’s the durable asset. Models are electricity. Nobody’s moat is “we use electricity.” The moat is what you built with it — and you own the building, not the power company.

    The close

    The AI industry wants you renting the whole stack — their workflow, their prompts, their model, their price increases. Harness-first says no: I’ll rent the intelligence by the hour, but the operation is mine.

    Own the harness. Rent the models. Be the one building still standing when the vendors reshuffle.