RouteReach is a proven, production-grade platform that handles the full daily dispatch workflow — manifest parsing, customer notification, attendance tracking, and workforce reporting. Built in production. Ready to scale.
Every day, last-mile delivery carriers dispatch trucks to homes where nobody answers the door. Re-delivery costs $25–$75 per stop. Costco's carrier network alone handles tens of thousands of deliveries per day across the United States.
Most carriers handle customer communication with personal cell phones, copy-paste from Excel, or not at all. A pre-delivery text confirming the delivery window — sent two hours before the truck arrives — dramatically reduces no-shows, reschedules, and re-delivery costs. The technology to do this well is not hard. Getting it right for this specific workflow is.
Enterprise TMS vendors (DispatchTrack, Route4Me, Descartes) serve large carriers with complex integrations and six-figure contracts. SMB last-mile carriers — 2 to 20 markets, 5 to 50 employees — are too small for enterprise and too operational for consumer-grade tools. RouteReach is purpose-built for them.
Beyond SMS, these carriers are also managing driver attendance on paper or spreadsheets — no integrated tool connects manifest data to workforce tracking. When the daily manifest arrives, a dispatcher manually cross-references it against who showed up, notes absences on a clipboard, and rebuilds that record in a separate sheet (if at all). RouteReach closes both gaps: the same manifest upload that triggers customer notifications also pre-populates the day's attendance record. The workflow that was two separate manual tasks becomes one.
RouteReach gives dispatchers a browser-based tool for the pre-delivery communication workflow. It does one thing well and integrates into the existing operation without requiring process change.
Dispatcher drops the daily manifest PDF. RouteReach parses customer names, phone numbers, and delivery windows by route — no spreadsheet, no copy-paste.
Review the exact message each customer will receive before anything sends. Edit individual messages or toggle routes on/off.
One click sends all selected routes via Twilio (10DLC compliant). Confirmation summary shows delivery status in real time.
Inbound replies sorted by market and flagged by priority — reschedule requests first, then confirmations, unread, and resolved. No missed replies buried in a phone.
Manifest upload automatically pre-populates the day's routes with driver and helper assignments. Managers mark attendance status (present, late, absent, NCNS), handle replacements, and lock the record. No duplicate data entry.
Driver roster builds itself from real manifest data — new names are added automatically on upload. Monthly roster review emails flag drivers inactive for 15+ days, keeping workforce records clean without manual audits.
Every manifest upload feeds attendance. Attendance feeds the roster. The roster feeds workforce reporting. Historical operational data accumulates passively — dispatchers get more value over time without doing anything extra. A carrier who runs daily attendance through RouteReach is not leaving.
RouteReach has been running in production at P2 Last Mile across four markets (Hurricane UT, Gypsum CO, Ukiah CA, Wenatchee WA) with daily operational use. The PDF parser handles real Costco manifest formats including edge cases — consolidated stops, multi-item deliveries, timezone-aware delivery windows. It is not a prototype.
Twilio 10DLC registration, STOP/HELP keyword handling, opt-out registry, Apple iMessage reaction filtering, and signed webhook validation are all implemented and in production. This is the part most teams get wrong. RouteReach gets it right.
Design direction courtesy of Edna Mode, Design Lead.
Operator-first, polished enough to sell. Not consumer-slick, not enterprise-sterile. Confident utility — the tool a dispatcher trusts under pressure. High contrast, information-dense without being cluttered.
Deep navy primary. Amber accent for action states. Clean sans-serif typography. Dark mode capable. Carrier-brandable — each tenant can apply their own identity without losing the underlying system.
"RouteReach names the action, implies the vertical, and works across the sales conversation — with dispatchers, operations managers, and acquirers alike. Clean, ownable, extensible."
Three things make the difference between a P2 internal tool and a product a dispatcher at any carrier trusts from day one:
Technical direction from Meg (Engineering) and Gandalf (Security). Claude Code codebase review completed May 2026.
The codebase is production-grade and above average for a self-built ops tool. The parser, 10DLC compliance, and security logging are legitimately strong. What's needed is the SaaS infrastructure layer — multi-tenancy, cloud deployment, portable auth, and the onboarding experience that lets a carrier set up without our help.
Not SQLite-per-tenant (migration/backup nightmare at scale) and not separate deployments per customer (operationally untenable). Postgres with row-level security enforced at the ORM layer gives proper isolation with a standard operational model.
One Twilio subaccount per carrier. We manage the master account and handle 10DLC compliance. Faster customer onboarding than BYO Twilio — the onboarding speed is the pitch. Large enterprise customers can move to BYO later.
Replaces Cloudflare Access (which is tied to P2's CF account and can't be licensed). Clerk handles JWT issuance, org-scoping, Google OAuth, and MFA. Best developer experience of the options; built-in multi-tenant org model.
Handles persistent volumes well (relevant for any SQLite transition period), simple containerized deployment, good regional distribution. Simpler operational model than AWS for a pre-Series A product.
Attendance and roster data share the tenant_id isolation model from day one. Pricing them separately creates churn risk — a carrier running daily attendance through RouteReach is embedded. Bundle into Growth and Enterprise tiers; treat it as retention infrastructure, not a feature upsell.
The PDF parser is the primary technical moat. It handles Costco's specific manifest format — consolidated stops, multi-item deliveries, timezone-aware windows — with production-hardened edge case handling that took real operational experience to build.
The Costco manifest format is standard across all Costco last-mile contractors. Every carrier in the Costco network uses the same PDFs. The parser works for all of them today.
A second moat is now emerging: the operational data flywheel. As carriers use RouteReach daily, manifest history, attendance records, and roster data accumulate passively. This historical depth — who drove which routes, attendance patterns, coverage history — is operationally valuable and cannot be replicated quickly by a new entrant or a carrier switching tools. The parser gets them in. The data keeps them.
Generalization path: Wait for the second paying customer (who likely uses a different dispatch system). Then extract a ManifestSchema YAML config layer — each manifest format becomes a config file, not a code fork. The library of manifest profiles accumulated over time is what competitors cannot replicate quickly. That library is the real long-term moat.
Security architecture from Gandalf (Security Lead).
| Area | Current State | SaaS Requirement | Risk |
|---|---|---|---|
| Route auth | CF Access-exempt routes rely on tunnel | Token-based auth middleware on every request, CF as defense-in-depth only | High (SaaS) |
| Opt-out enforcement | Relies on Twilio to bounce manual dispatcher replies | App-level opt-out check before every send, manual or bulk — no override | Medium |
| TCPA quiet hours | Not enforced (P2 manages operationally) | 8am–9pm recipient local time enforced or hard-to-disable guardrail with acknowledged bypass | High (SaaS) |
| Secrets management | .env file on Mac Mini | AWS Secrets Manager or equivalent; rotation without downtime | High |
| Tenant data isolation | Single tenant — no isolation needed | RLS enforced at ORM layer; separate Twilio subaccounts per tenant | High |
| Audit log | Partial (security logging exists, not full audit trail) | Immutable log: every send, opt-out, admin action — tenant/user/timestamp. Required for TCPA defense. | Medium |
| MFA | CF Access handles (Google OAuth) | MFA required for tenant admin accounts via Clerk | Medium |
| SOC 2 | Not applicable (single tenant) | Not required pre-acquisition; roadmap commitment expected by serious acquirers | Low (pre-acq) |
Platform enforces: opt-out registry (per tenant), quiet hours (8am–9pm recipient local), audit trail for every send.
Carrier owns: initial consent acquisition (point of sale), accuracy of phone numbers and customer data, dispatcher training.
Key point: In a multi-tenant model, "we rely on Twilio to bounce it" is not defensible. If the platform facilitates opt-out violations, no ToS clause fully shields it. Platform-level enforcement is non-negotiable before onboarding external carriers.
Attendance and roster are bundled into Growth and Enterprise — not sold separately. The manifest-to-attendance connection only delivers value when both are present, and a carrier embedded in both is significantly harder to churn than one using SMS alone.
Messaging margin: +$0.005–$0.01 per message over Twilio passthrough cost. At 100 messages/market/day, this adds $15–$30/market/month in margin with zero variable cost.
$2–4M ARR in a focused vertical with high retention (dispatchers build workflow habits around tools like this), low churn drivers (switching cost is real — different tool, retraining, manifest re-configuration), and a compliance moat (10DLC setup is a genuine barrier for DIY attempts). This is a profitable lifestyle business or an attractive acqui-hire target for a larger logistics software player.
One or two carriers paying $200–400/month is the difference between "interesting project" and "real business." Kirk's existing network in the Costco carrier ecosystem is the fastest path. These don't need to be acquired through marketing — they need to be asked.
SMB last-mile carriers don't find tools through Google or Product Hunt. The sales motion for first customers is:
Demo-first. One data proof point. One story anchor.
Twilio brand and campaign registration for 10DLC takes 2–4 weeks. A customer who signs up and can't send texts for a month will churn before they ever see value.
Mitigation: Build a sandbox mode where new customers can upload manifests and preview parsed messages while waiting for 10DLC approval. They see the product working; they don't churn from waiting. Start the 10DLC registration at signup, not at first send.
Kirk's intent is not to run a SaaS indefinitely. The plan is to build RouteReach to an acquirable state — clean code, external customers, proven revenue — and find the right buyer or licensee. This is a 12–18 month process from today if executed with focus. The expanded platform scope — dispatch operations, attendance tracking, and workforce reporting — broadens the acquirer profile and increases the platform's strategic value, making the 12–18 month timeline an even stronger foundation for an acquisition conversation.
DispatchTrack, Route4Me, Descartes, OptimoRoute. These platforms manage routes but not customer communication. RouteReach brings two things they don't have: the communication layer they're missing, and workforce tracking data — attendance history and driver performance patterns — that are a useful addition to any TMS product suite. Acqui-hire or product integration.
PE-backed software rollup operators targeting last-mile logistics. They want cash-flowing software businesses in defensible niches. RouteReach at $300–500K ARR is a clean acquisition target. The workforce ops data layer (attendance records, NCNS patterns, roster history) is compliance-adjacent and due-diligence friendly — this expands RouteReach's relevance beyond just ARR.
Vertical SaaS built on Twilio is exactly what platforms like Twilio like to highlight, partner with, or acquire. The 10DLC compliance implementation alone is noteworthy.
A large Costco contractor operating at national scale who wants to offer RouteReach to their own subcontractors or white-label it across their network. Kirk's existing relationships are the access point here.
"This is a real product solving a real problem with real, accurate code. It is two engineer-quarters away from being SaaS-ready, and a year of focused sales away from being a healthy lifestyle business — or an acquisition target for the right strategic buyer." — Claude Code review, May 2026
| Milestone | Timeline | What it proves |
|---|---|---|
| Phase A complete — foundation, auth, tenant_id, tests, container | Weeks 1–4 | Codebase is safe to scale. Second carrier can be onboarded without P2 data leaking. |
| First external customer signed — even at pilot pricing | Weeks 2–6 (in parallel) | Product-market fit. Someone other than Kirk values this enough to pay. |
| Phase B complete — Postgres, Twilio subaccounts, cloud deploy, onboarding | Weeks 5–9 | True multi-tenant. Self-serve onboarding works. Ops team can support customers without engineering. |
| Second external customer — ideally different manifest format | Weeks 6–12 | Parser generalization path becomes clear. Product works outside Costco network. |
| Phase C complete — audit trail, API docs, white-label, TCPA enforcement | Weeks 10–13 | Due diligence-ready. Acquisition conversation can begin seriously. |
| Acquisition outreach begins | Month 4–5 | Clean code, 1–2 paying customers, documented revenue. The right buyers will engage. |
| Acquisition close | Month 9–18 | Depends on buyer, process, and market. 12 months is realistic for the right strategic fit. |
This plan requires approximately 12–16 weeks of focused engineering (Meg, directed by Jane, with Claude Code for architectural work) and Kirk's direct involvement in the first 1–2 customer conversations. No one else can open those doors — Kirk's credibility in the carrier network is the go-to-market advantage that no amount of engineering can replace.
Everything else — the build, the coordination, the documentation, the acquisition prep — runs through the team.