How to extract questions and responses from a Google Form
Three ways to get Google Forms data out — the built-in Sheets export, the Forms API for automation, and the screenshot fallback for when you only have access to the published form.
Google Forms data lives in two places: the form itself (questions, answer options, settings) and the responses (one row per submission). Each has its own export path.
Responses to a spreadsheet
From the form's Responses tab, click the green Sheets icon to link a new or existing Google Sheet. Every future submission writes a row automatically. From the sheet, File → Download → Excel/CSV gives you a static export.
If the form is collecting now and you need responses later, link the sheet first — historical responses fill in only after linking.
Just the questions, not the responses
There's no built-in export for the form structure (questions, multiple-choice options, section breaks). Two options:
- Make a copy of the form (File → Make a copy), open the copy, and visually catalog each question. Tedious but works.
- Use the Google Forms API to dump the form schema as JSON.
Forms API for automation
GET https://forms.googleapis.com/v1/forms/{formId} returns the full form definition: every question, type, options, validation rules. GET .../responses returns submissions. Authentication is the standard OAuth2 flow with the forms.responses.readonly scope.
Use this when you're integrating Google Forms into another system — a CRM, a data warehouse, an analytics pipeline.
When you only have the published form (no edit access)
If you're cataloging someone else's published form, you can't access the API or the response sheet. Take screenshots of each page, drop them into ExtractFox's image data extractor with a prompt like "extract every question, its type (short answer, multiple choice, checkbox), and its options as a flat table." Useful for competitive research or for documenting forms in legacy systems where the original Google account is gone.
What to watch for
- Conditional questions ("go to section based on answer") only show up in the API response, not the response sheet — the sheet flattens them.
- Uploaded files in form responses are stored in the form owner's Drive; the response sheet shows links, not the files themselves.
- Timestamps in the response sheet are in the form owner's time zone, not the respondent's.