Skip to main content
Home Pricing Blog

How AI Actually Powers Permitlify (and Where We Refuse to Use It)

Back to Blog
🤖

"AI-powered" has become so meaningless in B2B software that we almost stripped it from our marketing copy last quarter. The honest version of what we do is: we use machine learning aggressively in three places where it provides real lift, and we deliberately stay away from it in three places where it would cause harm. Here is the breakdown.

Where we use AI: classification

The first and most obvious place is classifying permit descriptions into the 22 trade categories you filter on. There is no rules-based system that survives the diversity of how 20,000+ jurisdictions describe the same physical job. We use a cascade of regex patterns, semantic embeddings, and a constrained LLM as a safety net. (We wrote a separate post on the architecture of this classifier — well worth a read if you want the details.)

Where we use AI: lead scoring

The 0–100 score on every permit is a gradient-boosted model trained on closed-loop conversion outcomes from our customers. The features include declared job value, permit type, property type, age of property, property value, owner-occupied vs. rental status, contact data quality, jurisdiction, day of week, and roughly 30 others. The model retrains every two weeks on the previous 90 days of conversion outcomes.

This is not a black box. We expose the top three contributing features for every score so you can see why a permit scored 84 instead of 60. ("High declared value, verified phone number, owner-occupied single-family.") If the explanation does not match what your gut says about the lead, that is a useful signal — sometimes the model is wrong, sometimes you are.

Where we use AI: contact enrichment

City permit records typically include the homeowner's name and address but not always their phone number or email. We append contact information from public-record databases and verify it with deliverability checks. The matching itself uses a small ML model that learns to disambiguate "John Smith at 412 Sycamore" from the seven other John Smiths in the county. Match precision is roughly 91%; we mark the others as "unverified" rather than guessing.

Where we refuse to use AI: writing the call script

Every Permitlify lead comes with a suggested opening line. It is not generated by an LLM. It is hand-written, reviewed by sales-ops, and templated against the permit data. Why? Because LLM-generated outreach in 2026 is a race to the bottom — homeowners can smell synthetic copy from a paragraph away, and contractors who deploy it at scale get their numbers flagged inside a week. The script is the contractor's voice. We are not putting an AI in front of it.

Where we refuse to use AI: outreach automation

For the same reason, we do not auto-dial, auto-text, or auto-email homeowners on your behalf. The integration with Zapier and your CRM lets you build automation if you want to. We will not build the spam pipeline ourselves. Permit data is a competitive advantage precisely because it has not been abused yet. Helping abuse it would burn the goose.

Where we refuse to use AI: pricing the job

We will tell you a permit's declared value. We will not tell you what to bid. Bidding is a craft your business owns and an LLM has no business in. We have had customers ask us to "AI-suggest a quote" based on the permit and we have politely declined. The contractor's pricing instinct is the moat. The data feed is just the prospecting layer.

The TL;DR

AI in Permitlify is for: parsing the messy raw data the cities give us, scoring leads, and finding contact info. AI is not for: writing your sales copy, talking to your homeowners, or pricing your jobs. The boundary is deliberate. If we ever cross it, hold us to this post.

Stop reading about leads — go get them

Start your free trial and have real permit leads in your dashboard tomorrow morning at 6 AM.

Start Free Trial