Form-to-google-sheets is a JavaScript tool that captures HTML form submissions and stores them directly in Google Sheets.
The tool solves the problem of collecting form data without setting up a backend server or database. It works by combining an HTML form with a Google Apps Script that acts as a serverless endpoint. When a user submits the form, JavaScript uses the Fetch API and FormData to send the submission to the Apps Script, which then appends the data to a Google Sheet. The approach requires no authentication from form users and leverages Google's infrastructure for storage and email notifications.
This tool suits small projects, landing pages, surveys, and contact forms where simplicity matters more than advanced analytics. It works best for teams already using Google Workspace. The setup involves creating a Google Sheet, deploying a provided Apps Script, and embedding a form on a static site. The tool includes built-in protections against CSV injection and formula injection by sanitizing inputs, supports custom sheet names per submission, can send email notifications for new entries, and includes a honeypot field option for spam prevention.
The project shows active maintenance with recent updates addressing security concerns and adding practical features like submission IDs and email notifications. Development includes detailed documentation with both a basic and commented version of the core script to help users understand the implementation. The codebase demonstrates responsiveness to user contributions, as evidenced by features added based on community input.