Sync MODX forms to Google Sheets automatically
Install the LeadToSheet snippet inside your MODX layouts or modules and capture every native, extension, or custom form submission without managing server-side connectors.
Platform category: Content Management System
Why teams use LeadToSheet for MODX
LeadToSheet listens for browser submit events across your MODX site and streams structured payloads into the connected Google Sheet. Keep your existing form handlers, spam filters, and multilingual experiences while centralising data for marketing and operations teams.
Native form compatibility
LeadToSheet hooks into MODX form markup as soon as it renders, so extensions and custom HTML alike stay untouched.
Keeps spam protection intact
Runs alongside captchas, honeypots, and security plugins before data leaves the browser.
Automatic field normalisation
Maps input names to readable column headers so reporting stays clean in Google Sheets.
Setup checklist
- 1
Install the LeadToSheet snippet
Paste the embed inside a MODX base template or shared chunk inserted site-wide so it loads on every page.
Tip: Use staging or maintenance mode to validate before going live.
MODX global embed
<script>(function(w,d,s,u,k,e){if(w.__formsync){return}w.__formsync={q:[],k:k,endpoint:e};var js=d.createElement(s);js.src=u;js.async=1;js.onload=function(){w.__formsync.init&&w.__formsync.init({ clientKey:k })};d.head.appendChild(js);})(window,document,'script','https://www.leadtosheet.com/sdk.min.js','YOUR_CLIENT_KEY','https://www.leadtosheet.com/api/ingest');</script> - 2
Submit a test form
Send a test submission from any form and confirm the sheet row appears instantly.
Tip: Append ?utm_source=test&utm_medium=direct to the URL to verify attribution.
- 3
Organise your sheet columns
Rename headers and add filters in Google Sheets so downstream teams can triage faster.
Tip: Create separate tabs per form or campaign as needed.
Snippet
MODX embed snippet
Load this snippet globally to capture every MODX submission.
<script>(function(w,d,s,u,k,e){if(w.__formsync){return}w.__formsync={q:[],k:k,endpoint:e};var js=d.createElement(s);js.src=u;js.async=1;js.onload=function(){w.__formsync.init&&w.__formsync.init({ clientKey:k })};d.head.appendChild(js);})(window,document,'script','https://www.leadtosheet.com/sdk.min.js','YOUR_CLIENT_KEY','https://www.leadtosheet.com/api/ingest');</script>Campaign landing pages
Collect marketing leads from MODX landing pages and campaigns for instant sales follow-up.
Support intake
Centralise contact or helpdesk forms while preserving existing confirmation flows.
Partner inquiries
Route distributor or reseller forms from your site directly into shared Sheets for ops teams.
Frequently asked questions
- Can I limit syncing to certain modules?
- Add `data-formsync="off"` to the `<html>` element to disable tracking site-wide, or remove specific forms from your LeadToSheet dashboard to exclude them while others continue syncing.
- Does it support multilingual forms?
- Yes. LeadToSheet captures the rendered field labels and page language so translations stay intact in your sheet.
- Will it conflict with spam protection?
- No. The snippet waits for native validation, captcha checks, and module logic to finish before sending a confirmed submission.
