Sending data with onFormSubmit: data being sent only for existing contacts

Hi there!

I’m trying to send data through my HB form using hidden fields. We’re testing the form with my team and it seems like if the person hitting submit is already a HB contact, then the function inside onFormSubmit runs fine and we get an email with the data we want, but if the person isn’t already a HB contact, we just get a regular email with the person’s email address (which is the only non-hidden field in the form).
Any idea what this could be?
I’ll leave my code in the comments as it seems to mark my post as spam if I put it here.

 hbspt.forms.create({
 portalId: "2961853",
 formId: "b9bc4c6d-ce95-4275-ac7c-1ca703211196",
 onFormSubmit: function($form) {
 const form = $form[0]
 const email = form[0].value
 const companySize = $('#slider')[0].value
 const paymentPeriod = annually.prop('checked') === true ? 'annually' : 'monthly'
 const currency = $('.currency')[0].innerHTML
 const total = $('#final-price')[0].innerHTML
 const data = {
 fields: [
 {
 name: "builder_company_size",
 value: companySize
 },
 {
 name: "builder_payment_period",
 value: paymentPeriod
 },
 {
 name: "builder_currency",
 value: currency
 },
 {
 name: "builder_price",
 value: total
 },
 {
 name: "email",
 value: email
 }
 ],
 legalConsentOptions: {
 consent: { // Include this object when GDPR options are enabled
 consentToProcess: true,
 text: "I agree to allow Starred to store and process my personal data.",
 communications: [
 {
 value: true,
 subscriptionTypeId: 999,
 text: "I agree to be contacted by Starred."
 }
 ]
 }
 }
 }
 $.ajax({
 type: "POST",
 url: 'https://api.hsforms.com/submissions/v3/integration/submit/2961853/b9bc4c6d-ce95-4275-ac7c-1ca703211196',
 data: JSON.stringify(data),
 success: 'success',
 dataType: 'json',
 contentType: 'application/json'
 });
 }
 });