# Branchside — Full Documentation This file is machine-generated from the Branchside documentation (src/help) on every build. Do not edit it manually — changes will be overwritten. The canonical, human-readable pages are linked on https://branchside.com. Branchside is a lead form builder with built-in server-side conversion tracking for performance advertising (Meta Pixel / Meta Conversion API, Google Ads, Google Analytics 4). Marketers embed Branchside forms on any website with a copy-paste script — no code and no Google Tag Manager setup required — and every successful form submission fires a conversion event server-side, bypassing client-side tracking loss and maximizing Facebook Event Match Quality (EMQ). ## Pricing - 14-day free trial on all paid plans; no credit card required. - Launch: $15/month. - Growth: $39/month (most popular). - Business: $89/month. - 14-day free trial on paid plans; upgrade or cancel anytime. - Compare plans: https://branchside.com/pricing/ ## Table of contents - Getting started: https://branchside.com/help/getting-started/ - Forms: https://branchside.com/help/forms/ - Integrations: https://branchside.com/help/integrations/ - FAQ: https://branchside.com/help/faq/ # Getting started ## Getting started Source: https://branchside.com/help/getting-started/ Welcome to Branchside! This guide will help you quickly learn how to use our product. Get Started Quickly! 1. Create Your First Form Learn how to build your first form with our step-by-step guide. [Create Your First Form »](https://branchside.com/help/getting-started/creating-your-first-form/) 2. Add the Form to Your Website Easily embed your form anywhere on your website. [Embed Your Form »](https://branchside.com/help/getting-started/embedding-form/) Create an Account New to Branchside? Learn how to create an account and start your 14-day free trial. [Create an Account »](https://branchside.com/help/getting-started/creating-your-account/) Explore the Dashboard Discover all the features available in your Branchside dashboard. [Explore the Dashboard »](https://branchside.com/help/getting-started/navigating-the-dashboard/) ## Need Help? If you have questions, can't find what you're looking for, or want to suggest a new feature, please contact us! We're happy to help. Use this form to reach us directly: Form created with [Branchside](https://branchside.com/) ## Introduction - Getting started Source: https://branchside.com/help/getting-started/introduction/ Branchside is a form builder designed specifically for **marketing specialists**. We help you quickly create forms, embed them on your website, and start collecting high-quality lead data in minutes. ### Key Benefits: * **Easy Conversion Tracking:** Track conversions for each form effortlessly. * **Custom Field Validation:** Ensure data accuracy with custom validation rules. * **Spam Protection:** Eliminate spam submissions. * **Simple Website Integration:** Quickly embed forms on your site. * **Instant Email Notifications:** Receive an email for every form submission. * **Third-Party Integrations:** Connect with your favorite marketing tools. * **Dashboard & Analytics:** Monitor form performance with a clear dashboard view. ## Built by Marketers, for Marketers We understand the challenges of lead generation because we're marketers ourselves. Our team runs a marketing agency focused on delivering direct results – leads – for our clients. To drive high-quality leads, accurate conversion tracking is essential. We need to measure and optimize our ad campaigns for maximum performance. We rely heavily on forms as a key element for capturing leads and tracking conversions. In the past, we struggled with the time-consuming process of setting up and tracking numerous forms for different ad campaigns and platforms. That's why we built Branchside: a form builder designed to simplify conversion tracking and streamline the entire lead generation process. We created the tool we wished we had! ## Creating your account - Getting started Source: https://branchside.com/help/getting-started/creating-your-account/ 1. Go to the registration page: [https://panel.branchside.com/register](https://panel.branchside.com/register) 2. Fill in the required information: - **Your Name** - **Email Address** - **Password** ## Logging into Your Account 1. Go to the login page: [https://panel.branchside.com/login](https://panel.branchside.com/login) 2. Enter your login details: - **Email Address** - **Password** ## Navigating the dashboard - Getting started Source: https://branchside.com/help/getting-started/navigating-the-dashboard/ The dashboard is your central hub for managing forms, viewing submissions, setting up integrations, and more. Access your dashboard here: [https://panel.branchside.com/](https://panel.branchside.com/) ## Homepage Overview The homepage provides a quick summary of your form submissions. You'll find dynamic statistics showing: * Today's Submissions * Yesterday's Submissions * This Month's Submissions * Last Month's Submissions ## Forms The **"Forms"** section is where you manage all your forms. Here, you can: * Create new forms * Edit existing forms * Delete forms * View submission data for each form * Access detailed instructions on embedding each form on your website. ## Integrations The **Integrations** section lets you connect your Branchside forms with other applications. For more details, visit our [Integrations documentation page](https://branchside.com/help/integrations/). ## Creating your first form - Getting started Source: https://branchside.com/help/getting-started/creating-your-first-form/ This step-by-step guide will walk you through creating your first Branchside form. Make sure you've [created an account](https://branchside.com/help/getting-started/creating-your-account/) and logged into the [dashboard](https://branchside.com/help/getting-started/navigating-the-dashboard/) before you begin. ## Creating a New Form 1. Go to the [Forms section](https://panel.branchside.com/forms) in your dashboard. 2. Click the **"New Form"** button in the top-right corner. ### General Form Settings (General Tab) In the **General** tab, you can customize: - Form Name - Submit Button Text - Success Message Text (displayed after successful submission, unless you [redirect visitors to another URL](https://branchside.com/help/forms/advanced-settings/#success-action)) - General Error Message (displayed for submission errors) ### Form Fields (Fields Tab) The **Fields** tab is where you manage the core of your form – the input fields. Here, you can: - Add various field types (e.g., text, email, dropdown, etc.). - Arrange the order of fields. - Set validation rules for each field. Branchside validates input *before* submission, displaying an error message for invalid data. ### Consent Checkboxes (Consent Tab) The **Consent** tab allows you to add consent checkboxes, often required for legal compliance. These appear after the form fields and before the submit button. - Add multiple consent checkboxes. - Customize the consent text. - Make consents optional or required. ### Conversion Tracking (Conversions Tab) The **Conversions** tab is crucial for tracking the success of your marketing efforts. Forms are central to online marketing, and accurate conversion tracking is essential for optimization. - Set up different conversion events to track form submissions. - Branchside automatically tracks these events whenever the form is submitted. > **Meta Conversions API (CAPI)** > For more accurate and reliable tracking, consider enabling server-side tracking via our [Meta Conversions API (CAPI)](https://branchside.com/help/forms/meta-capi-tracking/) integration. ### Form Design (Design Tab) Customize the look and feel of your form in the **Design** tab. Add custom CSS to any element of your form. > **CSS customization** > For detailed information on CSS customization, please visit the [Form design & CSS](https://branchside.com/help/forms/design-css/) documentation section. ### Additional Settings (Settings Tab) The **Settings** tab allows you to configure additional options for your form. It also holds the **Success action** switch, which decides whether visitors see the inline success message or are [redirected to another URL](https://branchside.com/help/forms/advanced-settings/#success-action). > **Advanced settings** > For detailed information on advanced settings, please visit the [dedicated documentation section](https://branchside.com/help/forms/advanced-settings/). ## Saving and Next Steps Once you've configured all the settings, click the **"Create"** button to save your form. After saving, you can embed the form on your website. See our [Embedding Form](https://branchside.com/help/getting-started/embedding-form/) guide for instructions. ## Embedding form - Getting started Source: https://branchside.com/help/getting-started/embedding-form/ Once you've [created your form](https://branchside.com/help/getting-started/creating-your-first-form/), you'll need to embed it on your website. This is a simple process of copying and pasting two code snippets. You can place the form anywhere on your site. ## Embedding Instructions After creating your form, go to the **General** tab and click the **"Embed Form"** button. A sidebar will open with two code snippets. **First Code Snippet (Form Placement):** copy this code and paste it into your website's HTML code *exactly where you want the form to appear*. **Second Code Snippet (JavaScript):** copy this code and paste it anywhere within your website's HTML *before the closing* `` *tag*. It does *not* need to be near the first code snippet. > **Important!** > > You only need to add the JavaScript snippet **once** to each page, even if you have multiple forms. The script is designed to automatically find and manage every Branchside form on that page. ## Pre-filling Form Fields You can pre-fill your form fields with default values. This is useful for tracking where submissions come from, personalizing forms, or passing data between pages. There are two methods for setting default values. ### Method 1: Using HTML Data Attributes (Static Values) For simple, static values, you can add a special `data-field-*` attribute directly to the form's `div` element. The format is `data-field-="Your Value"`. Replace `` with the name of the field you want to pre-fill. **Example: setting a default page name for a hidden field** Let's say your form has a hidden field with the name `page`. To set its value to "Main page", you would modify the embed code like this: ```html
``` This is especially useful with hidden fields to "tag" submissions based on the page or context where the form was submitted. ### Method 2: Using JavaScript for Dynamic Values For more complex scenarios, like capturing URL parameters, you can use JavaScript. Our script fires a `branchside:formReady` event on the document once the form is fully loaded and ready to be interacted with. You can listen for this event to run your own custom code. To make updating fields easier, we provide a helper function: `bsSetFieldValueFromEvent(event, fieldName, value)` - `event`: the event object passed by the event listener. - `fieldName`: the name of the form field you want to set. - `value`: the value you want to set for that field. **Example: capturing UTM Parameters from the URL** This code captures UTM parameters from the current page's URL and sets them as values for hidden fields named `utm_source`, `utm_medium`, and `utm_campaign`. ```html ``` # Forms ## Website forms Source: https://branchside.com/help/forms/ Once you have mastered the basics of [Creating your first form](https://branchside.com/help/getting-started/creating-your-first-form/), you can dive into advanced configurations to further enhance your lead generation process. This section covers technical and design-focused topics for power users who want full control over their form behavior and aesthetics. ### Advanced Customization * **[Advanced settings](https://branchside.com/help/forms/advanced-settings/)**. Learn how to configure granular form behaviors, including what visitors see after they submit, custom submission handlers, and integration hooks. * **[Form design & CSS](https://branchside.com/help/forms/design-css/)**. Take complete control over your form's visual appearance using custom CSS and advanced layout options. * **[Meta Conversions API (CAPI)](https://branchside.com/help/forms/meta-capi-tracking/)**. Enhance your tracking reliability by sending conversion events directly from our servers to Meta. ## Advanced settings Source: https://branchside.com/help/forms/advanced-settings/ The Advanced Settings allow you to extend the functionality of your forms by deciding what happens after a submission, managing data delivery, and adding custom metadata. In this section, you can: - **Set the Success action**. Show an inline success message or send visitors to another URL (redirect) once they submit the form. - **Attach Webhooks**. Automatically send form data to external services after submission. - **Custom Key-Value Configs**. Add custom configuration values that are included in the form data payload. ### Success action The **Success action** group sits at the top of your form's **Settings** tab. It controls what a visitor gets once Branchside has accepted their submission. | Option | What happens | | --- | --- | | **Message** | The form displays an inline confirmation. The text comes from the **Success message** field, which defaults to "Thank you for your submission!". | | **Redirect** | The visitor's browser is sent to a URL you define — usually a thank-you page, a download, or a booking calendar. | Forms keep the **Message** behavior until you change it. To redirect visitors after a submission: 1. Edit your form and click the **Settings** tab. 1. In the **Success action** group, select **Redirect**. 1. Enter the destination in the **Redirect URL** field. Use the complete address, including `http://` or `https://`. 1. Save the form, then submit it once to confirm the destination opens. > **Note:** Only plain web addresses work. Links starting with `javascript:`, `mailto:` or `tel:`, and addresses without a scheme (`example.com/thank-you`) are refused when you save the form. ### Placeholders in the redirect URL You can pass the value a visitor just submitted into the destination URL by wrapping the field **name** in curly braces — for example `{first_name}`. - A placeholder uses the field's name (not label), the same value you use for [pre-filling fields](https://branchside.com/help/getting-started/embedding-form/#method-1-using-html-data-attributes-static-values). - While you set the URL, the helper text underneath shows every placeholder your current form offers. - When a placeholder appears more than once, every occurrence is replaced. - Submitted values are encoded automatically, so `John Doe` becomes `John%20Doe` and `john@example.com` becomes `john%40example.com`. - Checkbox selections are joined with a comma, so two picked interests arrive as `sports%2Cmusic`. - Consent checkboxes and hidden fields have names like any other field, so they can be used as placeholders. **Examples:** | Redirect URL | Where the visitor lands | | --- | --- | | `https://example.com/thank-you?name={first_name}` | `https://example.com/thank-you?name=John` | | `https://example.com/u/{email}` | `https://example.com/u/jane%40example.com` | | `https://example.com/done?plan={plan}&interests={interests}` | `https://example.com/done?plan=pro&interests=sports%2Cmusic` | > If a name in the URL does not match a field on the form, or the visitor left an optional field blank, the placeholder resolves to an empty value instead of failing. A typo such as `{fist_name}` quietly produces `?name=`. Check the helper text, then test the form with a real submission before you send traffic to it. ### Redirect behavior and limits - **It happens in the browser.** The destination is opened by the visitor's browser once the submission is accepted; it is not a server-side redirect. - **Tracking fires first.** Conversion events configured on the form are recorded before the browser navigates away, a brief moment (about half a second) after the successful submission. - **JavaScript is required.** Because the form script performs the redirect, visitors with JavaScript disabled stay on the inline success message instead. - **Only submitted values are available.** Placeholders resolve from the data the visitor just sent. To forward UTM data, capture it into [hidden fields](https://branchside.com/help/getting-started/embedding-form/#pre-filling-form-fields) first, then use those field names as placeholders. - **Simple symbols only.** A field name may contain letters, numbers, underscores, hyphens, and dots (so `{user.name}` works), and nothing else: no default values, filters, or expressions. ### Accessing Advanced Settings 1. Edit your form and click the **Settings** tab. 1. Click the **Advanced settings** button to open the configuration menu. ### Webhooks To manage webhooks, select the **Webhooks** tab within the Advanced Settings menu. From here, you can select and attach available webhooks to your form. > **Note:** If no webhooks are listed, you must create them first. For more information, see the [Webhooks documentation](https://branchside.com/help/integrations/webhooks/). ### Key-Value Configurations The **Config** tab allows you to define custom key-value pairs that will be included in every form submission. This is particularly useful for passing static metadata to your integrations. - **Nested Keys:** You can use dot notation (e.g., `webhook.extra_field`) to create nested objects in the payload. - **Storage:** These values are included in the `form.config` object within the JSON payload. **Payload example with config:** ```json { "form": { "type": "base", "id": "e7994b79-2a1d-4978-8c5a-94d95556b5b2", "name": "Demo form", "config": { "custom_name": "Custom form name for my integration", "webhook": { "extra": "Config key for this nested object is `webhook.extra`" } }, "fields": { "user.name": { "type": "text", "name": "user.name", "label": "User name" }, "user.email": { "type": "text", "name": "user.email", "label": "User email" } } }, "data": { "user.name": "demouser", "user.email": "demouser@branchside.email" }, "structured_data": { "user": { "name": "demouser", "email": "demouser@branchside.email" } }, "metadata": { "time": 1762252573 } } ``` ## Form design & CSS Source: https://branchside.com/help/forms/design-css/ You can add custom CSS to style your forms. Your CSS code will be loaded automatically with the form. To access the design settings, edit your form and navigate to the **Design** tab. ### Static form classes To simplify your CSS and avoid deeply nested selectors, we provide the following static classes in the form's HTML: | Class | Description | | --- | --- | | `_bs-form-label` | Applied to all label elements associated with form fields. | | `_bs-form-error-message` | Applied to the error message element displayed when validation fails. | | `_bs-form-success-message` | Applied to the success message element shown after a successful submission. | | `_bs-form-field-container` | A wrapper around each individual field (including the label and input). | | `_bs-form-input-container` | A wrapper specifically around text-based input elements. | | `_bs-form-textarea-container` | A wrapper specifically around textarea elements. | | `_bs-form-select-container` | A wrapper specifically around select (dropdown) elements. | | `_bs-form-input` | Applied directly to text-based input fields. | | `_bs-form-textarea` | Applied directly to textarea elements. | | `_bs-form-select` | Applied directly to select (dropdown) elements. | | `_bs-form-button-submit` | Applied to the form's submit button. | | `_bs-form-checkbox-container` | A wrapper around checkbox fields. | | `_bs-form-consent-checkbox` | Applied specifically to checkboxes used for user consent. | ## Meta Conversions API (CAPI) Tracking Source: https://branchside.com/help/forms/meta-capi/ Enhance your tracking reliability and ensure accurate conversion data with our server-side integration for Meta (Facebook) via the Conversions API (CAPI). > Server-side tracking requires an active **Grow** or **Business** plan. > > Check our [pricing page](https://branchside.com/pricing/) for more details. ## Why Use Meta CAPI? Browser-side tracking—such as the standard Meta Pixel—is increasingly limited by ad-blockers, browser privacy features (like ITP), and user cookie settings. This can lead to significant data loss and inaccurate campaign reporting. Our Meta CAPI integration solves this by sending your conversion events directly from our servers to Meta. ## Key Benefits ### 1. Reliable Data Capture conversions even when users employ ad-blockers or privacy-focused browsers, ensuring no event goes untracked. ### 2. Improved Attribution Higher data quality allows for more accurate conversion attribution and better optimization of your Facebook ad campaigns. We automatically capture and send `_fbp` and `_fbc` cookies (only if we have the necessary consent), IP Address, User Agent, and Page URL to maximize Meta's Event Match Quality (EMQ). ### 3. Automatic Deduplication When using both the Meta Pixel (browser) and CAPI (server), we generate a unique Event ID for every form submission. Meta uses this ID to deduplicate events, preventing double-counting. ### 4. Privacy & Security - **Consent-Aware:** We automatically respect user consent preferences collected on your forms, ensuring your tracking practices remain compliant with privacy regulations. - **Secure Transmission:** Data is sent directly from our secure servers to Meta, minimizing the surface area for tracking interference and ensuring the integrity of your data. ## How It Works 1. **Event Collection:** When a user submits your form, we securely capture the necessary conversion metadata alongside user consent status. 1. **Secure Server-to-Server Transfer:** Alongside browser events, our platform securely sends this event data directly to Meta's Conversions API. 1. **Accurate Reporting:** Meta receives the verified event, allowing you to track conversions reliably within your Meta Ads Manager. ## Consent Mode Our platform integrates seamlessly with the [Google Consent Mode v2 standard](https://branchside.com/blog/google-consent-mode-v2-free-setup-guide/). We automatically inspect the `window.dataLayer` on your site. For server-side tracking events to be dispatched to Meta, the user must have granted consent for at least `ad_storage`. If `ad_storage` consent is missing or denied, no server-side events are sent. To include Personally Identifiable Information (PII) with the event data, the user must also grant `ad_user_data` consent. ## Setup & Configuration To start using Meta CAPI: Navigate to your form settings and select the **Conversions tracking** section. Select an existing Facebook conversion or click the **"Add conversion"** button. Select Facebook conversion (event) type and name. After the event type is selected, you will see the **"Configure server-side tracking"** button, click on it. In the pop-up window click on the **"Add Pixel"** button. Enter the details for your pixel: - **Pixel Name** - a name for your pixel; this will only be visible within your dashboard. - **Pixel ID** - copy and paste your pixel ID from the Facebook Events Manager dashboard. - **Pixel Access Token** - in the Facebook Events Manager, go to the pixel settings and find the **"Generate access token"** button. Generate a new token and copy the value. Click on the **"Add"** button. > You'll be able to use this configured pixel in other conversions and forms across your organization. > Please note that all organization members will be able to view your pixel settings. After your pixel is created, click the **"Use this pixel"** link to attach it to your front-end conversion event. Save your form. ## Field Mapping (Sending PII) To enhance your Meta CAPI event match quality, you can map your form fields to send Personally Identifiable Information (PII) to Meta. 1. On the form edit page, navigate to the **"Conversion tracking"** section. 1. Click on **"Field mapping"**. 1. Expand the **"Facebook"** section. In this section, we have listed 8 default Facebook fields that can be mapped with any of your form fields: - Email (em) - Phone (ph) - First Name (fn) - Last Name (ln) - City (ct) - State (st) - Zip (zp) - Country (country) 1. Select the appropriate form field for each Facebook PII field (e.g., Email, Phone Number, First Name). > Remember that sending PII requires the user to grant `ad_user_data` consent. > **Pro tip:** > You can use a hidden field with a predefined value to map it to Facebook parameters. > > _For example, if you run a local business, you can add a hidden field with a two-letter country code and map it to the **Country (country)** parameter. This way, our system will hash the value and send it to the pixel with every server conversion._ ## Testing Your Setup You can verify that Meta is receiving your server-side events properly using the Test Events tool: 1. Go to your Meta Events Manager and open the **"Test events"** tab for your dataset. 1. From the **"Select channel"** dropdown, choose **"Website"**. 1. Expand the **"Confirm your server’s events are set up correctly"** section. 1. Copy the **Test Event Code** (it looks like `TESTxxxxx`). 1. In your form's server-side tracking settings, paste this code into the **"Test Event Code"** field. 1. Submit a test entry on your form. Make sure you have granted consent on your website (at least `ad_storage`), otherwise the event will not fire. 1. The event should appear in your Meta Events Manager within a few moments. > Remember to remove the Test Event Code from your form settings once testing is complete, or Meta will continue to treat real conversions as test events. ## Offline Conversions Tracking Source: https://branchside.com/help/forms/offline-conversions/ Offline Conversions allow you to send conversion events (such as a "Lead" or "Purchase") that happen outside the immediate browser session directly to advertising platforms, like Facebook CAPI or Google Ads. This is perfect for businesses that track final sales or status changes in a CRM system. > Offline conversions require an active **Grow** or **Business** plan. Check our [pricing page](https://branchside.com/pricing/) for volume limits and plan details. ## Key Benefits Send events that occur days or weeks after the initial form submission. Whether a lead converts to a sale over the phone, in an email thread, or in your physical store, you can still attribute that success back to your digital ad campaigns. ## Privacy & Consent Moving tracking offline does not bypass privacy directives like GDPR or ePrivacy. Our platform automatically manages user consent to ensure compliance. The system requires explicit user consent captured at the exact time of the form submission: - **`ad_storage`:** must be granted for a submission to be eligible for offline conversions. - **`ad_user_data` (optional):** this consent level is optional for sending offline conversions. However, it must be granted alongside `ad_storage` if you want to send hashed Personally Identifiable Information (PII) like email, phone, name, etc. (used for features like Meta Advanced Matching or Google Enhanced Conversions). The consent state is saved securely alongside the lead data. When an offline conversion is triggered, our system checks this saved consent state to determine whether the conversion event can be sent at all, and whether PII can be included in the payload. ## Setup & Field Mapping To successfully send hashed customer data to conversion APIs and achieve a high event match quality, you must map your form fields to standard platform parameters. 1. On the form edit page, navigate to the **"Conversion tracking"** section. 1. Click on **"Field mapping"**. 1. Expand the section for your desired advertising platform. Here, you will find default platform fields that can be mapped to your form fields. 1. Select the appropriate form field for each platform PII field (e.g., Email, Phone Number, First Name). > If you realize your field mappings were missing or incorrect, you can fix them and try again. The data payload is calculated dynamically at the time of sending the offline conversion, meaning updated mappings will apply immediately. ## How to Send Offline Conversions You can trigger offline conversions directly from your submissions view. Click on the **"View Submissions"** button next to your form. Select the leads you want to send offline conversions for by checking the boxes next to their rows. Next, click on **"Bulk actions"** at the top of the table and select **"Send Offline Conversions"**. > **Hint:** you can use the _"Available for Offline Events"_ filter to display only submissions that are eligible for offline conversions (i.e., those with `ad_storage` permission granted and submitted within the last 90 days). In the popup window: 1. Select the platform you want to send the offline conversion to. 1. Select the event/conversion. Some conversions require you to provide a value and currency for each submission (e.g., a Facebook `Purchase` event). 1. Select the integration (e.g., your Facebook pixel). 1. Click the **"Send offline conversions"** button. The platform will extract and hash your customer data based on your field mappings, then securely dispatch the payload to the respective platform API in the background. You can view the status of your server events directly in the submissions table. Click the **"Server Events"** button to see every event sent for a specific submission (whether sent immediately upon submission or offline later). A status column indicates if the conversion was sent successfully, is still pending, or failed. ## Important Limitations ### Time Limit Offline conversions can only be sent for submissions created within the last **90 days**. Advertising platforms typically reject offline conversions older than this window. ### Missing Mappings If you fail to map your form fields, the offline conversion may fail or suffer from poor match quality scores on the ad platform. ### IP Address Restrictions For Google Ads, IP address matching is not supported for end users in the European Economic Area (EEA), United Kingdom (UK), or Switzerland (CH). # Integrations ## Integrations Source: https://branchside.com/help/integrations/ Connect your Branchside forms to the other tools you use every day. Integrations allow you to automate your workflow, save time, and send your form data exactly where you need it most. ## How Integrations Work Setting up an integration is a straightforward process. In general, for each integration you'll: 1. Choose the integration you need. 1. Connect your form. 1. Map the form fields you want to send. 1. Activate your integration. Once set up, every time someone submits your form, the selected field data will be automatically sent to your chosen application. ## Available Integrations Below you will find step-by-step guides for setting up each of our available integrations. * [Google Sheets](https://branchside.com/help/integrations/google-sheets/) * [Webhooks](https://branchside.com/help/integrations/webhooks/) * [Facebook Forms](https://branchside.com/help/integrations/facebook-forms/) ## Don't See the Integration You Need? We're always working to add more connections. If you need an integration that isn't listed here, please [contact us](https://branchside.com/#contact) to submit a request! We prioritize new integrations based on user feedback. ## Integration with Facebook (Meta) Forms Source: https://branchside.com/help/integrations/facebook-forms/ Connect your Facebook account to seamlessly import Lead Ad Forms from your Facebook Pages. Once integrated, all existing and future form submissions are automatically synced to your dashboard, giving you a centralized place to view and forward lead data. ## Step 1: Connect Your Facebook Profile Log in to your account and navigate to the [Facebook Forms page](https://panel.branchside.com/facebook-forms). Click the **"Add new Facebook Form"** button. The first time, you have to authenticate with your Facebook profile by clicking on **"Add new Facebook profile"**. A Facebook login window will appear. Sign in with your Facebook credentials. Grant the requested permissions to allow our app to access your Pages and Lead Ad Forms. Once authenticated, you will be returned to the Branchside page. > You can add multiple Facebook profiles. ## Step 2: Import Forms After connecting your Facebook profile, click the **"Add new Facebook Form"** button again. Select your authenticated profile and click **"Next step"**. Select a Page to view its available Lead Ad Forms. Select the form you'd like to sync and click the **"Add form"** button. Once imported, the app will immediately begin fetching all existing submissions for that form. This process will run in the background, so you'll have to wait for a while to view all your existing submissions from that form. ## Step 3: View Submissions To view imported lead data, simply click the **"View Leads"** button next to the form. ## Sending Data to Webhooks Once a form is imported, **new submissions are fetched automatically** — no manual action required. Every time a user submits your Facebook Lead Ad Form, the entry will appear in your dashboard in real time. There is nothing additional to configure. The sync remains active as long as your Facebook profile is connected. You can forward every new submission data to external services using webhooks. > First you have to [create a webhook integration](https://branchside.com/help/integrations/webhooks/). Click the three dots next to the form and go to **"Advanced settings"**. In the **"Webhooks"** tab select the webhook you want to trigger for every new submission. You can select multiple webhooks, so form data will be sent to every webhook. ### Form submission payload Each time a submission is received, a `POST` request will be sent to your webhook URL with the lead data in JSON format. **Payload example:** ```json { "form": { "type": "facebook", "id": "", "name": "Testing Integration", "fields": { "email": { "key": "email", "label": "Email", "type": "EMAIL", "id": "" }, "full_name": { "key": "full_name", "label": "Full name", "type": "FULL_NAME", "id": "" }, "phone_number": { "key": "phone_number", "label": "Phone number", "type": "PHONE", "id": "" } } }, "data": { "email": "test@branchside.com", "full_name": "Test User", "phone_number": "+100000000" }, "lead_id": } ``` ### Additional Form Configurations In the **Advanced settings** in the **"Config"** tab you can specify additional data you want to pass with every `POST` request to your webhook integration. These key-values will be included in the `form.config` object in the payload. **Payload example with config:** ```json { "form": { "type": "facebook", "id": "", "name": "Testing Integration", "fields": { "email": { "key": "email", "label": "Email", "type": "EMAIL", "id": "" }, "full_name": { "key": "full_name", "label": "Full name", "type": "FULL_NAME", "id": "" }, "phone_number": { "key": "phone_number", "label": "Phone number", "type": "PHONE", "id": "" } }, "config": { "custom_name": "Custom form name for my integration", "webhook": { "extra": "Config key for this nested object is `webhook.extra`" } } }, "data": { "email": "test@branchside.com", "full_name": "Test User", "phone_number": "+100000000" }, "lead_id": } ``` ## Integration with Google Sheets Source: https://branchside.com/help/integrations/google-sheets/ Automatically send form submissions directly to a Google Sheet. This is perfect for creating a simple database of your leads, tracking survey responses, or backing up your data in real-time. ## Step 1: Connect Your Google Account First, you need to give Branchside permission to access your Google Sheets. This is a secure, one-time process. Log in to your account and navigate to the [Google Sheets integration page](https://panel.branchside.com/integrations/google-sheets). Click the **"Authenticate"** button. Google will ask you to sign in and grant Branchside permission. Please approve this request. Once authenticated, you will be returned to Branchside and will see your Google Account name. ## Step 2: Create a New Integration Rule Now you can create a specific rule to connect one of your forms to a specific spreadsheet. Next to your account name, click the **"Edit"** link. Click the **"Add integration"** button to start a new rule. In the **"Search for a spreadsheet"** field, start typing the name of your Google Sheet and select it from the list. Choose the specific worksheet (tab) within that spreadsheet where the data should go. Select the form that will send data to this sheet and click the **"Select fields"** button. This is the most important step. You need to connect your form fields to the columns in your Google Sheet. In the pop-up window, click **"Add fields"** to create a mapping row. When you have mapped all necessary fields, click **"Submit"**. ## Step 3: Test and Activate Click the **"Test integration"** button. Branchside will send the most recent submission from your selected form to your Google Sheet. Check your spreadsheet to confirm the data appeared correctly. Once you're satisfied, click the **"Save Changes"** button to finalize and activate the integration. That's it! From now on, every new submission to your selected form will automatically appear as a new row in your Google Sheet. ## Webhooks Source: https://branchside.com/help/integrations/webhooks/ Webhooks are a powerful way to send data from your Branchside forms to other applications in real-time. By providing a webhook URL, you can automatically push form submission data to external services the moment a form is submitted. This allows you to connect Branchside to thousands of other apps using automation platforms like [Zapier](https://zapier.com/), [Make](https://www.make.com/), [n8n](https://n8n.io/), [IFTTT](https://ifttt.com/) or others. For example, you could: * Send lead data directly to your CRM. * Add new contacts to an email marketing list. * Create rows in an Airtable base. * Trigger custom workflows in other systems. ## Setting Up a Webhook Log in to your account and navigate to the [Webhooks page](https://panel.branchside.com/integrations/webhooks). Click the **"New webhook"** button in the top-right corner. Fill in your webhook details: - **Name** (required): a friendly name to help you identify the webhook (e.g., "New Lead to CRM"). - **URL** (required): the unique URL provided by the external service that will receive the data. - **Description**: an optional description for more context. - **Forms**: select one or more forms that will trigger this webhook. Click the **"Create"** button to save and activate your webhook. ## Understanding the Data Payload With each form submission, Branchside will send a `POST` request to your webhook URL with a JSON payload. The payload example: ```json { "form": { "type": "base", "id": "e7994b79-2a1d-4978-8c5a-94d95556b5b2", "name": "Demo form", "fields": { "user.name": { "type": "text", "name": "user.name", "label": "User name" }, "user.email": { "type": "text", "name": "user.email", "label": "User email" } } }, "data": { "user.name": "demouser", "user.email": "demouser@branchside.email" }, "structured_data": { "user": { "name": "demouser", "email": "demouser@branchside.email" } }, "metadata": { "time": 1762252573 } } ``` #### Payload Fields Explained - `form.id`: the unique ID of the form that was submitted. - `form.name`: the name of the form as you set it in the dashboard. - `form.fields`: an object containing the structure and properties of all fields in the form. - `data`: an object containing the key-value pairs of the data the user actually submitted. - `structured_data`: an object containing the submitted data organized into a nested structure based on field naming conventions. Fields with dot notation (e.g., `user.name`, `user.email`) are automatically grouped into nested objects (e.g., `{user: {name: "...", email: "..."}}`), making it easier to work with related fields. - `metadata.time`: a Unix timestamp of when the form was submitted. ## Error Handling - To ensure system stability, if a webhook URL fails to respond correctly (e.g., returns an error or times out) three consecutive times, Branchside will automatically disable it. - You will be notified by email if your webhook is disabled. # FAQ ## Frequently asked questions Source: https://branchside.com/help/faq/ Here are the answers to some common questions about Branchside. ### What is Branchside in a nutshell? Branchside is a platform that helps you build fast, secure, and scalable marketing forms for your websites and your clients' websites. ### Is there a free trial? Yes! We offer a 14-day free trial on every paid plan. No credit card is required to get started, and you'll have full access to explore everything Branchside has to offer. ### Do I need to provide credit card information to sign up? No, a credit card is not required to start your 14-day free trial. You'll only need to provide payment details if you decide to upgrade to a paid plan after your trial ends. ### Are programming skills required to create a form? No, our form builder is designed for users without technical expertise. See our visual guide, [Creating your first form](https://branchside.com/help/getting-started/creating-your-first-form/), to get started. ### Can I embed forms on any website? Yes! Our forms are compatible with any platform where you can edit the HTML, including WordPress, Shopify, Bubble, Wix, Squarespace, Webflow, and more. Simply paste the form script into your page's HTML. ### Can I get help embedding the form? Yes, absolutely! If our instructions are unclear, please contact us for personalized, step-by-step guidance. ### Can I customize the form's design? Yes, you have full control over the form's design. You can use our built-in CSS editor or write CSS directly on your website.