Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including recaptcha2 with all npm packages installed. Try it out:

var recaptcha2 = require("recaptcha2")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

recaptcha2 v1.3.3

Easy API for Google reCAPTCHA version 2 for Node.js and Express


Easy verifier for Google reCAPTCHA version 2 for Node.js

How to use

Step 1: Setup reCAPTCHA on your site

You need to receive your site key and secret key for your domain from

Follow the steps on this page to include the reCAPTCHA on your website.

Step 2: Initialize verifier

var reCAPTCHA = require('recaptcha2');

var recaptcha = new reCAPTCHA({
  siteKey: 'your-site-key', // retrieved during setup
  secretKey: 'your-secret-key' // retrieved during setup
  ssl: false // optional, defaults to true.
             // Disable if you don't want to access
             // the Google API via a secure connection

Step 3: Verifying the reCAPTCHA response

reCAPTCHA2 uses promises to validate the reCAPTCHA response, you can use one of the following methods:

  • please mention on catch, library passes error codes from google which you can translate with translateErrors method

Simple usage:

    // validated and secure
    // invalid
    console.log(recaptcha.translateErrors(errorCodes)); // translate error codes to human readable text

Optional: You can also pass the clients IP address to the validate method after the key. For more information on that, please see the reCAPTCHA documentation.

For use with Express (you need body-parser):

function submitForm(req, res) {
      // validated and secure
      // invalid
        formSubmit: false,
        errors: recaptcha.translateErrors(errorCodes) // translate error codes to human readable text

Generating the reCAPTCHA widget

recaptcha.formElement() returns standard form element for reCAPTCHA which you should include at the end of your html form element.

You can also set CSS classes like this: recaptcha.formElement('custom-class-for-recaptcha'). The default class is g-recaptcha.

<div class="custom-class-for-recaptcha" data-sitekey="your-site-key"></div>


Please see the

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free