/bubble-tutorials

How to build a contact form in Bubble

Learn how to build a contact form in Bubble with simple steps, best practices, and tips to boost user engagement and streamline submissions.

Matt Graham, CEO of Rapid Developers

Book a call with an Expert

Starting a new venture? Need to upgrade your web or mobile app? RapidDev builds Bubble apps with your growth in mind.

Book a Free Consultation

How to build a contact form in Bubble

A basic contact form in Bubble is built by placing input fields on a page (like Name, Email, Message), then creating a workflow on the Submit button that either saves the data to the database, sends an email, or both. The key is: inputs collect data, workflows process it, and the database or email actions store or send it.

 

Core Steps to Build a Contact Form

 

In Bubble, a contact form is simply a group of Input elements plus a Button with a workflow. Inputs don’t store anything by themselves — they only hold temporary values until you use them in a workflow. The workflow handles saving the message to your database and/or sending an email.

  • Add three elements on your page: Input Name, Input Email, and a Multiline Input for Message.
  • Place a Button labeled Submit.
  • Create a database type called Contact Message with fields: Name (text), Email (text), Message (text).
  • Click the Submit button and create a When Button is clicked workflow.
  • Add action: Data → Create a new thing and choose Contact Message. Map each field to the corresponding input's value.
  • If you want an email: add action Email → Send email and use the same input values.
  • Optionally: add action Element Actions → Reset relevant inputs to clear form after submission.

 

Example of a Send Email Action

 

This is how the email body can look inside the Send email action (Bubble uses plain text or dynamic data, not code):

Name: [Input Name's value]
Email: [Input Email's value]
Message:
[MultilineInput Message's value]

 

Important Notes

 

  • Privacy: If you store messages, set Privacy Rules so only admin roles can see Contact Message entries.
  • Validation: Use Conditions on the Submit button (e.g., disable when Input Email isn’t valid).
  • Feedback: Show a success message using a popup or a custom state.

Explore More Valuable No-Code Resources

How to integrate Bubble.io with Git?

Learn how to seamlessly integrate Bubble.io with Git through our comprehensive step-by-step guide. Perfect for beginners and professionals.

Explore

How to integrate Bubble.io with Reddit Ads?

Learn how to seamlessly integrate Bubble.io with Reddit Ads using our easy step-by-step guide. Boost your ad management today!

Explore

How to integrate Bubble.io with AWS S3?

Explore our step-by-step guide on integrating Bubble.io with AWS S3, making your app development process more efficient and secure.

Explore

How to integrate Bubble.io with Lucidchart?

Follow our step-by-step guide to seamlessly integrate Bubble.io with Lucidchart, enhancing your workflow & productivity.

Explore

How to integrate Bubble.io with Kentico?

Learn how to seamlessly integrate Bubble.io and Kentico with our comprehensive, easy to follow step-by-step guide.

Explore

How to integrate Bubble.io with Box?

Discover easy-to-follow steps for integrating Bubble.io with Box. Boost your workflow and secure your files seamlessly today.

Explore

Stuck in Bubble.io? We’re here to help!

Fix broken workflows | Optimize logic | Boost performance | Scale with confidence

4.9
Clutch rating 🌟
600+
Happy partners
17+
Countries served
190+
Team members

By clicking “Accept”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.

Cookie preferences