Survey Analysis
Upload survey spreadsheets, explore responses, and export insights — all in the browser.
Overview
Survey Analysis is a single-page tool for HR, product, and research teams who need to summarize Likert-scale survey results without spinning up a statistics package. Upload an Excel or CSV file (or load sample data), browse responses in a sortable grid, filter by demographics, and visualize score distributions with charts you can export.
Key features
Data import
- Upload `.xlsx`, `.xls`, or `.csv` files via SheetJS with flexible column mapping
- Load a built-in 12-response sample survey on first visit
- AG-Grid table showing respondent ID, demographics (Age Group, Department, Region), and five scored questions (Q1–Q5)
Aggregation
- Alpine.js panel to choose which questions contribute to the overall average
- Live response count, average for the selected question, and combined average across checked questions
Filters and statistics
- Filter by demographic field and value (e.g. Department = Sales)
- Min/max score filter on the active question
- Summary cards: count, mean, median, standard deviation, min, and max
Charts
- Bar chart showing how many responses scored 1 through 5 on the selected question
- Pie chart showing the same distribution as proportions
- Charts refresh automatically when you change the question or apply filters
Question selector (side panel)
- Left sidebar lists all survey questions — click to switch the analysis focus
- Demographic fields available in the dataset are shown as tags below the list
Export
- Export filtered (cleaned) data to Excel
- Download bar or pie chart as a PNG image
- Generate a PDF report with summary stats and embedded chart images via jsPDF
Appearance
- Dark mode toggle with saved preference
- AG-Grid and charts adapt to light or dark theme
Data & persistence
- Survey data lives in memory for the session (upload or sample load)
- Dark mode preference is saved in localStorage
- Exports reflect the current filter set only
Charts & reporting
- Chart.js bar and pie charts tied to the selected question
- PDF report includes dataset name, question label, summary statistics, and both charts
Built with
Tailwind CSS, AG-Grid Community, Alpine.js, Chart.js, SheetJS, and jsPDF — loaded from CDN in one HTML file.
Try the interactive walkthrough below. Click Walk through features and use Next / Back (or arrow keys) to explore every feature.
Survey Analysis — Question panel & dark mode
Upload, filter, aggregate, and export insights
Loaded: Sample survey (12 responses)
12 of 12 responses after filters
| ID | Dept | Q1 | Q2 | Q3 |
|---|---|---|---|---|
| R001 | Sales | 4 | 5 | 4 |
| R002 | Eng | 5 | 4 | 5 |
