Integrating Mobile Data Collection Tools

DevResults can work with any mobile data collection tool (MDCT) to import raw data, survey responses, and other information directly into a DevResults data table. Once imported, DevResults handles indicator calculations for this externally-collected data exactly as it does for data that is captured manually in the app itself.

This article discusses the different types of MDCTs on the market and best practices for importing them into DevResults.

Importing data collected on mobile devices

Popular mobile data collection tools (MDCTs) on the market today include:

  • SurveyCTO
  • KoboToolbox
  • CommCare
  • Magpi
  • Ona
  • iFormBuilder
  • ODK
  • and many, many others!

Each MDCT has something like a spreadsheet behind-the-scenes. Every time someone enters a data point, a row gets added to that spreadsheet. While each platform is slightly different, it's usually straightforward to export the underlying data and open it in Excel. 

In DevResults, you can create a data table based on that export, and then import future spreadsheets/exports in just a few clicks; these imports then populate indicator results. The most important thing is that the information captured by your MDCT needs to be the same kind of information stored in DevResults.

For example, say you have an indicator for "# people trained" disaggregated by Sex: Male/Female. The data table for that would include (at a minimum) columns for:

  • Activity, to enable per-activity disaggregation, if applicable
  • Date, to include indicator results in the relevant reporting period
  • Place, either Locations or Administrative Divisions from your DevResults site
  • Disaggregation(s), such as sex and any other relevant characteristics that you wish to measure and track
  • A unique ID of some sort to identify and/or deduplicate the individual person

Because DevResults validates imports against existing lists of activities, places, and disaggregations, you need to make sure the list in DevResults matches the list in your MDCT exactly. There are a few different ways to do this:

  • Export each list from DevResults and use it as data validation (i.e. dropdown fields) in your MDCT
  • Check the "Auto add new values?" when prompted upon importing [this only works for new disaggregation categories]
  • Wait for the import validation to fail and then add values not found in DevResults as appropriate (e.g. a new location, not merely a different spelling of an existing location).

Back to top

Integrations with mobile data collection tools

 At present, only SurveyCTO is directly integrated with DevResults. This means that while any MDCT can be imported into DevResults, SurveyCTO users enjoy a more automated process that makes refreshing data even easier. See the Survey CTO Integration article for more details on how this works.

While we always consider adding new MDCT integrations, we do so only in response to interest from both our users and the development team behind each MDCT. 

Users are welcome to use our API documentation to build their own integrations with third-party MDCTs that we have not already linked directly. 

Back to top

Order of operations

In order to streamline the process of syncing an MDCT with a DevResults data table, we recommend the following order of operations:

  1. First define the indicators that will be informed by the data you want to collect.
  2. Then define a "test table" in DevResults that has the necessary fields to populate linked indicators.
  3. Link your indicators to the DevResults table and test out whether you've configured the inputs to give the results you expect.
  4. Create the survey in your mobile collection device to match the data validation (dropdown lists) in DevResults exactly. Be sure to include required fields (i.e. activity, date, place, disaggregation) or be prepared to fill them in later.
  5. Verify that you can make a 'flat' export of data from from your MDCT or survey platform with the required column types, values, and conditional questions.
  6. Ensure the survey to be connected with a DevResults table is finalized and will not require additional changes to the form.
  7. Use the export to create a new DevResults data table, to ensure one-to-one mapping of MDCT fields to DevResults fields.
  8. Continue importing new data into the data table as it is collected.

Back to top

Didn't answer your question? Please email us at help@devresults.com.