AI & ML interests

None defined yet.

Recent Activity

ivanjackson  updated a Space about 21 hours ago
HumanizerBench/README
ivanjackson  published a Space about 21 hours ago
HumanizerBench/README
ivanjackson  updated a dataset 4 days ago
HumanizerBench/humanizerbench
View all activity

Organization Card

HumanizerBench is a monthly benchmark of AI humanizers. Every tool rewrites the same freshly generated texts, and every output is scored by five commercial AI detectors alongside meaning preservation and readability.

Every input, every humanized output, every detector verdict and the scoring code is published, so the rankings can be recomputed from scratch rather than taken on trust.

HumanizerBench is operated by WriteHuman, one of the tools measured here. WriteHuman gets the same prompts, the same scoring code and the same penalties as every other tool, and its raw runs are published alongside everyone else's.

What each cycle measures

Every tool receives the same 33 prompts, generated fresh for that cycle across categories such as academic essays, news articles, cover letters, marketing copy and discussion posts. Each output is submitted to five commercial detectors: GPTZero, Originality.ai, Copyleaks, Winston AI and ZeroGPT.

Four things are scored, and combined into a composite out of 100:

Component Weight What it captures
Detector bypass 42% How often the five detectors call the output human
Meaning preservation 32% Whether the rewrite still says what the source said
Readability 16% Whether the prose survives the rewrite
Consistency 10% Whether performance holds across writing categories

Penalties are deducted on top for quality failures: meaning drift, length inflation or deflation, refusals, or output returned unchanged.

Why the prompts can be trusted

The prompt set for each cycle is seeded from a random nonce that stays private while the cycle runs. Only sha256(nonce) is published when the cycle opens, in commit.json.

When the cycle closes, the nonce, the templates, the value banks and the selection algorithm are all published. Anyone can re-derive the prompt set and confirm it matches what the tools were actually given. Because the commitment is public before any tool runs, the prompts cannot be reselected afterwards to favour a particular result.

Verify a cycle yourself

git clone https://github.com/HumanizerBench/humanizerbench
cd humanizerbench && npm install && npm run verify

This checks both halves: that the revealed nonce matches the published commitment and regenerates the prompt set, and that the frozen scoring.js plus the raw detector verdicts reproduce the published leaderboard.

What is in the dataset

Four configs, each carrying a cycle column so the cycles concatenate:

Config Rows One row is
leaderboard 52 a tool's scores for one cycle, with per-detector and per-category breakdowns
tests 1,677 one tool's rewrite of one prompt, with the input and output text
samples 129 one source text that every tool was given
detector_scores 8,341 one detector's verdict on one output
from datasets import load_dataset
lb = load_dataset("HumanizerBench/humanizerbench", split="train")

The untouched audit tree sits alongside the flat tables, one directory per cycle, including the frozen scoring.js that produced that cycle's leaderboard.

Coverage so far

Cycle Tools Prompts Methodology
September 2026 14 33 v1.2.0
August 2026 12 33 v1.2.0
July 2026 13 33 v1.2.0
June 2026 13 30 v1.0.0

New cycle on the first of each month. Methodology changes are versioned and recorded in CHANGES.md.

models 0

None public yet