while deduping in a contact import, you can choose whether you want new data to "fill" or "override".

is there a way to enable this feature for a form submission?

example would be an event registration

if a woman already in civi named Cindy Weiner registers for an event with her email address that we have on file, but used "weiner family" for first and last names, or used an email address that we have as a secondary one, we want her submission to be matched to the contact we have on file with the same email address, but we don't want it to override any fields.

is there any way to accomplish this?

Follow up solution, which I think is very simple to implement: Limit any given email address to one contact. This would allow us to use very lenient dedupe rules for and always connect contacts. You could add any address or phone number that doesn't match, as a secondary one.

What do you think?

  • interesting idea.
    – petednz - fuzion
    Commented Sep 25, 2020 at 6:11
  • would that mean that potentially i could fill in a form with your email and change the name to mine?
    – petednz - fuzion
    Commented Sep 25, 2020 at 6:56
  • we are trialling another idea where people get a 'have you registered before or is this your first time' pop up, if they click 'have reg. before' then we ask them to fill in another pop up, and if that matches (some combination of matching on first/last/email/cid/dob then we fire them a checksum, that way the form gets prefilled, with less chance they will change stuff
    – petednz - fuzion
    Commented Sep 25, 2020 at 6:59
  • No. It’s dedupe and fill. We know that their name is correct in our system, and if they use an email address that’s already in a contact, it’s the same person, so we don’t want them to change their name. If they add a new address, phone number etc. it should be an additional.
    – Yona
    Commented Oct 1, 2020 at 0:44

1 Answer 1


There is a partial solution available called the No overwrite extension which will prevent users from changing their name. But this only works if they are logged into your website already.

No overwrite extension

For non-logged in (anonymous) users, CiviCRM has to "guess" who it is by using its dedupe rules. You can configure which rule the event page uses here:

enter image description here

However there is no solution I know of to filter the information submitted - it will overwrite existing records if CiviCRM finds a match.

  • not sure how that answers the question. please clarify more, as the only place i see the option to choose between "fill" and "override" is during import, not in the rules themselves
    – Yona
    Commented Mar 14, 2019 at 20:30
  • Sorry I didn't read your question carefully enough. Edited my answer.
    – Coleman
    Commented Mar 14, 2019 at 20:42
  • 1
    If you really want this feature you can sponsor the core team or another developer to create an extension that gives you more control over how contacts are updated from the front-end.
    – Coleman
    Commented Mar 14, 2019 at 21:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.