What goes in a survey performance dashboard?
A survey performance dashboard measures the machinery of research itself: whether surveys reach people, whether people finish them, and where questionnaires leak respondents. It keeps response-rate denominators explicit — responses over sends, opens, and views are three different metrics.
Which cards belong on this dashboard?
- Responses per survey per week
- Response rate by survey with labeled denominator
- Completion rate by survey
- Drop-off by question position
- Median time to complete
- Response rate by channel and device
- Open-text answer rate
- Responses by audience segment
What data does this dashboard need?
- Response-grain data with started and submitted timestamps
- Invitation, open, or view counts per survey and channel
- Answer-grain data with question position and type
- Survey metadata: question count, channel, audience
- Respondent segment fields (plan, region, tenure)
How do you build it?
- Sync the source tools into a database and retain raw IDs, timestamps, statuses, and segment fields.
- Build modeled tables at the grain this dashboard requires.
- Create one saved question per card and certify the shared models and definitions.
- Add dashboard filters for Date range, survey, channel, segment, device.
- Show refresh time, and exclude internal and test activity from every headline card.
Example card SQL
SELECT
s.name AS survey,
COUNT(r.id) AS started,
COUNT(r.id) FILTER (WHERE r.completed) AS completed,
ROUND(
100.0 * COUNT(r.id) FILTER (WHERE r.completed)
/ NULLIF(COUNT(r.id), 0), 1
) AS completion_rate
FROM surveys s
JOIN survey_responses r ON r.survey_id = s.id
WHERE r.started_at >= CURRENT_DATE - INTERVAL '90 days'
GROUP BY s.name
ORDER BY completion_rate ASC;