STATISTICS / METHOD GUIDE
GRIM and GRIMMER:
arithmetic screening.
Short answer: GRIM (Granularity-Related Inconsistency of Means) asks whether a reported mean could come from integer-valued observations at the stated sample size and rounding precision. GRIMMER adds necessary conditions for the reported standard deviation. Passing these checks does not prove that a dataset exists; an inconsistency is not evidence of fraud.
Assumptions that must hold
- Each observation is an integer on a known scale, for example 1 to 5.
- The sample size is the number actually used for the reported statistic.
- The mean and standard deviation are rounded to the stated number of decimals.
- No weighting, transformation, exclusion or imputation changes the simple integer-sum relationship.
How does the GRIM test work?
The sum of n integers is an integer. A reported mean m rounded to d decimals implies a sum near n × m. If no integer sum is compatible with the rounding interval and the scale bounds, the reported mean is inconsistent under the model.
Worked examples
Incompatible: n = 10, reported mean 3.48 at two decimals, observations from 1 to 5. The implied sum is 34.8, and an integer sum cannot lie inside the rounding interval around it. No integer-valued dataset of size 10 produces that rounded mean.
Compatible: n = 10, reported mean 3.50 at two decimals. The implied sum is 35.0, an integer inside the admissible range 10 to 50. The mean is reachable; this alone says nothing about whether the data are real, representative or correctly analysed.
How does GRIMMER differ from GRIM?
GRIMMER screens the reported standard deviation using the same integer and rounding model, including necessary conditions on the sum of squared deviations. The published engine surface also accepts optional bounds and returns the nearest reachable quantities. A GRIMMER consistency result is broader than GRIM but still a necessary-condition screen, not a reconstruction of the observations.
How should you read a result?
consistant(the value the tool returns): the implemented filters found no contradiction. It does not validate the study.inconsistant(the value the tool returns): check transcription, the analysis sample, scale coding, weighting and rounding before drawing any conclusion.- Possible explanations include a typo, a different sample size, a transformed scale, a weighted mean or a different rounding rule.
Limits
- Only integer-valued observations on a declared bounded scale are modelled.
- GRIM loses its power at large samples: once
nreaches 10 to the powerd(for two decimals,n≥ 100), every rounded mean within the scale is reachable. - Latent variables, factor scores, composite indices and percentages are outside the simple model unless they are shown to reduce to compatible integers.
- A signal proves neither fraud nor professional misconduct. The calculation does not replace reading the study method.
- The tests do not estimate the probability that a dataset is genuine.
Sources
GRIM: Brown and Heathers, Social Psychological and Personality Science (2017), DOI 10.1177/1948550616673876. GRIMMER (Granularity-Related Inconsistency of Means Mapped to Error Repeats): Anaya, PeerJ Preprints 4:e2400v1. The software implements necessary arithmetic conditions; a cited article does not certify this implementation.
Try the statistics demonstration · Read the engine contract · Evidence and trust boundaries
First published 2 November 2026 · Last updated 2 November 2026