Questionnaire Dataset for Data Analyst Projects
This ready-made dataset contains information on questionnaires, their questions, respondent details, and submitted responses. It spans from January 1, 2022, to December 31, 2024, and is ideal for practicing SQL joins and data modeling. A free sample of 1000 rows is available for preview.
At a glance
- 4tables
- 41,890rows
- 26columns
- Jan 2022 – Dec 2024date range
The 4 tables
preview and data dictionary per tableQuestionnaires questionnaires · table · 2,000 rows
Contains details about each questionnaire created.
Preview
| questionnaire_iduuid | titlestring | descriptionstring | creation_datedate | statusstring | categorystring |
|---|---|---|---|---|---|
| edf8a6f4-a927-4f98-a09c-1d78e0c1b41c | User Experience Feedback for New Dashboard Feature | Identifying user needs for advanced customization options and personalization features. | 2024-08-13 | Active | Feedback |
| de3db61d-b74c-4e56-bf05-f394ced8a7b2 | Customer Satisfaction Survey - Q2 2024 | Understanding user expectations regarding new content and feature updates. | 2024-04-09 | Active | Feedback |
| 05fb043e-86fc-4afb-b63c-5200a90716c8 | Product Improvement Suggestions - End of Year | Measuring user satisfaction with the error reporting and bug resolution process. | 2024-11-15 | Active | Feedback |
| 572b3462-250d-4f43-89dd-7263bb927570 | Feedback on Mobile App Performance | Measuring user satisfaction with the data backup and recovery services. | 2022-06-17 | Active | Feedback |
| dd6437a4-0147-4679-8dfd-2e865f8c5251 | Website Navigation and Usability Feedback | Gathering user opinions on the recent platform update and identifying areas for improvement. | 2023-02-06 | Active | Feedback |
| a10f5cd8-8047-4311-86a3-6ca3bd440792 | Post-Purchase Product Experience Survey | Eliciting suggestions for future product development based on current user needs. | 2023-12-04 | Active | Feedback |
| 8293e199-78f9-4d15-b41e-0d9d58ed72b6 | Feedback on Recent Service Interactions | Evaluating user engagement with our community forums and seeking suggestions for improvement. | 2023-01-14 | Active | Feedback |
| 18d54931-1cdc-423a-b0d3-80eb6a9d7b5e | Client Feedback on Project Deliverables | Seeking feedback on the training materials and resources available for platform users. | 2024-10-20 | Active | Feedback |
| 7e82f362-5a2d-46cb-8864-04842eca6307 | Online Store Experience Feedback | Assessing user preferences for different communication channels and support availability. | 2023-04-29 | Active | Feedback |
| 9e86e304-e412-4742-a40c-c37833352ada | User Feedback on Software Updates | Assessing user preferences for different communication channels and support availability. | 2023-08-18 | Active | Feedback |
Data dictionary
| column | type | description | example | null % |
|---|---|---|---|---|
questionnaire_ | uuid | Unique identifier for the questionnaire.unique | edf8a6f4-a927-4f98-a09c-1d78e0c1b41c | 0% |
title | string | Headline title of the questionnaire. | User Experience Feedback for New Dashboard Feature | 0% |
description | string | Detailed explanation of the survey scope, goals, and intended respondents. | Identifying user needs for advanced customization options and personalization fe | 0% |
creation_ | date | Date when the questionnaire was drafted or created in the system. | 2024-08-13 | 0% |
status | string | Current lifecycle status of the questionnaire (e.g., Active, Archived, Draft). | Active | 0% |
category | string | Functional domain or category of the survey (e.g., Feedback, Research). | Feedback | 0% |
Respondents respondents · dimension table · 5,000 rows
Information about individuals who participate in the questionnaires.
Preview
| respondent_iduuid | first_namestring | last_namestring | emailstring | registration_datedate | countrystring | segmentstring |
|---|---|---|---|---|---|---|
| e5bf01c2-78d3-4520-b2f4-c39661d23095 | Eleanor | Sullivan | [email protected] | 2024-09-11 | Canada | Returning |
| 670aae26-dd14-42b2-bb42-326bf01db43d | Arthur | Schneider | [email protected] | 2024-08-07 | Germany | Returning |
| 3ef12a52-e65b-44a3-a5fc-0edd39a1fbc6 | Beatrice | Stewart | [email protected] | 2022-12-13 | USA | Returning |
| 3ce4d0e6-581b-434f-b67b-ba2dc688b6e6 | Clarence | Smith | [email protected] | 2024-04-29 | USA | Returning |
| bf496ee0-58cf-4fd9-a6f4-d2912b4a0d7f | Dorothy | Stone | [email protected] | 2024-05-15 | USA | Returning |
| a587d4ae-77db-4ef7-a93e-7e604314877e | Edward | Schaefer | [email protected] | 2024-07-10 | Germany | Returning |
| fcef0320-547e-4021-83a8-18d05152a43e | Florence | Spencer | [email protected] | 2022-05-25 | USA | Returning |
| a8654a21-55d1-4fcc-91a8-f5018904d7fa | George | Sterling | [email protected] | 2024-03-11 | Canada | Returning |
| de9ea524-80bd-478c-a808-9d7f6f236595 | Helen | Simpson | [email protected] | 2024-09-24 | USA | Returning |
| da160c34-bad1-4a76-b0bd-1bc0a65a4b05 | Igor | Snyder | [email protected] | 2023-12-16 | USA | Returning |
Data dictionary
| column | type | description | example | null % |
|---|---|---|---|---|
respondent_ | uuid | Primary key uniquely identifying each respondent.unique | e5bf01c2-78d3-4520-b2f4-c39661d23095 | 0% |
first_ | string | Respondent's legal first name. | Eleanor | 0% |
last_ | string | Respondent's legal last name. | Sullivan | 0% |
email | string | Unique email address for survey notifications.unique | [email protected] | 0% |
registration_ | date | Date respondent registered on the platform. | 2024-09-11 | 0% |
country | string | Country of residence of the respondent. | Canada | 0% |
segment | string | Respondent engagement classification (e.g., New, Returning, VIP). | Returning | 0% |
Questions questions · fact table · 960 rows
Details of individual questions within questionnaires.
Preview
| question_iduuid | question_textstring | question_typestring | order_in_questionnaireinteger | questionnaire_iduuid |
|---|---|---|---|---|
| de373415-bb5f-4e67-b596-18cff93fe66c | Please rate your experience with the Online Course Registration for Spring 2024. | Multiple Choice | 1 | 1970c0d9-f067-4840-9915-5feac929a957 |
| e9629c5d-c22e-40cb-a452-a73affc0514a | How satisfied were you with your recent Post-Purchase Support Experience? | Multiple Choice | 1 | cbc1ccf2-f602-4e15-ade9-52d3d72e0ab9 |
| 650ca4af-c315-4847-a5d6-fe1ee1add0db | Please assess your skills for the Volunteer Registration and Skill Assessment. | Multiple Choice | 1 | dab4f89f-4082-459b-8311-6cfe6db2b957 |
| 79f44584-8865-4d69-ba4c-da1858aee9dc | What is your feedback on our Online Training Modules? | Multiple Choice | 1 | b0edbcc9-87dc-4df4-bf87-63644a0aaa83 |
| e8b1592b-9f59-40ea-9b19-24a0c24b028c | We want your feedback: How can we improve our services? | Multiple Choice | 1 | fd8af356-e014-44e8-a4d9-f04991cd298d |
| 313c3866-66a2-4d8e-b345-bd8f79dac35e | Help us improve our customer support response times by providing your feedback. | Multiple Choice | 1 | 781ac73f-d9fc-435e-9c3d-324ea63673a1 |
| 32c35249-b93c-4e0d-aff2-ca823b1393fa | Provide your user feedback for our Website Redesign research. | Multiple Choice | 1 | f8c6d943-c906-4a19-866e-8da3e60611fb |
| 7e61e582-6ad4-4eb7-881f-e62d232142c1 | Please complete this Late May 2023 Frontend Development Skills Assessment. | Multiple Choice | 1 | 713bb4b0-5b37-4354-a974-5b21f5be04a3 |
| 83e9bfdc-8126-4a65-82e1-5586a89a0e8b | What is your feedback on the Customer Onboarding Process? | Multiple Choice | 1 | b18a66fa-c89f-466d-bb7a-06ad4d13459b |
| fd6ca90b-3a40-498d-b9f3-d5e5b03e0947 | Post-Purchase Feedback: Tell us about your recent order experience. | Multiple Choice | 1 | 3b0bcace-a381-4c16-a995-4b0ab5b19364 |
Data dictionary
| column | type | description | example | null % |
|---|---|---|---|---|
question_ | uuid | Unique primary key identifier for the question.unique | de373415-bb5f-4e67-b596-18cff93fe66c | 0% |
question_ | string | Full text prompt and description of the survey item. | Please rate your experience with the Online Course Registration for Spring 2024. | 0% |
question_ | string | Format and response mechanism required for the question (e.g., Multiple Choice, Text). | Multiple Choice | 0% |
order_ | integer | 1-indexed sequencing position of the question within its questionnaire. | 1 | 0% |
questionnaire_ | uuid | Foreign key linking to the questionnaires table.unique | 1970c0d9-f067-4840-9915-5feac929a957 | 0% |
Responses responses · bridge table · 33,930 rows
Records of individual responses submitted by respondents to questions.
Preview
| response_iduuid | response_textstring | response_ratinginteger | response_choicestring | response_datedate | questionnaire_iduuid | question_iduuid | respondent_iduuid |
|---|---|---|---|---|---|---|---|
| f087580d-03ad-4e2c-9110-d8505884bf39 | blank | blank | Option A | 2023-01-19 | 8293e199-78f9-4d15-b41e-0d9d58ed72b6 | c7d92a0c-6098-4451-9803-796d111ec7d0 | 98444866-0d76-4a54-b02e-eb8af435529d |
| 944ed82b-af90-4061-aafc-686d95fac25a | blank | 1 | blank | 2023-01-20 | 8293e199-78f9-4d15-b41e-0d9d58ed72b6 | 578d57dd-1280-4289-8add-7e4ff9dc1bc7 | 81aa3b7b-ba3b-49a9-9dec-e55083909d64 |
| 228c3a81-ce7e-4f53-bd44-8db13533393c | blank | 3 | blank | 2024-11-22 | 05fb043e-86fc-4afb-b63c-5200a90716c8 | df198ceb-e63c-4f2e-8011-0fe36c421b29 | 98d1edd8-7faf-422c-b71a-fd3b933cb7bd |
Data dictionary
| column | type | description | example | null % |
|---|---|---|---|---|
response_ | uuid | Unique identifier for the response record. | 8171dee3-6a97-4a04-ac44-501c37d8dba5 | 0% |
response_ | string | Open-ended text answer provided by the respondent for text-type questions. | Excellent service and great follow-up. | 70% |
response_ | integer | Numeric evaluation score on a 1-5 scale for rating-based questions. | 4 | 79.9% |
response_ | string | Selected option for multiple choice or yes/no question types. | Option C | 50.2% |
response_ | date | Calendar date when the response was submitted. | 2022-02-18 | 0% |
questionnaire_ | uuid | Foreign key linking to the questionnaires table. | 933c5bcb-5cb9-4916-9c8b-b7baa0826873 | 0% |
question_ | uuid | Foreign key linking to the questions table. | 6c994adc-98e9-49b5-9103-287d6792cb37 | 0% |
respondent_ | uuid | Foreign key linking to the respondents table. | 492c74a9-7a0b-46ea-aac7-0ca1f6b97fb4 | 0% |
How the tables join
responses.questionnaire_id references questionnaires.questionnaire_idmany to one: each Responses row points to one Questionnaires rowquestions.questionnaire_id references questionnaires.questionnaire_idmany to one: each Questions row points to one Questionnaires rowresponses.question_id references questions.question_idmany to one: each Responses row points to one Questions rowresponses.respondent_id references respondents.respondent_idmany to one: each Responses row points to one Respondents row
Questions to answer with it
Retrieve the title and status of all questionnaires created in the last year.
Filter questionnaires where creation_date is within the last 12 months from the current date.
tables: questionnaires
List all questions belonging to the 'Feedback' category, ordered by their appearance in the questionnaire.
Join questions and questionnaires tables, filter by questionnaire category, and order by order_in_questionnaire.
tables: questions, questionnaires
For each questionnaire, count the number of active questions.
Join questions and questionnaires tables, filter for active questionnaires, and group by questionnaire to count questions.
tables: questions, questionnaires
Find the average rating for 'Rating' type questions across all 'Active' questionnaires.
Join all three tables, filter for 'Rating' question types and 'Active' questionnaires, then calculate the average of response_rating.
tables: responses, questions, questionnaires
Identify respondents who have completed more than 5 questionnaires.
Join responses and respondents tables, group by respondent, and count distinct questionnaires completed.
tables: responses, respondents
Starter SQL
run against this data before publishingTable names match the SQLite file and the SQL script.
List Feedback Questions by Order
SELECT q.question_text FROM questions q JOIN questionnaires qs ON q.questionnaire_id = qs.questionnaire_id WHERE qs.category = 'Feedback' ORDER BY q.order_in_questionnaire LIMIT 20;Count Active Questions per Questionnaire
SELECT qs.title, COUNT(q.question_id) AS active_question_count FROM questionnaires qs JOIN questions q ON qs.questionnaire_id = q.questionnaire_id WHERE qs.status = 'Active' GROUP BY qs.title LIMIT 20;Average Rating for Active Questionnaire Rating Questions
SELECT AVG(r.response_rating) AS average_rating FROM responses r JOIN questions q ON r.question_id = q.question_id JOIN questionnaires qs ON q.questionnaire_id = qs.questionnaire_id WHERE q.question_type = 'Rating' AND qs.status = 'Active' LIMIT 20;Respondents Completing More Than 5 Questionnaires
SELECT res.respondent_id, COUNT(DISTINCT resp.questionnaire_id) AS questionnaires_completed FROM respondents res JOIN responses resp ON res.respondent_id = resp.respondent_id GROUP BY res.respondent_id HAVING questionnaires_completed > 5 LIMIT 20;Load it with pandas
import pandas as pd
# Unzip the CSV download first: one file per table
questionnaires = pd.read_csv("questionnaires.csv")
respondents = pd.read_csv("respondents.csv")
questions = pd.read_csv("questions.csv")
responses = pd.read_csv("responses.csv")
# Join responses to questionnaires
df = responses.merge(questionnaires, left_on="questionnaire_id", right_on="questionnaire_id", how="left", suffixes=("", "_questionnaires"))
print(df.groupby("status").size().sort_values(ascending=False))Using it in your tool
- Excel
- Each table can be loaded into its own sheet. Use XLOOKUP to join tables based on common IDs (e.g., questionnaire_id, respondent_id). Power Query can also be used for more complex joins. Create a PivotTable from the responses sheet to summarize data.
- Power BI
- Model the data using a star schema: 'questionnaires' and 'respondents' as dimension tables, and 'responses' as the fact table. Create relationships from 'questionnaires.questionnaire_id' to 'responses.questionnaire_id' and from 'respondents.respondent_id' to 'responses.respondent_id'. Create measures for average response rating and count of responses.
- SQL
- Load the SQLite or SQL relational download. Primary keys are defined for each table (e.g., questionnaire_id in 'questionnaires'). Use JOIN clauses to link tables, for example, joining 'responses' to 'questions' on 'question_id' to analyze question-specific data.
- Python
- Use pandas to load CSV files into DataFrames. Merge DataFrames using common columns (e.g., 'questionnaire_id') to combine data from different tables. Analyze response patterns and respondent demographics.
Formats available
- CSV (zip)One CSV file per table, zipped
- Excel workbookOne worksheet per table
- SQLite databaseA ready-to-query database file with every table
- Parquet (zip)One Parquet file per table, zipped
- SQL scriptCREATE TABLE with primary and foreign keys, then INSERTs
- CSVA single CSV file
- JSONA single JSON file
How this data was generated
Synthetic data. Every row was generated: no real people, customers or companies are in this dataset.
Synthetic data generated by GoMask DataFactory from a relational blueprint: keys, links and rules are enforced in code, text columns are filled by a language model. No real people, companies or transactions.
- The dataset was generated using GoMask DataFactory.
- Data includes synthetic respondents, questionnaires, questions, and responses.
- Statistics like row counts and column distinct values are representative of generated data patterns.
- Checked by an automated quality gate: unique keys, no orphan foreign keys, required columns filled, declared rules and date ranges (realism score 84).
Limitations
- The data is synthetic and does not represent real-world individuals or events.
- Response text and choice fields contain limited distinct values due to generation parameters.
- The 'order_in_questionnaire' column in the 'questions' table has a distinct value of 1, indicating it might not be fully representative of question ordering within questionnaires.
- Distributions and correlations are modelled, not measured from real records.
Part of these collections
blueprint · questionnaire-dataset
Scale this dataset
Same tables. As many rows as you need.
Open the blueprint behind these 4 tables in Data Factory: keep the relationships, change a column, and generate it at the size you need.
- 200,000 rows
- 1,000,000 rows
- Tables
- questionnaires, respondents, questions, responses
- Licence
- yours to use, including commercially
- API slug
- questionnaire-dataset