Help Center

How Can We Help You?

Browse topics below or jump straight to a section.

Bubble.io Plugin

Installing, configuring, and wiring up the plugin in your Bubble app

How do I install the Survey Kiln plugin?

In your Bubble editor, go to Plugins → Add Plugins and search for Survey Kiln. Click Install and confirm the $15/month subscription through Bubble's billing.

Once installed, the Survey Kiln Form element will appear in your Elements panel on the left side of the editor.

How do I add a survey to my Bubble page?

After installing the plugin, drag the Survey Kiln Form element from the Elements panel onto your page — just like any other Bubble element.

In the element's properties panel, paste in your Survey JSON (exported from the Survey Kiln builder) and configure the display options. The survey will render exactly as designed when your page loads.

How do I trigger a survey from a Bubble workflow?

The Survey Kiln element exposes a Show Survey action in your workflow editor. You can trigger it from any Bubble event — a button click, page load, a custom state change, or any other workflow trigger.

You can also conditionally show or hide the element using Bubble's standard conditional logic on the element itself.

How do I save survey responses to my Bubble database?

The Survey Kiln element fires a Survey Completed event when a user submits a survey. In your Bubble workflow editor, add a trigger on this event and use a Create a new thing action to save the response data to your database.

The response object contains all answers keyed by question ID, plus metadata like completion timestamp and survey ID. You can map any field to your Bubble data types.

The survey element isn't appearing on my page — what should I check?

A few things to check:

  • Make sure the element is not hidden by a conditional rule
  • Confirm your Survey JSON is valid — paste it into a JSON validator to check for syntax errors
  • Check that the element has a defined width and height in the editor
  • Try a hard refresh (Ctrl+Shift+R) on the preview page

If the issue persists, contact support with your app name and a screenshot.

Can I display different surveys to different users?

Yes. The Survey JSON property on the element can be set dynamically using Bubble's expression editor. You can store multiple survey definitions in your database and pass the appropriate one to the element based on user properties, page parameters, or any other condition.

Survey Builder

Creating surveys, question types, and conditional logic

How do I create my first survey?

Open the Survey Kiln builder and create a new survey. Use the Components pane to add questions to your survey canvas. Each question can be configured — label, placeholder, whether it's required, help text, and more — in the properties panel.

The builder uses Bubble states to pass the survey definition to your app — there is no manual JSON export step.

How do I reorder questions?

Drag the handle icon () on the left side of any question card up or down to reorder it. The survey will render in exactly the order shown in the builder.

How does conditional logic work?

Select any question and open the Logic tab in its properties panel. You can set rules like "show this question only if Question 2 answer equals 'Yes'".

Conditions support equals, does not equal, contains, is answered, is not answered — and you can chain multiple conditions with AND / OR logic. The renderer evaluates these rules in real time as the respondent moves through the survey.

How do I build a multi-page survey?

In the Components pane, click Add a Page to add a new page to your survey. Questions on each page are shown to the respondent one page at a time, with navigation controls to move forward and back.

The progress bar in the rendered survey automatically reflects the total number of pages.

What question types are available?

Survey Kiln includes 27 question types across four categories:

  • Choice & Selection — Multiple choice, single select, dropdown, checkbox, ranking, image choice, yes/no
  • Scale & Rating — Star rating, NPS, numeric scale, slider, matrix grid
  • Open-Ended & Input — Short text, long text, email, phone, URL, number, date picker, file upload
  • Layout & Flow — Section break, page break, info statement, conditional display block
Can I preview my survey before exporting?

Yes. Click Preview in the builder to open a live preview of your survey exactly as respondents will see it — including conditional logic, multi-page navigation, and validation. Preview mode does not submit any data.

Renderer

How surveys are displayed, styled, and submitted to your app

What is the renderer and how does it work?

The renderer is the component that reads your Survey JSON definition and displays it as an interactive form for your users. In the Bubble.io plugin, the renderer runs inside the plugin element — you don't configure it separately.

It handles question rendering, validation, conditional logic evaluation, page navigation, progress tracking, and firing the completion event with the full response object.

Can I customize the look and feel of the survey?

Yes. The Survey JSON includes a theme block where you can set your primary color, font, button style, border radius, and background color. Changes made in the builder's Theme panel are reflected in real time in the preview and carried through to the exported JSON.

For Bubble.io apps, theme properties can also be overridden in the plugin element's properties panel if you want to match your app's branding without editing the JSON.

Is the renderer accessible?

Yes. The renderer is built to WCAG 2.1 AA standards. All interactive elements have proper ARIA labels, focus states are clearly visible, keyboard navigation works across all question types, and color contrast meets the AA threshold.

Screen reader compatibility is tested against VoiceOver and NVDA.

What does the response object look like?

When a user submits, the renderer fires a completion event with a response object structured like this:

// Response object
{
  surveyId: "your-survey-id",
  completedAt: "2026-03-02T14:32:00Z",
  answers: {
    "q_001": "Very Good",
    "q_002": 8,
    "q_003": "The onboarding was seamless."
  }
}

Each key in answers corresponds to the question ID you set in the builder. You can map these directly to fields in your Bubble database.

Does the renderer work on mobile?

Yes. The renderer is fully responsive. On smaller screens, multi-column layouts stack vertically, touch targets are sized appropriately, and the keyboard does not unexpectedly obscure the active question. It has been tested on iOS Safari and Android Chrome.

Shape the Product

Request a Feature

Have an idea that would make Survey Kiln better for your Bubble.io app? We read every submission and use them to drive the roadmap.

Every request is read
We review all submissions, not just the popular ones.
Drives the roadmap
Highly requested features move up in priority.
We follow up
Leave your email and we'll let you know when it ships.

Still Need Help?

Can't find what you're looking for? Reach us directly.