Built an Open-Source SMS Dashboard That Twilio Should Have Made
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 - then open-sourced it so everyone can have proper visibility into their SMS infrastructure. Here's what I've learned about SMS infrastructure.
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. This changes that completely.
πΒ Real-time KPIs That Matter
- Total messages sent
- Actual delivery rate percentage
- Messages stuck in queue
- Failed messages with one-click retry
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."
π 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.
Message Configuration
Configure SMS templates with dynamic variables and automatic review platform rotation.
π 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.
Analytics That Drive Decisions
Track performance by dealership, branch, or any custom location parameter.
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, whenever you need it:
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)
Setting It Up in 5 Minutes
Step 1: Click Deploy
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
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
More about me
My aim is to live a balanced and meaningful life, where all areas of my life are in harmony. By living this way, I can be the best version of myself and make a positive difference in the world. Professionally, I focus on the design and implementation of cognitive infrastructure: systems that make complex enterprise data usable through AI-powered tools and human-like interaction.