Built an Open-Source SMS Dashboard That Twilio Should Have Made

Built an Open-Source SMS Dashboard That Twilio Should Have Made

Built an Open-Source SMS Dashboard That Twilio Should Have Made

1M+ Messages Later, Here's What I Learned About SMS Infrastructure

You know that sinking feeling when a customer says "I never got your text" and you have no idea why? That's exactly why I built Twilio SMS Tracker; an open-source dashboard that shows you everything happening with your SMS messages in real-time. After processing over a million messages, here's what I've learned about what businesses actually need.

The Dashboard That Shows Everything

Every business sending SMS faces the same black hole: messages go out, but then what? You're left guessing if they arrived, why they failed, or which locations have problems.

Here's what you can finally see:

Real-time KPIs:

  • Total messages sent (not just "attempted")
  • Actual delivery rate percentage
  • Messages stuck in queue
  • Failed messages with one-click retry

The killer feature? When a message fails, you see the exact Twilio error code. Not "delivery failed" but "Carrier violation 30007 - spam detected" or "Invalid phone number format."

Finally, actionable information.

The Features That Actually Get Used Daily

🔄 One-Click Retry for Failed Messages

Failed messages aren't dead ends anymore:

// Before: Customer calls, you check Twilio logs, manually resend
// Now: Click retry button, done

No support tickets. No manual re-entry. Just click and retry.

📊 Automatic A/B Testing

The system automatically rotates between review platforms:

  • 50% of customers → Google Reviews
  • 50% of customers → Trustpilot

After 10,000 messages, you'll know which platform gets more clicks. No spreadsheets required.

🏢 Location-Based Analytics

Track performance by dealership, branch, or location:

Analytics by Location

Finally answer questions like:

  • Which location has the best review response rate?
  • What time gets the highest engagement?
  • Which branches have delivery problems?

📤 Export Everything to CSV

Your data, your format, no questions asked:

timestamp,phone,status,error_code,dealership,message
2024-01-15 14:23:01,+14155551234,delivered,null,Bay Motors,Review request
2024-01-15 14:23:45,+14155555678,failed,30007,City Auto,Carrier block

The Tech Stack That Just Works

I deliberately chose boring, reliable technology:

Frontend: HTML + JavaScript + Alpine.js (no build step!)
Backend: Node.js + Express + TypeScript
Queue: Bull MQ + Redis (handles failures gracefully)
Database: PostgreSQL (free tier works fine)
SMS: Twilio API
Hosting: Vercel (serverless, scales automatically)

No Docker orchestration. No Kubernetes. No complex deployments. Just code that works.

Setting It Up in 5 Minutes

Step 1: Click Deploy

Deploy with Vercel

Step 2: Add Your Credentials

DATABASE_URL=your_postgres_url      # Get free from Neon.tech
TWILIO_ACCOUNT_SID=ACxxxxx         # Your existing Twilio account
TWILIO_AUTH_TOKEN=xxxxxx           # Your auth token
TWILIO_PHONE_NUMBER=+1234567890    # Your Twilio number

Step 3: Send a Test Message

curl -X POST https://your-app.vercel.app/webhook/transaction-complete \
  -H "x-api-key: your-api-key" \
  -d '{"customer_phone": "+14155551234", "customer_name": "Test User"}'

That's it. You now have production SMS infrastructure.

Real Problems This Solves

"Why did those messages fail yesterday?"

Before: Dig through Twilio logs, guess at patterns Now: Filter by date, see error codes, retry in bulk

"Which branch gets the most reviews?"

Before: Manual tracking in spreadsheets

Now: Built-in analytics dashboard

"The customer says they didn't get it"

Before: Check Twilio, probably can't find it, manually resend Now: Search by phone, see status, click retry

"How much are we spending?"

Before: Twilio console, calculator, estimates Now: Real-time cost tracking per message

The Modular Design

This isn't another platform to migrate to. It's a tool that fits into what you already have:

Your System → Webhook → SMS Tracker → Twilio
                 ↓
          Analytics & Monitoring

Keep your existing setup. Just add visibility.

Why Open Source?

Because infrastructure this critical shouldn't be a mystery. With open source you get:

  • No vendor lock-in - Fork it, modify it, own it
  • Complete transparency - See exactly how messages are processed
  • Community improvements - Users become contributors
  • Free forever - No per-message fees, no seat licenses

Quick Start Commands

# Clone and run locally
git clone https://github.com/rashidazarang/twilio-sms-tracker
cd twilio-sms-tracker
npm install
npm run dev

# Or deploy directly to Vercel
vercel deploy

The Bottom Line

Stop guessing what's happening with your SMS. See it. Fix it. Track it.

This tool exists because every business deserves to know:

  • Which messages actually delivered
  • Why messages fail
  • How to fix problems immediately
  • What drives engagement

It's free. It's open source. It's ready to deploy.

🚀 Deploy Now on GitHub

Stats: 1M+ messages sent • 100+ deployments • 98.7% delivery rate • MIT licensed

Stack: Node.js • TypeScript • Bull MQ • Redis • PostgreSQL • Twilio

Support: GitHub IssuesDocumentation