Proctor is a A/B testing framework written in Java that enables data-driven product design at Indeed. Proctor consists of data-model, client specification, matrix builder, and java and javascript code generators.


View the Release Notes to see the most recent changes to Proctor.


The following Indeed Engineering blog posts describe Proctor in more detail:

Engineering blog post Description
Proctor: Indeed's A/B Testing Framework Provides an overview of Proctor and A/B testing at Indeed. This is the first part in a blog series on Proctor at Indeed.
How Indeed Uses Proctor for A/B Testing Describes in detail how Indeed integrates Proctor into its development process. This is the second part in a blog series on Proctor at Indeed.
Using Proctor for A/B Testing from a Non-Java Platform Announces the open sourcing of proctor-pipet -- a Java web application that exposes Proctor as a simple REST API accessible over HTTP -- which allows you to do A/B testing in applications written in non-JVM languages.

GitHub source for Proctor:


  • Consistent tests across multiple applications, services and tools
  • Group adjustments without code deploys
  • Rule-based group assignment for segmenting users:
    • Logged-in users: 50% A, 50% B
    • Logged-out users: 25% A, 25% B, 25% C, 25% D
  • Human-readable test format
  • Overriding test groups during internal testing
  • Java and JavaScript code generation for A/B tests groups

Getting Started

Read the Quick Start guide to start running A/B test using Proctor.



Ask and answer questions in our Q&A forum for Proctor: indeedeng-proctor-users


Apache License Version 2.0