Relationship between ODK and KoBo

'm a developer who recently stumbled over XForms / ODK. Would you please be so kind to explain me how ODK and KoBoToolboox relate to each other?

This is what I think I currently understood about it:

Where does KoBoToolboox fit into this picture?

1 Like

Hello,
I really appreciate your question. There is a very old discussion here.
Relationship between Kobo and ODK. (Some details no more up-to-date.)

It was also not easy for us to understand the relationship of the various documentation sources. (See Best documentation reference for KoBoCollect with XLSForms)
Kind regards

1 Like

Do I read it correctly that Kobo is on the same “level” as the ODK-ecosystem? Meaning that it is also within the XForms ecosystem and providing tools which are similar to ODK? Or is Kobo “just” an alternative for form building (so for XLSForm and ODK build) an form visualization (xsltforms)?

Hi Martin,
Welcome to the XLS forms and the world of KoBo and ODK.

The Open Data Kit project produces software that helps organizations author, collect, and manage mobile data collection solutions. ODK is an open-source and standards-based tools which are easy to try, easy to use, easy to modify and easy to scale.

KoBoToolbox is a suite of tools for field data collection for use in challenging environments. The main data collection app for KoBoToolbox ODK Collect is built using the ODK ecosystem.

What this means is that any form built for ODK should work for KoBoToolbox and vice-versa.

Operationally ODK and KoBoToolbox run mutually exclusive platforms for their users with varied differences and similarities in terms of support and customization. To learn more about KoBoToolbox, kindly visit our support page here

Regards,
Stephane

1 Like

KoboToolbox provides a GUI frontend form builder (technically I think it is/was referred to as ‘KPI’), which produces XLSForms, which in turn are converted to actual XForm form definitions using another tool called pyxform. Alternative XForm builders are ODK Build, or using Excel/Google Sheets to write your XLSForm spreadsheet, and then converting it into an XForm running pyxform on command line or using a GUI tool like XLSForm Online, installing an app like XLSForm Offline to do it (both of which are just pyxform wrappers), or upload it into KoboToolbox as an XLSForm and export it as an XForm.

Or there is nothing stopping you from writing raw XForm HTML using your favorite text editor :slight_smile:

Once into an XForm format, you can use a web-based XForm renderer like Enketo to view it or fill in your form (BTW Enketo is what Kobo uses for preview and web form filling…), or use an Android mobile app XForm renderer like ODK Collect, or its ostensibly rebranded KoboCollect app. [there are other ODK XForm compatible apps out there, like my iXForms for iOS, but they’re not ready for public consumption yet…]

There are a few other commercial solutions that use XForms under the covers, eg Survey123 (Esri), SurveyCTO, Orbeon, … which often also use pyxform/XLSForm to generate XForm form definitions, but oftentimes these introduce custom features so aren’t usually 100% compatible with the ODK toolchain.

The main different between Kobo and ODK is that Kobo provides a complete end-to-end hosted solution, and has its own custom backend services for receiving and processing form submissions, whereas ODK just provides the various components with which you can build your own custom solution, using either ODK Aggregate or ODK Central for a backend server.

Hope that helps! (and that I’m not being overly biased… Disclaimer: I’m on ODK TSC :wink: )

4 Likes

Hi Stephane,
given the retirement of the “Open Data Kit” brand and forming of the new umbrella organisation Data Software For Social Good (DSFSG), could you give an update on the relationship between KoboToolBox and ODK?
Working on a M&E system for a international rollout of a NGO-led intervention where Kobo was the selected platform, I eventually worked my way to using XLSForms and found the documentation and tools provided at xlsform.org and docs.getodk.org. The convenience of the managed platform of KoboTookbox and humanitarianresponse.info is very valuable to minimise the technical hurdles of establishing small and large M&E systems, but at the same time it has been a confusing journey for me when it comes to documentation for more advanced functionality. ODK, Enketo, XLSForms, the “Collect” android apps are all part of the system, and also pop up in this forum in a way that makes its support harder to benefit from.

As I have been able to get a better overview of the ecosystem, I now wonder how far the Kobo-ODK compatibility goes. As I understand KoboCollect as a fork of ODK Collect is 100% compatible, so using ODK Collect is a strategy that will ensure compatibility while access to new features and updates ealier. But how about ODK-X? The one-way data flow has been a challenge for me, and pushing the Kobo as survey system towards acting more like an app for the field worker has been hard. Will the KoboToolBox with hosting service support ODK-X and allow for more client-side programming?

Thanks and best regards,
Johs

2 Likes