Getting Started
FramerSend lets you connect Framer forms to any CRM, email tool, or database — without exposing API keys in your client code. Here's how it works in 3 steps:
Purchase a connector
Browse our connectors catalog and buy the one you need ($19 one-time). You'll receive instant access after payment.
Set up in the dashboard
Sign in to your FramerSend dashboard. Add a Connection (paste your CRM credentials), then create a Form and map your fields.
Install the Framer override
Copy the generated Form ID and paste it into the FramerSend code override in your Framer project. That's it — submissions will flow to your CRM automatically.
Connect to Framer
FramerSend offers two ways to connect your forms. We highly recommend Method 1 for a completely No-Code experience.
Method 1: Native Webhook URL (Quick Setup)
Get your Webhook URL
In your FramerSend Dashboard, copy the Webhook URL generated for your form (e.g., https://framersend.com/api/submit/fs_...).
Paste into Framer
Select your native Framer Form on the canvas. In the right property panel, set the Action to URL and paste your Webhook URL into the Submit URL field. Publish and you're done!
Method 2: Custom Component (Pro Features)
Use this method if you want advanced features like Anti-Spam (IP Rate Limiting) and beautiful UI Error notifications.
Create a Code Component
In your Framer project, open the Assets panel (left sidebar). Click the + icon next to "Code" and select "New component".
Paste the Code
Name it FramerSendWrapper, replace all default code with the following, then save:
Place it on your page
Drag the FramerSendWrapper from Assets onto your page — place it anywhere near your form (above, below, or beside). It auto-detects the form on your page.
Paste your Form ID
Click the FramerSendWrapper pill on the canvas. In the right panel, paste your Form ID from the FramerSend dashboard. The pill turns purple to confirm.
Customize UI (Optional)
In the Framer properties panel (right side), toggle Preview UI to see the Error Modal directly on your canvas. From there, you can fully customize the Modal BG, Text Color, and Button Color to match your brand perfectly.
That's it! The component is invisible on your live site. It automatically captures form submissions and sends data to FramerSend. Publish your site and test!
Connect a CRM
After purchasing a connector, head to your dashboard to set up the connection. Each CRM requires different credentials — here's a guide for the most popular ones.
Klaviyo
Required: Private API Key + List ID
Where to find: Settings → API Keys → Create Private Key
Mailchimp
Required: API Key + Server Prefix + Audience ID
Where to find: Account → Extras → API Keys
HubSpot
Required: Private App Access Token
Where to find: Settings → Integrations → Private Apps → Create
Google Sheets
Required: Refresh Token + Spreadsheet ID
Where to find: OAuth2 flow — contact support for help
Slack
Required: Incoming Webhook URL
Where to find: Slack Apps → Incoming Webhooks → Add
Zapier
Required: Webhook URL
Where to find: Create Zap → Webhooks by Zapier → Catch Hook
💡 Tip: For all other connectors, the credential fields are labeled with exact instructions on where to find each value in your CRM settings.
File Uploads & Cloud Storage
FramerSend supports native file uploads. When visitors submit files through your form, FramerSend uploads them directly to your preferred cloud storage provider (Google Drive, AWS S3, or Supabase Storage) and routes the secure file URLs directly to your CRM properties.
Set up a Storage Connection
In your Dashboard, navigate to Connections, click **Add Connection**, and select Google Drive, AWS S3, or Supabase Storage. Enter your credentials to link the account securely.
Link Storage to your Form
Go to the Forms tab, click **Edit** on your form, select your storage connector from the **File Storage Connection** dropdown, and configure upload limitations (e.g. maximum file size).
Integrate the Custom React Component
Under your form's dashboard settings, click **Copy File Upload Integration Code**. In your Framer canvas, create a new Code Component named `FramerFileUpload`, paste this code, and place the component inside your native form container.
Map to your CRM
Under **Field Mapping**, link your form's file upload field name to your target CRM contact or lead property. Submissions to your CRM will now contain the secure, public link to the uploaded file.
🔒 Security: All file uploads are streamed directly to your bucket through the server side, keeping your cloud keys completely hidden from client-side inspectors.
Field Mapping
Field mapping tells FramerSend how to translate your Framer form field names into CRM property names. For example:
| Framer Form Field | → | Klaviyo Property |
|---|---|---|
email | → | $email |
name | → | $first_name |
phone | → | $phone_number |
company | → | $organization |
In the dashboard, each form has a Field Mapping section with dropdown menus pre-populated with the CRM's accepted properties. Simply select the matching CRM field for each Framer form field.
API Reference
If you want to integrate FramerSend manually (without the Framer override), you can call our API directly.
/api/submit/{formId}Submit form data to be routed to the connected CRM.
Headers
Request Body
Response (200 OK)
Error Response (429)
Rate Limits: 10 requests per minute per IP. The X-RateLimit-Remaining header shows remaining requests.
FAQ & Troubleshooting
My form submissions aren't showing up in my CRM
Check the following: (1) Your Form ID is correct in the override code, (2) Your CRM credentials are valid in the dashboard, (3) Your field mapping includes at least the email field. Check the Submissions tab in your dashboard for error logs.
Can I use FramerSend with a custom domain?
Yes! FramerSend works with any domain. Just make sure your Framer site's domain is set as the allowed origin in your form settings.
What happens if a submission fails?
Failed submissions are logged in your dashboard with the error message. You can retry them manually or fix the issue and resubmit.
Is there a submission limit?
Each connector includes 500 submissions per month. The All-in-One Bundle includes unlimited submissions.
Can I connect multiple CRMs to one form?
Currently each form connects to one CRM. To send to multiple CRMs, create separate forms with different Form IDs.
How do I update my CRM credentials?
Go to Dashboard → Connections → click your connection → Update Credentials. Your existing forms will automatically use the new credentials.
Do you support Framer's native form element?
Yes! The code override works with Framer's built-in form component. Apply the withFramerSend override to your form element.
Is my data secure?
Absolutely. All credentials are encrypted at rest. Your API keys never appear in client-side code — only a public Form ID is exposed. We use HTTPS for all data transmission.