Read the documentation

Google reCAPTCHA v2recaptcha

The classic checkbox, verified against Google. Rendered through CaptchaField("recaptcha"), like any other form field.

The code

class ContactForm(forms.Form):
        name = forms.CharField(max_length=100)
        email = forms.EmailField()
        message = forms.CharField(widget=forms.Textarea)
        captcha = CaptchaField("recaptcha")

The POST field this widget submits is named by the service, not by the form. Look at the request payload: the value arrives under recaptcha's own field name, and the widget finds it anyway.

See the same provider through the template tag · Google docs