Paperless Open Marking

Plom is

  • a system for giving tests on paper, but marking and returning them online
  • designed for giving multi-version tests suitable for crowded classrooms and multiple sittings
  • written in python3 using PyQt5 and other FOSS components
  • under the AGPL-v3, you can help at

The plom annotation client in action

Plom’s benefits

Respects privacy of student data

All data stays on your server, and markers do not see student name or ID when working.

Easy multi-versioned tests

Designed to handle crowded classrooms and multi-section courses, when sittings might occur over multiple days.

Free — both Libre and Gratis

Plom is Free and Open Software. There is no software to buy, and no subscriptions to pay.

Is it ready for me to use?

Yes and no.

  • Plom has been in use at UBC Mathematics since October 2018.
  • It has been used in about 20 courses, ranging from specialised 400-level courses, through to huge, 1000+ student, multi-section Calculus 1 and 2 courses.
  • It has been used for in-class tests and quizzes as well as final exams.
  • All of that being said, Plom is still under heavy development and does not yet have a full set of seat-belts.

Can I try it?


  • Plom is Free/Open Source Software and you can access the repository.
  • You can also run the demo server
  • Please send email if you’re interested in using Plom for a real piece of assessment and we can help.

Want to know more

Start here.

Can I help?

Absolutely! Please contact the development team

“Marking”? Is that “grading”?

Yes. The developers of Plom typically use the words nearly interchangeably (this is perhaps a consequence of having spent time in different anglophone countries). We really just mean the process of assigning numerical scores to student responses and at the same time leaving useful annotations and feedback.

Have a question not answered on our website?

Check out our FAQ.