diff --git a/docs/fmcsa-trucking-plan.md b/docs/fmcsa-trucking-plan.md new file mode 100644 index 0000000..d278ffb --- /dev/null +++ b/docs/fmcsa-trucking-plan.md @@ -0,0 +1,197 @@ +# FMCSA / Trucking Compliance Services — Product Plan + +## Market Overview + +- **2,077,308** total motor carriers in FMCSA census +- **1,584,234** with email addresses (76%) +- **29,113** with overdue MCS-150 (biennial update >2 years old) and email +- 97% of carriers have fewer than 20 trucks — small operators who can't be bothered with paperwork + +## Phase 1: Compliance Checker + Data Pipeline (DONE) + +### Completed +- [x] `fmcsa_carriers` table (migration 078) +- [x] Socrata data downloader (`scripts/workers/fmcsa_census_downloader.py`) +- [x] FMCSA QCMobile API integration (web key registered) +- [x] API route: `GET /api/v1/dot/lookup?dot=XXXXXX` — 7 compliance checks +- [x] API route: `GET /api/v1/dot/search?name=Acme` — name search +- [x] Frontend: `/tools/dot-compliance-check` — full site chrome, orange theme +- [x] Homepage: orange banner + "Five areas" with Trucking/DOT card +- [x] API access restricted (nginx — public endpoints only, admin blocked) + +### Current Checks (from FMCSA QCMobile API) +| Check | Source | Status | +|-------|--------|--------| +| Operating status (allowed to operate Y/N) | FMCSA API | ✅ Live | +| MCS-150 biennial update (overdue detection) | Census + API | ✅ Live | +| Insurance filing (BIPD, cargo, bond) | FMCSA API | ✅ Live | +| Safety rating (S/C/U) | FMCSA API | ✅ Live | +| Operating authority (common/contract/broker) | FMCSA API | ✅ Live | +| Out-of-service rate vs national average | FMCSA API | ✅ Live | +| Crash record (fatal/injury/total) | FMCSA API | ✅ Live | + +## Phase 2: Additional Compliance Checks + +### UCR (Unified Carrier Registration) — HIGH PRIORITY +- **What:** Annual registration + fee ($59–$7,511 based on fleet size) +- **Who:** All interstate for-hire carriers, brokers, freight forwarders +- **Penalty:** Vehicles placed out of service at roadside inspection +- **Data source:** ucr.gov — no public API, requires scraping individual lookups +- **Implementation:** Playwright scraper to check UCR status by DOT#, add as check in the compliance checker +- **Revenue opportunity:** UCR filing service ($49–99 per carrier per year) + +### IFTA (International Fuel Tax Agreement) — MEDIUM +- **What:** Quarterly fuel tax returns + decals for multi-jurisdiction carriers +- **Who:** Carriers operating in 2+ IFTA jurisdictions +- **Penalty:** Fines + inability to operate in non-base jurisdictions +- **Data source:** State-level — no central database. Would need to ask during intake. +- **Implementation:** Informational check based on carrier operation type (interstate = likely needs IFTA) +- **Revenue opportunity:** IFTA quarterly filing service ($99–199/quarter) + +### IRP (International Registration Plan) — MEDIUM +- **What:** Apportioned plates/registration for multi-state CMV operation +- **Who:** Interstate carriers (vehicles >26,000 lbs or 3+ axles) +- **Data source:** State-level — no central database +- **Implementation:** Informational check based on carrier type +- **Revenue opportunity:** IRP registration service ($149–299) + +### Drug & Alcohol Testing Program — HIGH VALUE +- **What:** DOT-mandated random drug/alcohol testing pool, written policy, MRO, DER +- **Who:** Every carrier with CDL drivers (basically everyone) +- **Penalty:** Driver disqualification, carrier placed out of service, fines up to $16,000/violation +- **Data source:** No public database — self-certified compliance +- **Implementation:** Not a "check" — this is a service offering. Sell enrollment in a testing consortium + written policy + compliance binder. +- **Revenue opportunity:** $199/year per carrier (consortium enrollment + policy) — RECURRING +- **Partners needed:** Third-party testing consortium (e.g., DISA, US Drug Testing Labs, National Drug Screening) + +### New Entrant Safety Audit Prep — MEDIUM VALUE +- **What:** New carriers must pass an FMCSA safety audit within 18 months +- **Who:** Carriers with DOT authority issued in the last 18 months +- **Data source:** SAFER shows `add_date` in census — can filter for recent registrations +- **Implementation:** Filter census for `add_date` within last 18 months, target with audit prep service +- **Revenue opportunity:** Safety audit prep package ($299–499) + +### ELD (Electronic Logging Device) — LOW PRIORITY +- **What:** Must use FMCSA-registered ELD for hours of service tracking +- **Who:** Nearly all CMV operators (exemptions for short-haul, older vehicles) +- **Data source:** FMCSA publishes registered ELD device list, but no per-carrier compliance data +- **Implementation:** Informational only — cannot verify compliance externally +- **Revenue opportunity:** Low — ELD compliance is mostly handled by device vendors + +### Hazmat (HM-232 / PHMSA) — NICHE +- **What:** PHMSA registration + security plan for hazmat carriers +- **Who:** Carriers hauling hazardous materials (hm_flag=true in census) +- **Data source:** PHMSA has lookup, not in FMCSA API. Census has `hm_flag` field. +- **Implementation:** Flag hazmat carriers and offer PHMSA registration check +- **Revenue opportunity:** Hazmat compliance package ($399–799) + +### State-Level Permits & Registrations +| State Filing | States | Data Available | Priority | +|-------------|--------|---------------|----------| +| Overweight/oversize permits | All 50 | State DOT websites | Low — too fragmented | +| State motor carrier tax | ~12 states (CA, OR, NM, NY, KY, etc.) | State comptroller sites | Medium — target high-volume states | +| State DOT registration | Varies | State DMV/DOT systems | Low | +| Unified Carrier Registration (state enforcement) | 41 participating states | ucr.gov | High — covered in UCR above | +| CARB (California Air Resources Board) | CA only | CARB TRU lookup | Medium — big market, one state | +| Oregon weight-mile tax | OR only | ODOT system | Low | +| New York HUT (Highway Use Tax) | NY only | NY DTF system | Low | +| Kentucky KYU / weight distance tax | KY only | KY DOR system | Low | +| New Mexico weight distance tax | NM only | NM MVD system | Low | + +**Recommended state-level focus:** California (CARB) — largest market, real enforcement, public lookup available. + +## Phase 3: Service Catalog & Pricing + +### Services to Add to compliance-orders.ts +| Service | Slug | Price | Gov Fee | Notes | +|---------|------|-------|---------|-------| +| MCS-150 Biennial Update | `mcs150-update` | $79 | $0 | Filed online via SAFER | +| BOC-3 Process Agent Filing | `boc3-filing` | $149 | $0 | Designate PW as process agent in all 50 states | +| UCR Annual Registration | `ucr-registration` | $79 | $59–$7,511 | Fee based on fleet size | +| New Operating Authority (MC#) | `mc-authority` | $499 | $300 | FMCSA application fee | +| DOT Number Registration | `dot-registration` | $149 | $0 | New USDOT number | +| Drug & Alcohol Program Setup | `dot-drug-alcohol` | $199/yr | $0 | Consortium + policy + DER — RECURRING | +| Safety Audit Preparation | `safety-audit-prep` | $399 | $0 | New entrant audit prep package | +| DOT Full Compliance Bundle | `dot-full-compliance` | $599 | varies | MCS-150 + BOC-3 + UCR + D&A program | +| IFTA Quarterly Filing | `ifta-quarterly` | $99/qtr | varies | State fuel tax return | +| Hazmat/PHMSA Registration | `phmsa-registration` | $499 | $0–$2,575 | HM-232 registration | + +### Pricing Strategy +- MCS-150 at $79 is the loss leader / entry point (like CPNI for telecom) +- BOC-3 at $149 is recurring — carrier needs it as long as they operate +- Drug & Alcohol at $199/yr is the real recurring revenue play +- Full bundle at $599 is the upsell for carriers with multiple deficiencies + +## Phase 4: Email Campaign + +### Target Segmentation +| Segment | Count | Criteria | Message | +|---------|-------|----------|---------| +| Severely overdue (4+ years) | ~21,000 | mcs150_parsed < 2022, has email | "Your USDOT may be deactivated" | +| Overdue (2-4 years) | ~8,000 | mcs150_parsed 2022-2024, has email | "MCS-150 biennial update is past due" | +| Due soon (expiring 2026) | ~hundreds of thousands | mcs150_parsed in 2024 | "Your MCS-150 update is coming due" | +| New entrants (first 18 months) | ~50,000 | add_date > 18 months ago | "Safety audit deadline approaching" | +| Hazmat carriers | ~100,000+ | hm_flag=true | "PHMSA registration compliance check" | + +### Campaign Approach +- Same Listmonk infrastructure as FCC campaigns +- Warmup schedule (200/day → ramp up) +- Link to DOT compliance checker with `?dot={DOT#}&email={email}` pre-filled +- Use `@TrackLink` on all CTAs (learned from FCC campaign mistake) +- Free compliance check as the CTA (not direct sell) + +## Phase 5: Automation (Future) + +### Playwright Filing Automation +- MCS-150 updates via SAFER web portal +- UCR registration via ucr.gov +- BOC-3 filing via FMCSA L&I system +- MC authority application via FMCSA URS + +### Recurring Revenue +- Annual UCR registration reminders + filing +- Biennial MCS-150 update reminders + filing +- Drug & alcohol consortium annual renewal +- BOC-3 process agent renewal + +## Technical Architecture + +### Data Flow +``` +Socrata API (census) → fmcsa_carriers table (2M records) + ↓ +FMCSA QCMobile API ← /api/v1/dot/lookup (real-time per carrier) + ↓ + /tools/dot-compliance-check (frontend) + ↓ + Listmonk campaigns (email outreach) + ↓ + Order flow → worker handlers → filing +``` + +### Cron Jobs Needed +- Daily: FMCSA census delta download (Socrata API) +- Weekly: UCR status scrape for flagged carriers +- Monthly: New entrant identification (recent DOT registrations) + +### Database Tables +- `fmcsa_carriers` — census data (migration 078) ✅ +- `fmcsa_compliance_check_log` — search analytics (TBD) +- `dot_compliance_orders` — or reuse `compliance_orders` with new service slugs (TBD) + +## Competitive Landscape + +### Existing DOT compliance service providers +- **DOT Compliance Group** (dotcompliancegroup.com) — full service, unknown pricing +- **J.J. Keller** (jjkeller.com) — established, enterprise-focused, expensive +- **Foley Carrier Services** (foleyservices.com) — insurance + compliance, big players +- **FMCSA Registration** (fmcsaregistration.com) — direct competitor, $149–499 per service +- **Moving Authority** (movingauthority.com) — MC authority specialists +- **DOT Registrations** (dotregistrations.org) — similar pricing model + +### Our Differentiator +- **Free compliance checker tool** — nobody else offers this as a lead magnet +- **AI-powered deficiency detection** at scale (same as FCC model) +- **Email outreach to 1.5M+ carriers** with specific deficiency data +- **Lower pricing** through automation (no manual data entry) +- **Bundled services** (telecom + trucking for carriers that do both)