CaptainForm integration

Sync CaptainForm submissions to Google Sheets

CaptainForm renders inside a cross-origin iframe from 123FormBuilder's cloud. The LeadToSheet SDK cannot access those iframe submissions directly, so use 123FormBuilder's own Sheets connector or another automation tool if you need the response data in Google Sheets.

CMS: WordPress

CaptainForm, now part of 123FormBuilder, builds forms in an external dashboard and embeds them on WordPress through an iframe. Because submissions happen inside the iframe, traditional JavaScript hooks miss them. Since CaptainForm renders inside a cross-origin iframe, the SDK cannot capture submissions directly. Use 123FormBuilder's own Google Sheets integration or another automation tool for the actual response data.

Implementation checklist

  1. 1

    Add the LeadToSheet snippet to your theme

    Inject the script in your WordPress footer via a header/footer plugin or your theme's functions.php. Since CaptainForm renders in a cross-origin iframe, the SDK cannot capture submissions directly. Configure the webhook integration described below for reliable capture.

    LeadToSheet snippet

    <script async src="https://www.leadtosheet.com/api/sdk?k=YOUR_CLIENT_KEY"></script>
  2. 2

    Choose an iframe-safe delivery path

    Since CaptainForm renders inside a cross-origin iframe, the SDK cannot capture submissions directly. Use 123FormBuilder's own Google Sheets connector or another automation tool for these iframe submissions.

    Tip: CaptainForm uses the same embed domain as 123FormBuilder, so one webhook configuration covers both.

  3. 3

    Submit a test entry through the live embed

    Fill out the CaptainForm on your WordPress page and confirm the row appears in your connected Google Sheet with all field names intact.

Customization ideas

  • Map cloud form fields to Sheet columns

    CaptainForm field names come from the 123FormBuilder dashboard. Rename columns in your Google Sheet once and future entries follow the same mapping.

  • Route by form template

    If you use multiple CaptainForm templates on different pages, configure routing rules in the LeadToSheet dashboard to send entries to separate Sheet tabs based on page URL.

  • Pair with payment confirmation emails

    CaptainForm supports payment fields via 123FormBuilder. Use Apps Script on your Sheet to trigger confirmation emails when a payment row arrives.

Troubleshooting

  • Iframe submissions not captured

    Since 123FormBuilder renders inside a cross-origin iframe, the SDK cannot capture submissions directly. Use 123FormBuilder's own Sheets connector or another automation tool for those submissions.

  • Field names appear as generic IDs

    CaptainForm assigns internal IDs to fields. Rename them inside the 123FormBuilder dashboard under field settings to get human-readable Sheet headers.

  • Caching plugin stripping the script

    Some aggressive caching plugins (WP Rocket, W3 Total Cache) strip inline scripts. Add the LeadToSheet CDN domain to your cache exclusion list.

Frequently asked questions

Does LeadToSheet work with the legacy CaptainForm plugin?
Yes, in the sense that the SDK can still run on the parent WordPress page. But CaptainForm and 123FormBuilder both render through the same cross-origin iframe, so actual submission delivery still needs 123FormBuilder's own integrations or another automation tool.
Will CaptainForm's built-in email notifications still fire?
Yes. LeadToSheet operates independently from 123FormBuilder's own email and webhook notifications. Any provider-side integrations you enable continue to run as configured.
What form field types does LeadToSheet capture?
LeadToSheet captures text-based form fields such as text inputs, dropdowns, checkboxes, radio buttons, and textareas. Fields that are not text-based, such as file uploads, are processed server-side by 123FormBuilder and are not captured by the SDK.