Workflow Test Lab
real accounts / measured in operations / broken on purpose / published with evidence

Advertising disclosure: this page contains no advertising (affiliate) links. If we add any, each will be marked next to the link and this notice will be updated. Where we rely on vendor documentation or have not tested something, the text says so.

What a HubSpot Free form actually does with a client intake, measured over two runs

type tested workflowtested 2026-08-23evidence hubspot-native-intake-v1see the run recordstatus approved for publication

Tested 2026-08-22 and 2026-08-23 on a HubSpot Free portal, with no automation tool attached. We built a six field intake form in HubSpot's own form builder (name, email, company, service interest, budget range, message), published it as a standalone page, and submitted a scripted set of cases twice on separate days. Every result below was read back through HubSpot's API and the receiving inbox. The full case by case record is on the evidence record for this pack.

This page answers one question: if you are already on HubSpot Free, what do you get from its own form, and what do you not get. The comparison against a form plus automation stack is on the decision page.

What it does, measured

What it does not do, measured

Two behaviours worth knowing before you rely on the record

Two submissions arriving at almost the same moment produce one contact, and the counter shows one. We submitted the same new address twice in parallel, 106 milliseconds apart in run 1 and 235 milliseconds apart in run 2. Both runs produced exactly one contact, which is the good news. But both runs also produced two notification emails (one "new submission", one "reconversion"), while the contact's own submission counter read 1, not 2. In run 1 it still read 1 twenty hours later, so this is not indexing lag. If you count intake volume from the contact record, a near simultaneous duplicate can be missed; the notification stream showed both.

In both runs the later arrival supplied the stored values. Read from the submit timestamps rather than our case labels: run 1 kept the submission that arrived 106 milliseconds second, run 2 kept the one that arrived 235 milliseconds second. We did not measure how the server ordered the two requests internally, so treat this as a consistent observation across two runs rather than a documented rule.

A note for anyone monitoring their own form with a script

We hit this while automating the tests, and it is not a lead reliability finding, but it may cost someone a day of confusion. In our lab, a submission sent by a browser whose user agent string contained "HeadlessChrome" received the normal success page and created nothing: no contact, no notification. The same submission from an ordinary Chrome window was created normally, including when the automation flag was left visible. So the filter followed the user agent string, not automation as such. Observed twice for the drop, and once for the ordinary browser control.

We did not test a human visitor's browser being wrongly filtered, and we did not look at HubSpot's own submissions or spam views to see whether the dropped submissions were recorded there. Nothing here says that ordinary visitor submissions are lost. What it does mean: if you monitor your own form with a headless browser, a green result can be false.

Who this is enough for

Enough, on the evidence above: you want inbound contacts in HubSpot Free with their form answers, you handle the reply yourself from the notification email, and you do not need a deal record created automatically.

Not enough: you need the lead to get an immediate acknowledgement without publishing a postal address, you need a deal in a pipeline per intake, or you need duplicate submissions merged rather than one of the two silently kept.


Evidence pack hubspot-native-intake-v1, two independent runs on 2026-08-22 and 2026-08-23, verified through the HubSpot API and the receiving inbox. Case by case results, limitations and artifact list on the evidence record. Material statements map to this page's claim ledger; anything untested is labeled.