Generate a pdf file from the XLSform

For many years, I have been asked about the possibility to generate a Human Readable version of an XLSForm.
Currently, Enketo gives the possibility to print an empty questionnaire, but it does not give critical information about the skip logic.
Other tools like PPP, only prints what is in the relevant column for a question, but still is not easily "human readable".
For training purposes, we need something easier for an interviewer to understand.
As a data manager, we also need essential questionnaire data, including: question type, values associated to choices, etc.
Reducing errors, including the possibility to have translations one on top of the other, could help to check the correctness.
In worst-case scenarios, if something happens to an android device, I would like to have a printable version of the questionnaire as a backup. This will reduce project related costs.
We at Swiss TPH tried to address these requests.
Initially, we focused specifically on make the tool compatible for the WHO Verbal Autopsy instrument; however, creating a generic form that could be used for any (or many) other forms could be more beneficial.
Thanks to the support of Vital Strategies and D4H Initiative from Bloomberg Philantropies, we developed this web app, that hopefully could assist the ODK Community.
We currently host the code on GitHub, and soon I will make the repository public to users that would like to contribute, extend, or simply to run the app on their laptop or own server.

Comments and suggestions are welcome.


As a primary contributor of PPP the critique stings a bit but is justified xD.

I checked it out. Looks nice!


Thanks for sharing. i've been looking for just such a tool.

1 Like

This is going to be very useful! Thank you for sharing.

1 Like

2021 Aug Updates:

  • Adds some previously missing question types and question type synonyms.
  • Adds warnings to warn the user about issues in the writing of the survey in the converted file. If there are issues with the survey or its questions the user will get a list of all warnings on the top of the page. Warnings about questions will also be displayed again on the corresponding question. Currently, the issues producing a warning are:
    -- (1) There was a "start_group" without a corresponding "end_group".
    -- (2) There was an "end_group" without a corresponding "start_group".
    -- (3) A question requires a list from the worksheet "choices", but the worksheet "choices" is missing.
    -- (4) A question requires a list from the worksheet "choices", but the list is missing.
    -- (5) A question has an invalid or unsupported type.

Test it and please give feedback if you find any bug:

XLSForm to pdf

In a couple of weeks the code will be public available on github and you could as well install it locally.

1 Like