Deftform Changelog

Subscribe to updates
© 2025 Deftform Changelog

Bugfix

May 21, 2025

Today, we released a quick fix for the issue of field and form duplication.

Generally, this type of update wouldn’t usually make it to our changelog, but it was reported several times over the last three days, and we want to ensure that people are aware it has been resolved.

What happened?

When duplicating a field with validation options, those validations would be applied to the new field and removed on the original field. Additionally, when duplicating an entire form, validation options were not duplicated.

It should work as expected now. When duplicating a field with validation options, those options now remain on the original field and are duplicated to the new field. Same goes for the form duplication.

Please note that it's currently not possible to duplicate field conditions. This isn't a bug, but still a slight technical hurdle. We'll get to that in another update.

May 12, 2025

Today we released a mostly bugfix related update. But we also added a new feature and improvements.

Passkeys

It is now possible to login via a Passkey. Passkeys allow password-less login by generating a secure key stored in apps like 1Password, macOS password manager, an external security key, and more.

To enable Passkey access, head over to your account settings and enable Passkey login.

Enable option for embedded forms

It is now possible to manually initialize and re-initialize embedded forms. You can read more about this in the dedicated help article.

Bug fixes and improvements 

A couple of bugs have been fixed. Some notable ones are:

  • We fixed an issue that occurred when multiple Stripe price IDs are added and one or more needed to be removed.
  • We also fixed 3 issues related to the AI Assistant where it sometimes got stuck, or threw an error 500.
  • We also made sure that when using Google Sheets, the created at date is in the same timezone that is specified in the workspace settings.

⚠️ Google Sheets location update (possible breaking change)

If you enabled the "Capture location" in the form settings, previously, this information was not added to Google Sheets. We now send these values (City and Country) as well.

But that will likely break existing Sheets because the sorting is now incorrect. If you experience issues, please clear (not delete) your Sheet and run the bulk import once.

We also made some smaller UI and UX improvements that you may or may not notice.

May 02, 2025

Today we released a couple of smaller improvements, additions and fixes.

Improved webhooks

Payloads for webhooks would always include the label of the field, and the given response. This can become somewhat unreliable when changing the label in the form. We now add a UUID to the payload which will always stay the same for a specific field.

Additionally, we added an option to add a custom key which will also be sent in the payload. This value can be set in the field settings.

{
"label": "Full name",
"response": "John Doe",
"uuid": "836b1599-8875-4fa8-a6b4-7cad1ae455f5",
"custom_key": "full_name"
},
{
"label": "Email address",
"response": "john@example.com",
"uuid": "bed048f2-a61d-4fc0-82c9-e9fe52e19420",
"custom_key": "email_address"
}

We also added the referrer. This will only be filled (not null) with embedded forms.

Accordion for Paragraph / Text element

We added an option to make the "Paragraph / Text" element collapsable.

ALTCHA custom label

When using the ALTCHA captcha, people have to click a checkbox to verify.

By default it says "I'm not a robot" and when done "Verified"; you can change these texts now. Head over to the general workspace settings to edit the defaults.

New fonts added

We added 2 new fonts that can be used for custom styles: "Amatic SC" and "Raleway". It is now also possible to set different fonts for the body text and headlines.

Misc and fixes

Embedded forms (iframes) now have the allow="camera; microphone" attribute.

Adobe Reader would have problems with long file URLs breaking into new lines in PDF files. We adjusted the file-naming syntax to use underscores (_) instead of hyphens (-) for spaces. That change should prevent Acrobat Reader from altering the link.

We also fixed an issue with duplicate field identifiers when duplicating forms. This would cause issues when pre-filling fields, because an identifier that is supposed to only exist once, would exist 2 or more times and the functionality would then simply not work.

We also fixed 6 other, smaller bugs that were reported by our customers.

Mar 09, 2025

Many of our customers noted (and partially complained) that webhooks are not sent in real-time, but with a delay. It has been like that ever since we introduced webhooks. This delay was on purpose and only lasted up to 1 minute.

But we get it, you want the data to be transmitted instantly and today we'd like to report that this is now the case. We hope you like this small, but for many, important change.

