I m doing research on a new and fairly large new project and came across HUGO. The team likes it a lot (and so do I), but I cannot wrap my head around one thing:

We rely (heavily) on (html) forms, rather complicated ones to be precise. We were planning to make them on WP using gravity and some add-ons to it. We understand, that we do not have a backend (as in WP), (that’s fine), but when we try to find solutions for dealing with forms, people come up with 3rd party services (e.g. Google Forms or Formkeep), that require the data to be processed (and stored) at their servers. This is a nogo for us (due to GDPR rules).

Now, here are our questions:

  1. is it correct, that there is no like build-in functionality to hugo that handels forms and
  2. we could re-create the forms in html and js ourselves. Would it be an option to iframe our custom made form and have it processed by hugo?

Thank you for your help!


Hugo is a static site generator so no, there is no inherent way to handle forms.

Anything you can stick in a static website, including an iframe, you can put in a Hugo site, without trouble.

Personally, we use a database that generates a js form to use on any static page, so we generate those on data tables, and put the resultant form on some hugo page.

This is an example of what it looks like:


Be sure you set unsafe = true if you’re embedding.

See manual:

1 Like

Hi Guido,

Hugo is designed to be content agnostic and supports a number of different Media Types, HTML being just one of them! Depending on your requirements you may be able to adapt some of composable Form controls I’ve created using Hugo Shortcodes. Here’s a quick rundown of the form controls I’ve wrapped using Hugo’s excellent Golang templating abstractions:

  • Form
  • Form Group
  • Button
  • Button Group
  • Label
  • Text Input
  • Text Area
  • Select
  • Label
  • Help Block

Docs for each of the above here and the implementation here (AGPL-licensed). Also, out of curiosity, are you here because the recent German DPA guidance?


1 Like

Hey Josh!

Thank you for your answer. I’ll try to get the gist of it as good as possible.

Also: no, I didn’t come to hugo, because of it, but it looks interesting.

Truth is: we came to the conclusion, that dynamic website cms is largely a mousetrap: it seems like a lot of what looks great on the surface turns out to be a privacy nightmare and on the other hand, when you turn everything off, that is a danger to your users’ privacy you end up with pretty static pages. So what would we need a dynamic cms for?

And this is not even taking into account, that you end up with a system that is not only vulnerable to security issues (from so many different angles) but is also commonly used so that when sh** hits the fan, chances are you will be among the first to get hit. We checked and found, that in order for our form to work we were using 60+ plugins, tools and widgets. That seemed like mad.

So, here we are looking and trying stuff and found hugo and from what we see it looks very well done. Thank you for working on it!

– Guido

1 Like

I’ll will check this. Thank you!

This is the eventual conclusion many of us eventually came to when we started using static sites again. If you need any guidance as you move forward please feel free to DM me or reach out via my site. Cheers and good luck.


True. You end up with a big maintenance burden that ironically comes about because you tried to save time on the initial build. To me, it’s exactly the wrong thing you need, thinking about sales of site dev and maintenance.

1 Like