Prevent duplicate responses and spam

Decide what makes a response a duplicate, add reCAPTCHA, and ask respondents to verify their email.

Published

4 min read

On this page

When one person answers twice, your counts drift and a reviewer starts asking questions. David, who is running a questionnaire for his thesis, needs every student counted once, and he needs to explain in his methods chapter how he made sure of that. PingPolls gives him a few checks that run before a response is accepted, so duplicates are refused at the door instead of being cleaned out of a spreadsheet later.

By default, every form already allows one response per browser. When a respondent opens the form again after submitting, they see their earlier result instead of a fresh form. The settings below let you tighten or relax that.

The Duplicate responses card, where you choose what counts as the same respondent

How to set duplicate checks

  1. Open your form from Forms and go to the Settings tab. Only the form owner can change these settings.
  2. In the Duplicate responses card, open the list and choose what to match. You can pick from three groups.
    • Respondent: Browser (respondent ID), Network (IP address) and Verified email.
    • Answer to: a short text, email, link, phone or number question in your form.
    • Custom field: any of your custom fields.
  3. Combine up to 5 parts. A submission is refused only when all the parts you chose match an earlier response.
  4. Click Save settings.

A few details are worth knowing before you choose.

  • Network (IP address) treats everyone on the same network, like an office or a school, as one respondent. That can block classmates who answer from the same campus Wi-Fi.
  • Emails are compared without case or spaces, and phone numbers are compared in international format, so the same number typed in a different style still counts as one.
  • If you match on a question that respondents may skip, they can't submit while it's chosen, and the card names those questions.
  • When a duplicate is caught, the respondent sees "A matching response has already been submitted" and no response from your quota is used.

To accept repeat answers instead (for a sign-up sheet or a daily check-in), clear every choice so the list reads Accept duplicates. Respondents can then submit each time they open the link, and their result shows once after each submission.

How to ask respondents to verify their email

Verified sign-in (Pro and Teams) asks respondents to sign in with Google or GitHub before they answer, and binds that verified email to their response. There are two ways to turn it on.

  • In the studio, open an email question's Question settings and switch on Use verified email. The answer is filled with the sign-in email and locked.
  • In the Duplicate responses card, choose Verified email. Respondents will sign in to verify their email once you save.

Respondents then see "Verify your email to continue" with Continue with Google and Continue with GitHub buttons. For David, matching on verified email means one response per student account rather than one per laptop.

The Bot protection card with the reCAPTCHA switch

How to turn on reCAPTCHA

Every form already has two quiet protections that are always on, a hidden honeypot field and a single-use code that expires after 10 minutes. For more, the Bot protection card adds Google reCAPTCHA on any plan.

  1. In the Settings tab, find the Bot protection card ("Check respondents with Google reCAPTCHA before final submission") and turn its switch on.
  2. Click Save settings.

The reCAPTCHA check runs when the respondent submits (after any file uploads finish), never when the form opens, and Google's script loads only at that moment. A submission with a low reCAPTCHA score is blocked. Each respondent gets up to 5 checks and each network up to 30 every 10 minutes, and a pass is reused for 5 minutes.

Frequently asked questions

Do duplicate checks need a paid plan?

No. Browser, network, answer and custom-field checks work on every plan. Only Verified email needs verified sign-in, which comes with Pro and Teams. On Free, picking it opens the upgrade dialog instead.

Can I limit who opens the form, not just who submits?

Yes. A password-protected form asks for a password before anything shows (Pro and Teams). You can also set a close time in form settings.

Does Certiscore™ catch duplicates or bots?

No. These checks decide who can submit. Certiscore is a confidence signal that shows how sure respondents were about their picks once they did, and it can't tell a person from a program.

Collect one clean answer per respondent

Duplicate checks and reCAPTCHA work on every plan, and verified sign-in comes with Pro and Teams.

Show me the plans
  • Conditional logic

    Use conditional logic in PingPolls to skip sections, route respondents and pick a result page from their answers. Free on every plan, set up in the studio.

  • Calculated custom fields

    Calculated custom fields in PingPolls add up scores from answers, show them on the result page and land in your CSV export. Free on every plan.

  • Prefill links and API

    Prefill form fields in PingPolls with named links or the prefill API, so respondents skip what you already know and your segments stay clean.

  • Share your form and QR code

    Share your PingPolls form by link, custom domain, embed or a printable QR code, and choose exactly where respondents can open it from the Sharing tab.

  • Embed your form

    Embed your PingPolls form on any website with one snippet, or paste a no-code embed link into Notion, Ghost or Canva. The form resizes itself to fit.

  • Certiscore™ confidence signal

    Certiscore™ turns how long each pick took into a confidence signal on preference ranking and sentiment cards, one more quality check for your survey data.

Back to Features
Discord Logo Join PingPolls Community

PingPolls uses necessary cookies to keep you signed in and secure. With your OK, embedded videos and other third-party content may set their own cookies. Privacy policy