Academic Tools. Smarter Research.
Open Journal SystemsStopping Spam Submissions in OJS

Stopping Spam Submissions & Fake Reviewer Accounts in OJS

Comprehensive anti-spam guide for OJS editors and administrators. Learn how to stop bot registrations, configure reCAPTCHA v3, restrict reviewer roles, and clean spam user databases.

Waking up to find 5,000 automated bot registrations and 200 spam submissions promoting foreign casino sites in your editorial queue destroys productivity; here is how to lock down your journal.

Real Problem

Open registration forms in OJS are continuously targeted by global automated spam bots that flood submission queues with malicious papers and pollute reviewer databases.

Practical Solution

Implement Google reCAPTCHA v3 or Turnstile on registration and submission forms, disable public self-registration for reviewer roles, deploy honeypot fields, and prune spam user accounts via SQL.

OJS spam registration fixblock fake reviewers OJSOJS honeypot captchastop spam submissions Open Journal SystemsPKP OJS anti-spam

The Epidemic of Automated Spam in Scholarly Publishing

Academic journals published on Open Journal Systems are high-value targets for automated botnets. Because OJS includes public user profile pages, author bio fields, and open registration forms, spam networks program bots to register tens of thousands of bogus accounts.

These fake profiles are stuffed with hyperlinks to illicit gambling, counterfeit pharmaceuticals, and cryptocurrency scams. In worse cases, automated bots submit fake manuscripts to test whether the journal allows unvetted auto-publishing or file uploads.

Step 1: Disabling Public Reviewer Self-Registration

The most common mistake made by new journal editors is allowing public registrants to check the box: "Yes, I would like to be contacted to review submissions for this journal."

Bots check this box automatically, filling your reviewer selection pool with thousands of fake accounts.

Fix:

1. Navigate to Settings > Users & Roles > Site Access Options.

2. Ensure that users can register only as Authors or Readers.

3. Reviewer roles should always be assigned manually by Section Editors.

Step 2: Configuring reCAPTCHA in config.inc.php

OJS features native support for Google reCAPTCHA. Open config.inc.php and locate the [captcha] section:

[captcha]

captcha = On

captcha_on_register = On

captcha_on_submit = On

recaptcha = On

recaptcha_public_key = "YourSiteKeyHere"

recaptcha_private_key = "YourSecretKeyHere"

recaptcha_enforce_ssl = On

Step 3: Enforcing Email Account Verification

Bots frequently use non-existent or fabricated email addresses. Forcing email verification stops automated registration loops dead in their tracks:

[email]

require_validation = On

When enabled, a newly registered user cannot log in, submit a manuscript, or update their profile until they click the confirmation link sent to their registered inbox.

Step 4: Database Hygiene: Bulk Deleting Spam Accounts

To purge spam users without affecting real scholars, execute a targeted query that identifies accounts with zero editorial history:

DELETE FROM users

WHERE user_id NOT IN (

SELECT DISTINCT user_id FROM stage_assignments

UNION

SELECT DISTINCT reviewer_id FROM review_assignments

UNION

SELECT DISTINCT user_id FROM user_user_groups WHERE user_group_id IN (SELECT user_group_id FROM user_groups WHERE role_id IN (1, 16, 256))

)

AND date_registered > '2024-01-01'

AND user_id NOT IN (SELECT DISTINCT submitter_id FROM submissions);

Step-by-Step Action Plan

1

Enable CAPTCHA on Registration & Contact

Configure reCAPTCHA v2/v3 or hCaptcha in config.inc.php and activate CAPTCHA validation in Site Settings.

2

Disable Public Reviewer Self-Registration

Uncheck "Allow users to register as reviewers" in Journal Settings > Users to ensure reviewers are appointed by editors only.

3

Implement Honeypot Anti-Bot Fields

Add hidden CSS-styled form fields that bots fill out automatically, immediately disqualifying their submissions.

4

Enable Email Account Verification

Activate require_validation in config.inc.php to require new users to click an email verification link before logging in.

5

Bulk Prune Spam Accounts via SQL

Identify and remove spam users who have never authored or reviewed a paper using targeted database cleanup queries.

Questions People Usually Ask

Why do bots register fake accounts on academic journals?

Spam syndicates register accounts to place backlinks in public user profiles (bio, affiliation, website) to boost third-party SEO rankings, or to probe for open submission upload vulnerabilities.

Does Google reCAPTCHA v3 disrupt genuine academic authors?

No. Unlike legacy image puzzles, reCAPTCHA v3 runs invisibly in the background, analyzing user behavior without presenting friction to legitimate scholars.

How can I safely delete 10,000 spam users in OJS?

You cannot use the web UI to delete 10,000 accounts. You must execute an SQL cleanup script that purges users who have zero roles, zero submissions, and zero review assignments from the users and user_settings tables.

Flooded with Spam Registrations in OJS?

AcademiaTech cleans contaminated OJS user databases and deploys advanced bot-shield protections to permanently block spam submissions.