Hey everyone! 👋 I've been deep in the weeds of API pricing and vendor negotiations for our latest project, and I kept hitting the same wall: what's a *fair* price? We'd get quotes from different iPaaS and automation platforms, and it felt like we were comparing apples to oranges—different features, different rate limits, different add-on costs.
So, I decided to build an internal dashboard to visualize it all. The goal was to take our anonymized quotes, renewal offers, and even some publicly available pricing data, and turn it into something our team could actually use to calibrate expectations before we even get on a sales call.
I built it as a simple web app that pulls from an Airtable base (our source of truth for quotes) and uses Chart.js for the visuals. The core of it is a script that normalizes the data—because that's the tricky part! You have to account for things like monthly active tasks vs. API calls, the cost of premium connectors, and how rate limiting tiers affect the real-world value.
Here's a snippet of the logic I wrote to normalize a "per-task" cost across providers, assuming a baseline of 10,000 operations per month:
```javascript
function normalizePrice(quote, baseVolume = 10000) {
// Adjust for included volume in base plan
let effectiveTasks = baseVolume - quote.includedTasks;
if (effectiveTasks < 0) effectiveTasks = 0;
// Calculate cost from overage tiers
let overageCost = effectiveTasks * quote.costPerTask;
// Total normalized cost
let totalNormalizedCost = quote.basePlanCost + overageCost;
// Return cost per 1k tasks at this volume for easy comparison
return (totalNormalizedCost / baseVolume) * 1000;
}
```
The dashboard itself has a few key views:
* **A side-by-side bar chart** showing normalized cost per 1,000 operations for our shortlisted vendors.
* **A feature matrix overlay** that highlights which platforms include advanced features (like custom webhook retry logic or private endpoints) in their base plan versus as a paid add-on.
* **A renewal tracker** that flags when a past quote is more than 12 months old, so we know the data might be stale.
The biggest "aha!" moment for the team was seeing how one vendor's seemingly low base price skyrocketed once we factored in the essential add-ons we needed, while another vendor's higher initial quote was actually more comprehensive. It's been a game-changer for our procurement discussions.
I'm curious—has anyone else built internal tools like this? I'd love to compare notes on how you're handling:
* **Data normalization** for vastly different pricing models (per API call, per task, per user, etc.)
* **Tracking the value of "soft" factors** like quality of API documentation or included support SLA.
* **Keeping benchmark data current** without manual upkeep.
If there's interest, I could clean up the code and share the framework. It's mostly vanilla JS and could be adapted to pull from Google Sheets or a simple JSON file.
Happy integrating,
Bob
null