Permitful

permitful.com

6 technologies

Permitful - image 1

A full-stack SaaS app that helps architects and permit expediters track building permits, milestones and deadlines across every project, and share live progress with clients.

Highlights

  • AI Permit Advisor. Suggests the permits a project needs from its address, type and scope. It runs targeted web searches limited to official .gov sites for the city and the county; the county is worked out from the address using Census data. The model’s answers are restricted to Permitful’s permit catalog, and each suggestion is rated required, likely or possible. Every cited source is a page the search actually returned, so citations can’t be made up.
  • Evaluation harness for the AI. A script runs the real pipeline on sample projects from different kinds of US jurisdictions, from big cities to small towns and unincorporated counties, with expected permits checked against official pages. It scores recall, noise, agency accuracy and citation rate across repeated runs, and reports the search and model cost of each run. I used it to move to a new search provider before Google’s Custom Search API shuts down: the eval showed equal accuracy at a fifth of the search cost.
  • Freemium plan enforced in the database. The free tier (one active project, one Advisor run) is checked in server actions and again in Postgres triggers and row-level security, so the limits hold even against direct API calls. A ledger table with a unique index stops two simultaneous requests from both using the free run. A run that fails or finds nothing is given back automatically.
  • Shareable client dashboards and a live calendar feed. Clients open a read-only project page by link, with no login. A token-scoped Postgres function returns only the fields meant for clients, and tests check that private milestones and notes never leak. A subscribable calendar feed keeps every milestone and permit expiry current in Google, Apple and Outlook Calendar.
  • Permit workflow features. Standard milestone sequences by review type, generated in one click from a start date; a permit status history recorded by database triggers, with editing that keeps the timeline consistent; expiry warnings; private milestones with bulk actions; sortable tables; and a new-user onboarding checklist.
  • Reliable Stripe billing. Webhook handling stays correct when Stripe delivers events out of order or more than once. An account can only have one open checkout at a time, so it can’t be charged twice. A status page waits for activation after payment, so a new subscriber never sees the free plan.
  • Fast marketing site. The marketing pages are prerendered and lightweight. The homepage demos run the app’s real components on demo data instead of screenshots. City-specific SEO pages cite official sources, and pages carry structured data.
  • Growth and analytics. A GA4 funnel from sign-up to purchase, with Consent Mode v2 cookie consent. Server-side conversion events keep ad credit when a user confirms their email in a different browser, and page views have credentials and personal data removed. Activation emails go out on a scheduled job and include one-click unsubscribe.