While we were at it, a bug has been fixed that would prevent webhooks from being sent if a prior webhook event in the queue had failed. Also, we now send email notifications to admins if an event failed and mark the failed endpoint with a warning (and the error message, if one was given).

Mar 06, 2025

We added some additional styling options so your forms can be further tweaked. Here is a demo of a wider form area, different font, no border radius and more: https://share.deftform.com/3F7jPn

Additional fonts

You can now select a different font if our default one (Inter) is too boring for you. For now, we added 10 additional fonts to choose from. We will likely add new fonts every once in a while.

If you want us to add a specific font, head over to https://fonts.bunny.net and pick the one you like. Let us know via in-product chat. Please note that we will not add fonts that are very hard to read.

Making form frame wider

We also added an option to make the form area wider. You can choose from 5 additional widths now.

Padding option for embedded forms

Due to popular demand, we also added an option to add padding to embedded forms. You can choose between 4 different values.

What else

We also added options to change the border radius for fields and buttons and also added an option to set the active color for checkboxes and radio boxes ("Single select" and "Multi select").

And last but not least, we added an option to upload a custom CSS file.


🔧 Small bug fix

A bug was fixed that would prevent Stripe products from being added due to the length of the product description.

Feb 03, 2025

Today we fixed an issue where uploading images from within the backend area would result in a server error (Error 500). Thanks for reporting and sorry for the short interruption.

Dec 19, 2024

We were made aware of an issue with our Google Sheets integration that we have now fixed.

On December 11, our underlying OAuth library got updated and introduced a change that broke our integration. The updated library did not mention any breaking changes and we're currently in contact with the developers of the library to check if we missed something.

As a consequence, older responses may not have synced to existing sheets and new connections could not be added. After we deployed the fix, earlier submissions should have been added to existing sheets as they were still in a "pending" state.

To make sure sheets are up-to-date, we suggest to manually clear the sheet (= delete all data in the sheet) and use our bulk sync function to import all submissions. Alternatively, you may delete the connection in the form and add a new one and then bulk sync the submissions.

But if your responses count is already the same as the rows in your sheet (minus the heading), there is nothing for you to manually sync.

We now have added dedicated error logs to the Google Sheets integration so in case something like that happens again, we'll be notified right away.

We're sorry for the inconvenience.

Just in case...
Dec 14, 2024

We just released early access to our API, added an option to enable a time picker, and fixed various, smaller bugs.

API in public beta

Our API is now available and should be considered public beta. Not all planned endpoints are available yet, and there is no official documentation yet. Nonetheless, feel free to head over to the new API settings to see how to get started.

Time picker option for date picker field

We added an option to enable a time picker if a form has a date picker field. This has been requested quite a few times, and we're happy to finally offer this option.

As noted in a recent update, you can change the locale of your workspace, which will change the language of the date picker, and it will now also take the time picker into effect. If you select "English US", you will have AM and PM in the 12h format; if you selected German, you will have 24h format. 

Fixes

We also fixed a handful of smaller issues and improved the field validations a little.

Nov 28, 2024

We were made aware of an issue regarding our Google Sheets integration. It was not possible to create a new connection on a workspace level because the connection was always assigned to the user who connected the Google account. This was not necessary the workspace admin and that was causing issues when trying to create a new connection in a different workspace (by the same Deftform account).

So the fix basically means that connections to Google accounts are now assigned to the actual workspace, not a single user account.

We created a migration script to create missing integrations for existing workspaces. Everything was working fine for our test accounts and syncs continued to work.

If, however, you run into issues, please remove the connection and create a new one. It should not be necessary though, but just in case. After that, simply run a one-time bulk import to re-sync all data.

Nov 19, 2024

When we introduced the option to send emails via a custom SMTP server, a small bug slipped through that affected all emails – not just the ones sent via a custom SMTP server. Whoops.

First off, only emails to admins were affected by this issue, and it only occurred if more than one email address was specified. For example, if you added admin1@example.com and admin2@example.com, both would receive 2 emails when a new response came in with both of them as receivers.

That issue is now fixed. Every admin only receives one email per submission now, just as intended. Thanks for reporting and sorry for the inconvenience.