Overview
Boards is Vapi’s custom analytics dashboard system that enables you to create visual dashboards with real-time insights. Build drag-and-drop dashboards tailored to your teams, use cases, and reporting needs—all through the Vapi Dashboard interface.
Boards allow you to:
Add and configure insights (bar charts, line charts, pie charts, text metrics)
Apply global time range filters and granularity settings
Build queries visually with field selectors and filter builders
Create calculated metrics using formulas
Drag, resize, and position widgets on a responsive grid
When to use Boards
Boards are ideal for:
Sales tracking - Monitor call volume, conversion rates, and booking metrics
Support metrics - Track resolution times, issue categories, and customer satisfaction
Cost monitoring - Analyze spending patterns, cost per call, and budget tracking
Performance analysis - Measure assistant performance, call quality, and efficiency
What you’ll build
A Sales Performance Dashboard that displays:
Total calls and bookings for today
Call volume trends over the past 30 days
Bookings by assistant
Call outcomes distribution
Booking conversion rate (calculated metric)
Prerequisites
Vapi account
Account with Boards access enabled
Call data
Existing call data helps create meaningful visualizations
Step 1: Access Boards
Navigate to the Boards feature in your dashboard.
Log into your Vapi Dashboard at dashboard.vapi.ai
Click Boards in the left sidebar (under the “Reporting” or “Analytics” section)
Your board will be automatically created on first visit
Your board is created automatically when you first access the Boards page.
You’ll see an empty 6-column grid layout where you can add insights.
Step 2: Add your first insights
Start with key performance indicators that show single important numbers.
1 Add Total Calls insight
Click Add Widget or the + button
Select Text widget type
Configure the insight:
Name : “Total Calls Today”
Data Source : Select “Calls”
Metric : Choose “Count”
Field : Select “Call ID”
Time Range : Set to “Last 24 hours”
Click Preview to see the result
Click Add to Board
Drag the insight to your desired position
Resize if needed by dragging the bottom-right corner
The number updates in real-time. Hover over the insight to see additional details.
2 Add Total Bookings insight Repeat the process for a second insight:
Click Add Widget → Text
Configure:
Name : “Total Bookings Today”
Data Source : Calls
Metric : Count of Call ID
Time Range : Last 24 hours
Add a filter to count only successful bookings:
Click Add Filter
Field : Status
Operator : equals (=)
Value : “ended”
Click Add to Board
Position it next to your first insight
Step 3: Create visualizations
Add charts to visualize trends and patterns in your data.
1 Add a bar chart Create a bar chart showing calls by assistant:
Click Add Widget
Select Bar Chart
Configure:
Name : “Calls by Assistant”
Data Source : Calls
Metric : Count of Call ID
Group By : Select “Assistant” from dropdown
Time Range : Last 7 days
Group By Time : Day
Click Preview to see bars showing calls per assistant per day
Customize appearance (optional):
X-axis Label : “Date”
Y-axis Label : “Number of Calls”
Colors : Choose color scheme
Click Add to Board
3 Add a line chart for trends Track call volume over time: 1. Click Add Widget 2. Select Line Chart
3. Configure: - Name : “Call Volume Trend” - Data Source : Calls -
Metric : Count of Call ID - Time Range : Last 30 days - Group By
Time : Day 4. Optional - Add multiple lines: - Click Add Another Metric -
Configure second metric (e.g., “Average Duration”) 5. Click Add to Board
Line charts are ideal for showing trends over time. Use them to identify
patterns and anomalies.
4 Add a pie chart Show distribution of call outcomes:
Click Add Widget
Select Pie Chart
Configure:
Name : “Calls by Status”
Data Source : Calls
Metric : Count of Call ID
Group By : Select “Status”
Time Range : Last 7 days
Click Add to Board
Pie charts don’t have time series grouping. They show distribution across categories only.
Step 4: Apply filters to insights
Filter data to focus on specific segments or conditions.
1 Add filters to an insight Open any insight’s settings and add filters:
Click the ⚙️ (settings) icon on any insight
Click Add Filter button
Configure first filter:
Field : Select “Status” from dropdown
Operator : Choose “equals” (=)
Value : Type or select “ended”
Click Add Another Filter for multiple conditions
Example second filter:
Field : Cost
Operator : Greater than (>)
Value : 0.50
Click Save
Common filter patterns:
Filter by assistant: Assistant ID = <select assistant>
Filter by date range: Started At > <date>
Filter by cost: Cost > <value>
Filter by status: Status = ended
Step 5: Create calculated metrics
Build custom metrics using formulas to calculate rates, averages, and more. Formulas use Math.js syntax for calculations.
1 Create a conversion rate metric Calculate booking rate using a formula:
Click Add Widget → Text
Enter Name : “Booking Rate (%)”
Click Enable Formula Mode toggle
Add first query:
Query Name : totalBookings
Metric : Count of Call ID
Add filter: Status = “booking_confirmed”
Click Add Query to add second query:
Query Name : totalCalls
Metric : Count of Call ID
Enter formula in the formula editor:
Click Preview to validate
Click Add to Board
The formula editor supports syntax highlighting and variable autocomplete. Type {{ to see available queries.
Common calculated metrics you can create using Math.js syntax:
Formula editor features: - Syntax highlighting - Variable autocomplete -
Validation on preview - Supports all Math.js
operations: +, -, *, /, %, parentheses, and more
Step 6: Organize your dashboard
Arrange insights for optimal visual hierarchy and readability.
Layout actions:
Drag insights : Click and hold the drag handle (⋮⋮ icon) in insight header
Resize insights : Drag the resize handle in bottom-right corner
Delete insights : Click trash icon (🗑️ ) in insight settings
Edit insights : Click settings icon (⚙️ ) to modify configuration
Layout tips
Insight sizing
KPI cards: 1-2 column widths - Charts: 3-4 column widths - Tables: 4-6
column widths
Visual hierarchy
Place most important metrics at the top - Group related metrics together -
Use consistent sizing for similar insights
Step 7: Apply global filters
Control time range and granularity for all insights at once.
1 Set time range and granularity Look for the filter bar at the top of your board: 1. Time Range Picker :
Click the time range dropdown - Choose preset: Today, Yesterday, Last 7
days, Last 30 days, This month, Last month - Or select Custom Range to
pick specific dates 2. Granularity Selector (appears next to “grouped
by”): - Choose: Minute, Hour, Day, Week, Month, Quarter, Year - Available
options depend on time range 3. Click Apply button to update all
insights
All insights on the board update simultaneously. Applied filters show in
the filter bar, and unsaved changes display a blue “Apply” button.
You can’t group by minute for a year of data. Granularity options are limited
based on the selected time range.
Example dashboards
Track sales metrics and conversion rates:
Insights:
Text : Total Calls (last 24h)
Text : Total Bookings (last 24h)
Text : Booking Rate - formula: (bookings/calls) * 100
Line Chart : Daily call volume (last 30 days)
Bar Chart : Bookings by assistant (last 7 days)
Pie Chart : Call outcomes distribution
Support Metrics Dashboard
Monitor customer support performance:
Insights:
Text : Average call duration
Text : Total support tickets
Text : Resolution rate
Line Chart : Call volume trend
Bar Chart : Issues by category
Bar Chart : Average resolution time by agent
Cost Monitoring Dashboard
Analyze spending and optimize costs:
Insights:
Text : Total cost today
Text : Average cost per call
Text : Cost per minute
Line Chart : Daily spending trend
Bar Chart : Cost by assistant
Pie Chart : Cost by call type (inbound/outbound)
Best practices
Dashboard design
Best practices:
Start with 3-5 key metrics (avoid overcrowding)
Use consistent time ranges across related insights
Place most important metrics at the top
Use appropriate chart types for your data
Add filters to focus on specific segments
Avoid these mistakes:
Too many insights (impacts performance)
Mix incompatible time granularities
Ignore visual hierarchy
Use pie charts for time-series data
Query years of data when you need today’s metrics
Data strategy
Text insights for single important numbers
Line charts for trends over time
Bar charts for comparing categories
Pie charts for proportional breakdowns (not time-series)
Apply filters to remove noise from data
Boards with 10+ complex insights may load slower. Use appropriate time ranges
and shorter time periods for better performance.
Sharing and viewing
Fullscreen mode
Click the fullscreen icon (⛶ ) to display your board in fullscreen—great for TV displays or presentations.
Refreshing data
Boards auto-refresh based on time range
Manual refresh: Click refresh icon (🔄 ) if available
Troubleshooting
Common errors
“Query failed” : Check your filters and ensure fields exist in your data
“Invalid time range” : Adjust time range to valid dates
“Formula syntax error” : Verify formula uses correct Math.js variable names matching your query names
Next steps
Tips for success
Getting started: - Start simple with a few key metrics - Test with real
data from your calls - Iterate based on team feedback - Use global filters to
quickly analyze different time periods - Combine text insights with charts for
comprehensive views