Carrd forms to Excel
Set your Carrd form's URL to a permanent endpoint and every waitlist signup or contact message lands as a row in an Excel table you own. No Zapier in the middle.
Carrd is built for one-page sites and waitlists, and its native form types point at email and newsletter services. But if you track your launch in an Excel workbook - signups on one sheet, outreach on another, a chart over the top - the standard routes are a form backend with per-submission caps or an automation tool billing per lead. SheetLink Forms goes straight to the workbook instead: your Carrd form posts to a permanent endpoint, https://sheetlinkforms.com/f/YOUR_TOKEN, and each submission is inserted as a row in an Excel table on your OneDrive via Microsoft Graph. Live rows in the file you actually open, not a CSV to import - and no other hosted form backend offers that natively. Google Sheets is equally available if a given list belongs there.
An asynchronous worker handles delivery with retries at 5 minutes, 30 minutes, and 2 hours, and a delivery log in the dashboard accounts for every submission. Suspicious ones are quarantined for one-click review rather than silently dropped - on a waitlist, a lost signup is the one failure that never announces itself.
See how it works, or watch the live demo feed a public destination.
The best path for Carrd
The best path for Carrd is the Form element with a custom URL: set the element's Type to Custom, choose Send to URL, and paste your /f/ endpoint. To be plain about the requirement: custom URL forms are a feature of Carrd's Pro Plus plan - lower tiers do not expose the URL option. Carrd lets you pick the submission method; both a simple POST (the browser follows a 303 redirect to a thank-you page or your custom redirect URL) and AJAX (any 2xx response counts as success and Carrd shows its own success behavior) work against the endpoint.
On a Pro plan below Plus, the fallback is an Embed element carrying a plain HTML form like the snippet below - which also brings sl.js and its attribution capture with it. Details in the developer docs.
1. Connect Excel Online in the SheetLink Forms dashboard
Create a form, then connect a Microsoft account via OAuth - Microsoft 365 or a personal Microsoft account with OneDrive both qualify - and pick the workbook and the table signups should land in. The table's columns define the row shape, and SheetLink Forms syncs column names from the table itself, so set it up first: for a waitlist, a one-column table named Email is enough (select the header cell in Excel, Insert -> Table). Unlike the Google Sheets destination, there is no header seeding on Excel. Google Sheets remains available as a destination whenever you prefer it.
2. Add a Form element and set it to Custom
- In the Carrd editor, add (or select) a Form element.
- Set Type to Custom.
- Choose Send to URL and paste
https://sheetlinkforms.com/f/YOUR_TOKEN.
This is the Pro Plus feature - if you do not see the option, that is the plan gate, not a bug.
3. Pick the method and name your fields
Choose POST for a classic submission - the endpoint answers with a 303 redirect to a hosted thank-you page or a custom redirect URL you configure. Choose AJAX to stay on the page - the endpoint's success response is a 2xx, which Carrd reads as success and follows with its own on-success behavior. Then name each field after a column in your Excel table; matching is case- and punctuation-insensitive (Email, email, E-mail all match), and explicit per-field mapping is available in the dashboard.
4. Or use an Embed element with a plain HTML form
If your plan lacks custom URL forms, or you want sl.js on the page, add an Embed element and paste the snippet above. The script upgrades the form to AJAX with inline success text, injects the honeypot if missing, adds a timing signal, and captures utm_* plus gclid, wbraid, gbraid, fbclid, and msclkid from the URL - persisted in localStorage, which matters when your ads land on the Carrd page with tracking parameters attached.
5. Publish and test
Publish the site and submit a test, then open the workbook - it is the same OneDrive file, so the row is already visible in Excel on the web and the desktop app. Check the delivery log in the dashboard next: if a submission was flagged by the spam heuristics it sits in quarantine for one-click review - approve it and it delivers. Nothing is silently dropped, which is exactly the property you want under a waitlist.
FAQ
Which Carrd plan do I need?
Custom URL forms - the Form element's Type: Custom with Send to URL - are a Carrd Pro Plus feature. On other paid tiers, an Embed element carrying a plain HTML form (with the honeypot input and optionally sl.js) reaches the same endpoint. On the SheetLink side there is no plan gate: the beta is free with an invite.
Do I have to create the Excel table before signups arrive?
Yes - rows are inserted into a table inside the workbook, and that table's columns are the row shape. SheetLink Forms reads column names from the table (the Google Sheets destination seeds headers for you; Excel does not), so make the table first: even a single Email column works for a waitlist. Add columns later and they sync too.
Can I watch signups arrive in Excel on my desktop?
Yes. Each row is written into the workbook on OneDrive with a Microsoft Graph table-row insert, so it shows up in Excel on the web and in the desktop app as soon as it is delivered - no export or import step. And because it is a live workbook, Power BI can connect to it, which turns a Carrd waitlist into a signups-per-day dashboard with zero glue code.
Is SheetLink Forms free?
Free during the beta, invite required - join the waitlist. No per-submission or per-task fees, ever, which matters for a waitlist whose whole point is volume - and which is exactly how the Zapier and Power Automate routes to Excel charge. Planned post-beta pricing (planned, not final): a free tier around 50 submissions a month and a paid plan around $15-19/mo, unmetered.
How is spam handled on a Carrd form?
Via Carrd's native Form element there is no sl.js on the page, so protection comes from per-form and per-IP rate limits, content heuristics (link stuffing, disposable email domains, empty payloads) with a per-form strictness dial, and optional Cloudflare Turnstile. The Embed route adds the _slhp honeypot and a timing signal. Either way, suspicious submissions are quarantined for one-click review - never silently dropped.
What does the visitor see after submitting?
With Carrd's AJAX method, Carrd's own on-success behavior runs - the endpoint just confirms success. With POST, the browser follows a 303 redirect to a hosted thank-you page or a custom redirect URL you set per form. With the Embed route and sl.js, success text appears inline without leaving the page. All three are described in the docs.
Also on: Carrd · Framer · Wix · Plain HTML