Skip to main content

01 — The Humanitarian / UN Field Data-Collection Landscape and What Field Monitors Need

Research note for Rasd Forms. Researched 2026-08-15. All prices/versions were checked against primary pages on that date unless flagged "unverified".

Summary

  1. XLSForm/ODK XForms is the de-facto standard. KoboToolbox, ODK, SurveyCTO, Ona, WFP MoDa and Enketo all consume XLSForm → XForms. Any library aimed at UN/NGO developers must import/export XLSForm losslessly, or it will not be adopted [5][6][7].
  2. KoboToolbox is the humanitarian default (OCHA/HHI/IRC lineage; UNHCR runs its own server; UNRWA and IOM teams use it). New plan model: Community plan free for nonprofits/UN/gov/edu with 5,000 submissions/month + 1 GB; Professional $199/mo ($159 nonprofit), Teams $359/mo ($289 nonprofit); storage add-ons from $9.95/mo [1][2][3][4].
  3. ODK is the reference implementation and moves fastest: Central v2026.2.x (Aug 2026), Collect v2026.3.3 (Aug 4, 2026), Entities (offline since v2024.3), form drafts, audit log, encrypted forms, and a Vue-based ODK Web Forms that became the default web experience for new forms in Central v2026.2 (June 2026), displacing Enketo [8][9][10][11][12][13][14].
  4. KoboCollect lags ODK Collect by ~7–8 months (v2025.3.3, Dec 2025 vs v2026.3.3, Aug 2026) — a recurring pain point for organizations that need Collect fixes/features [15][16].
  5. Enketo (web forms) is now Kobo-maintained (since March 2025, after ODK stepped away in May 2024), Apache-2.0, enketo-express 7.6.4 (Aug 13, 2026); it remains the only mature offline-capable web XForms renderer — ODK Web Forms still lists "offline drafts" as an upcoming feature [17][18][14].
  6. Case/longitudinal workflows are the differentiator between "survey" and "monitoring" tools: CommCare cases (offline, parent/child, case sharing), ODK Entities (string-only properties, offline lists, last-write-wins conflict flags), SurveyCTO "case management", DHIS2 Tracker [19][20][12].
  7. Prices cluster at $100–$700/month per org/server for hosted tools (Kobo, ODK Cloud $199–$499, SurveyCTO $250–$700, CommCare $100–$1,000, Ona $199–$299), with per-user pricing only in GIS/enterprise products (Fulcrum ≈$43–$55/user/mo, ActivityInfo €545–€3,700/yr) [1][10][21][22][23][24][25].
  8. Android is the field platform. ODK/Kobo Collect, DHIS2 Capture (v3.4 dropped Android 5.x in 2026), CommCare are Android-only; iOS/desktop is served by web forms. Low-end devices, offline-by-default and multi-language switching are table stakes [26][27].
  9. What field monitors need is a fixed, well-known question vocabulary (geopoint/trace/shape, image/audio/video/barcode/signature/rank/matrix/score/range/note/calculate/hidden, select with choice_filter and external itemsets), XPath-style logic (relevant/constraint/calculate/required), repeats, defaults & preloads (deviceid, username, start/end, audit), draft→finalized→sent submission states, form versioning, and Arabic RTL [5][6][28][29].
  10. Humanitarian process needs beyond forms: PDM (typically 4–6 weeks after distribution), third-party monitoring, and CFM/AAP feedback loops (CHS 2024 commitments) which need anonymity, referral pathways, and multi-channel intake (RapidPro-style SMS/WhatsApp) [30][31][32].

1. Tool-by-tool landscape

1.1 KoboToolbox (kpi/kobocat, KoboCollect, Enketo)

  • Provenance & UN usage. OCHA's IM Toolbox describes Kobo as "a joint initiative between OCHA, Harvard Humanitarian Initiative (HHI) and the International Rescue Committee (IRC)" and still recommends it for needs assessments and monitoring (page updated 2025-10-23) [3]. UNHCR operates its own instance (kobo.unhcr.org, plus kobo-dev) and publishes enumerator guidance (download forms while online, lock down devices, hide settings, charge devices) [4]. UNRWA's 2023 Emergency Appeals evaluation collected quantitative survey data "using KoBo Toolbox … in both English and Arabic", with enumerators per field office, Excel QC and Power BI [33].
  • Form language. XLSForm, plus Kobo-specific extensions the builder emits: begin_score/score__row (Rating), begin_kobomatrix (Question Matrix), begin_rank/rank__level (Ranking); external XML; select from file [34]. Known issue: matrix syntax not preserved on XLS export (kpi #2279) and the builder silently changes column names (kpi #1358) [35].
  • Offline model. KoboCollect (fork of ODK Collect; Android only): download blank forms → fill offline → Save as draftFinalizeSend (or auto-send); Enketo web forms can be loaded once and used offline (service-worker cache) [36][3].
  • Sync/API. kpi v2 REST API on kf.kobotoolbox.org (global) and eu.kobotoolbox.org (EU); token auth; synchronous CSV/XLSX exports and per-record JSON; v1 (kobocat) endpoints "now deprecated" [37]. OpenRosa endpoints for Collect. License AGPL-3.0 (kpi) [16].
  • Pricing (kobotoolbox.org/pricing, 2026-08-15). Starter $25/mo ($21 annual) 1,000 subs/mo, 1 GB; Community $99/mo (free for nonprofits, government, UN, education) 5,000 subs/mo, 1 GB; Professional $199/mo ($166 annual; $159/$129 nonprofit) 25,000 subs/mo, unlimited storage; Teams $359/mo ($309; $289/$249 nonprofit) 50,000 subs/mo, shared limits; Enterprise (contact; servers "in 28 countries or your own infrastructure", SSO, branding). Storage add-ons 5 GB $9.95/mo → 50 GB $69.95/mo. NLP allowances 5–300 min transcription and 3,000–180,000 chars translation per month [1][2].
  • Pain points (forum/GitHub). 1 GB storage ceiling on Community plan hit by media-heavy projects (bulk media deletion only shipped Sept 5, 2025) [38]; repeat-group data not visible in table view (kpi #2086); no rank type or media upload in the builder (#2420, #2487); "data cleaning interface" is the top feature ask (#2888); QR-code Collect setup requested (#2681) [35]. RTL rendering depends on the language code and the first visible text being RTL [39].

1.2 ODK (Collect, Central, ODK Cloud, Web Forms, Entities)

  • Versions/licenses. Central v2026.2.3 (2026-08-11), Apache-2.0; Collect v2026.3.3 (2026-08-04), Apache-2.0; pyxform v4.5.0 (2026-06-25) [8][15][40]. Central v2025.1 (2025-05-14) introduced form drafts on an "Edit Form" tab, pagination, per-form Web Forms opt-in and entity deletion with a 30-day restore window [9]. Central v2026.2.0 made ODK Web Forms the default for new forms, added entity list/property management, login-page customization, in-browser image attachments; v2026.2.1 had to "downgrade Enketo to 7.6.1" for a Google Maps regression [8][14].
  • Form language / spec. ODK XForms spec (h:html/head/body; model + instance + bind + itext; body controls input/select/select1/upload/trigger/range/odk:rank/group/repeat) with a large XPath function library and events/actions (odk-instance-first-load, xforms-value-changed, odk-new-repeat, setvalue, odk:setgeopoint, odk:recordaudio) [6]. XLSForm columns and types are listed in §3 [5].
  • Entities (longitudinal). Added Central v2022.3; CSV bulk import v2024.1; offline entity lists in Collect since v2024.3; properties are strings only; every device downloads every entity unless ownership/property filters are configured (privacy concern acknowledged); conflicts flagged (parallel update vs true conflict), last-write-wins; out-of-order submissions held 5 days [12].
  • Audit log & encryption. audit metadata type with track-changes, track-changes-reasons=on-form-edit, identify-user, location-priority/min-interval/max-age; events (form start/save/finalize/jump/add-delete repeat…) exported as audit.csv [28]. Encrypted forms: 2048-bit RSA public key in settings, random 256-bit AES per submission, submission.xml.enc; Central cannot preview/OData/edit encrypted data nor use Entities; decrypt with managed passphrase or Briefcase [29].
  • Web Forms. Packages @getodk/web-forms (Vue 3 + PrimeVue), @getodk/xforms-engine, @getodk/xpath (0.11.0), @getodk/tree-sitter-xpath; repo archived into central-frontend after v2026.2 (June 2026). Supported: all logic, major types, media, translations, repeats, entities, geo widgets, signature/draw. Upcoming: one-question-per-page, query-param defaults, offline drafts, audio recording, grid layouts, several appearances [13][14].
  • API. /v1 REST; session bearer, basic, App User tokens via QR; projects/forms/drafts/submissions/attachments/app users/public links/datasets/entities/audits; OpenRosa formList/submission; OData feeds for Power BI/Tableau [41].
  • Pricing (getodk.org/pricing). ODK Cloud Standard $199/mo (10k subs/mo), Professional $499/mo (25k, adds Entities + API access), Enterprise custom (100k+, SSO, custom domain, SLA); add-on project $199/mo yearly or $249 monthly with 10k subs; self-hosting free [10].
  • Platform. Collect is Android-only (Play Store or APK) [26]; iOS/desktop via Enketo or Web Forms.

1.3 SurveyCTO

Proprietary ODK-derived stack (XLSForm; SurveyCTO Collect Android + web). Basic $250/mo ($225 annual) — 100 forms, 10 GB, 5,000 subs/mo; Pro $350/$315 — 500 forms, 25 GB, 10,000; Advanced $700/$630 — unlimited; Enterprise custom (SOC2, server location, "Advanced Offline Case Management"). All tiers have public-private key encryption; server-location choice from Pro; APIs/plug-ins fully unlocked at Advanced; extra 1,000 submissions $100; 15-day trial (10 forms, 200 subs, 200 MB) and a free "Community" subscription with identical limits for testing/training [21].

1.4 CommCare (Dimagi)

Offline-first Android app + web apps; case management is native (register → follow-up forms; parent/child cases; case sharing; lookup tables) — the archetype for longitudinal beneficiary work. Marketing: "1 M+ frontline workers", "130+ countries" [42]. Pricing (dimagi.com/commcare/pricing): Free Edition 5 mobile users/1 project; Standard $100/mo (50 mobile users), Pro $500/mo (250; case sharing/child cases, APIs, report builder), Advanced $1,000/mo (500; Power BI/Tableau, web apps, 2-way SMS, de-identification), Enterprise $4,000+/mo (SSO); $2/extra mobile user/mo; ~17% off annual; EU/India/US hosting; 30-day trial on request [22][43]. commcare-hq is BSD-3-Clause, commcare-android Apache-2.0 [16]. Form language: XForms via the Vellum builder.

1.5 DHIS2 (Android Capture, Tracker)

BSD-3-Clause. Android Capture v3.4.2 (2026-08-12); v3.4 dropped Android 5.0/5.1, 3.3.x is last for Android 5 [27][16]. Offline-first: all data entry, validation, program rules and sync work offline; scheduled sync 30 min–1 day; SMS sync exists but is "blocked by Google Play"; 3.3 added custom intents for third-party apps and working-list-based sync; 3.4 aligns with DHIS2 v43 [44]. Its "form language" is DHIS2 metadata (programs, stages, data elements, program rules), not XLSForm — relevant only if Rasd needs to export to DHIS2.

1.6 WFP tools

  • MoDa ("Mobile Operational Data Acquisition") is WFP's corporate data-collection platform, "powered by Ona" (Ona Data API at api.moda.wfp.org, Enketo at enketo.moda.wfp.org, web forms at forms.moda.wfp.org); enumerators use ODK Collect; forms are XLSForms authored with WFP Survey Designer [45][46][47]. An April 2026 ODK-forum thread reports ~1 % of Collect submissions failing to upload to MoDa — diagnosed as server-side config [48].
  • mVAM (since 2013): remote food-security monitoring by SMS/IVR/live calls (CATI), evolved into continuous Real-Time Monitoring [49].
  • SCOPE: beneficiary information & transfer-management system (registration, biometrics, entitlements, cash accounts, reporting); WFP's Executive Board and internal audit documents describe it as core to cash-based transfers [50].
  • WFP VAM guidance stresses pre-tested, translated tools, enumerator training, high-frequency checks and remote alternatives [51].

1.7 UNRWA, IOM DTM, UNICEF RapidPro

  • UNRWA — Kobo-based surveys in English/Arabic with field-office enumerator pools (2023 evaluation) [33]; I could not find a public technical description of a dedicated UNRWA field-monitoring product (unverified).
  • IOM DTM — operating in "more than 80 countries" since 2004; methodology = key-informant interviews, enumerator networks, Multi-Sectoral Location Assessments, Flow Monitoring Surveys; e.g., 346 migrants surveyed at two North Macedonia transit centres in Q1 2025 [52][53]. The About page does not name a collection tool; Kobo use is widely reported but I could not verify from a primary IOM page.
  • UNICEF RapidPro — AGPL-3.0 flow engine for SMS/WhatsApp/Telegram/Facebook/Viber/IVR; UNICEF + TextIt (Nyaruka) 2014; DPG since 2020; 2024: 5 billion messages, 284 workspaces in 130 UNICEF country offices; powers U-Report and feedback lines [54][16].

1.8 ActivityInfo, Magpi, Fulcrum, Ona

  • ActivityInfo (humanitarian M&E database, EU): Solo €545/yr (1 user, 1 database), Programme €3,700/yr (5 full + 15 basic users, unlimited DBs, 500 forms/DB), Enterprise 250+ users; extra full user €65–75/yr, basic €55/yr; offline mobile app; a third-party listing cites a "Global Organization €13,400/yr" tier (unverified) [23][55].
  • Magpi: free basic tier plus Pro/Enterprise on Android/iOS/web with SMS/IVR; on 2026-08-15 magpi.com/pricing returned an "account has expired" page and Capterra lists a "$500 per user per month" starting price with zero reviews — treat vendor as at-risk/unverified [56].
  • Fulcrum (GIS field ops): official page hides prices; third parties cite Professional ≈$43/user/mo annual ($55 monthly), Elite ≈$55/user/mo, Enterprise custom, five-user minimum; offline capture, photo/audio/video/barcode/signature, ArcGIS integration, SSO/SCIM at Elite+ [24][57].
  • Ona Data (ODK-compatible; powers MoDa): Free 500 subs/mo, Standard $199/mo (15,000), Pro $299/mo (30,000), Enterprise custom; API from Standard; RapidPro/Tableau/webhooks integrations at Pro [25].

1.9 Enketo

Monorepo enketo/enketo (enketo-core, enketo-express, enketo-transformer, openrosa-xpath-evaluator), Apache-2.0; ODK maintained ~2021–May 2024, Kobo took over March 2025; enketo-express 7.6.4 (2026-08-13); 7.6.1 (Mar 2026) improved offline caching and removed PDF generation; 7.6.0 (Nov 2025) added full audio recording [17][18]. It is embedded by Kobo, Ona/MoDa, ODK (legacy forms), OpenClinica, and UNHCR (enketo.unhcr.org).


2. Comparison tables

2.1 Platforms

ToolForm languageOffline modelSync/APIPricing (2026-08-15)PlatformsLicense
KoboToolboxXLSForm (+kobo score/matrix/rank)KoboCollect draft→finalize→send; Enketo offline cachekpi v2 REST, OpenRosa, exportsFree Community (nonprofit) 5k/mo; $199 / $359 moAndroid app; webAGPL-3.0 (kpi)
ODK Central/CollectXLSForm/XForms, EntitiesCollect + offline entity lists/v1 REST, OData, OpenRosaSelf-host free; Cloud $199/$499/customAndroid; Web Forms/EnketoApache-2.0
SurveyCTOXLSFormCollect fork; offline case mgmtAPI/plug-ins by tier$250/$350/$700 moAndroid; webProprietary
CommCareXForms (Vellum) + casesOffline cases & lookup tablesAPIs (Pro+), exportsFree 5 users; $100/$500/$1,000 moAndroid; web appsBSD-3 / Apache-2.0
DHIS2 AndroidDHIS2 metadata/TrackerOffline-first, scheduled sync, SMSDHIS2 Web APIFree (self-host)Android 6+ (v3.4)BSD-3
Ona / WFP MoDaXLSFormODK Collect + EnketoOna REST APIFree 500/mo; $199/$299 moAndroid; webmixed
ActivityInfoown form modeloffline mobile appREST€545–€3,700/yrweb; mobileProprietary
Fulcrumown (GIS)offline captureREST/query API (Elite+)≈$43–55/user/moiOS/Android/webProprietary
RapidProflows (not forms)n/a (SMS/WhatsApp)RESThosted by TextIt/UNICEF; self-hostany phoneAGPL-3.0

2.2 Longitudinal / case support

ToolMechanismOffline?Conflict handlingNotes
ODKEntities + entity lists (entities sheet, select_one_from_file)Yes (v2024.3+)last-write-wins, flaggedstring properties only; all-devices-see-all unless filtered
CommCareCases, child cases, case sharingYesserver mergerichest model; Pro+ for sharing
SurveyCTOCase management datasetsBasic offline / advancedtier-gated
DHIS2Tracked entity instances/enrollments/eventsYeshealth-oriented
Kobonone native (dynamic data attachments only)partialmajor gap vs ODK

3. XLSForm data model (what Rasd's JSON must round-trip)

Survey sheet — required columns type, name, label; common optional hint, guidance_hint, relevant, constraint, constraint_message, required, required_message, calculation, trigger, default, appearance, parameters, read_only, repeat_count, choice_filter, media::image/audio/video, plus pass-through instance::*, bind::*, body::* [5].

Typesinteger, decimal, range, text, select_one L, select_multiple L, select_one_from_file f, select_multiple_from_file f, select_one_external, rank L, note, geopoint, geotrace, geoshape, date, time, dateTime, image, audio, background-audio, video, file, barcode, calculate, acknowledge, hidden, xml-external, csv-external; metadata start, end, today, deviceid, phonenumber, username, email, audit, subscriberid, simserial; structure begin_group/end_group, begin_repeat/end_repeat (repeat_count) [5]. Kobo extensions: begin_score, begin_kobomatrix, begin_rank [34].

Choices sheetlist_name, name, label, arbitrary filter columns (used by choice_filter), optional geometry, media::image; settings allow_choice_duplicates [5].

Settings sheetform_title, form_id, version, instance_name, default_language, public_key, submission_url, style, name, clean_text_values, namespaces, attribute::* [5].

Multi-languagelabel::Arabic (ar), hint::…, constraint_message::…, media::image::… columns; RTL is inferred from language code and first visible text [5][39].

Appearances (subset) — multiline, counter, minimal, quick, no-calendar, month-year, year, horizontal(-compact), likert, compact, quickcompact, field-list, label, list-nolabel, table-list, signature, draw, annotate, map, quick map, columns, image-map, autocomplete [5].

Logic language — XPath 1.0 subset + ODK functions (if, selected, count, sum, pulldata, jr:choice-name, indexed-repeat, once, random, uuid, decimal-date-time, format-date, regex, coalesce, checklist, weighted-checklist, boolean-from-string, position, instance, current, area, distance, geofence, intersects …); relative refs ${name} compile to /data/group/name; secondary instances internal, jr://file-csv/itemsets.csv, GeoJSON [6].

Runtime bind semanticsrelevant (skip; irrelevant values are blanked), constraint (evaluated on the question's own value; blocks progress), required (expression), calculate (recomputed on dependency change), readonly, jr:preload/jr:preloadParams (uid, timestamp start/end, property deviceid/username…), saveIncomplete; events odk-instance-first-load, odk-new-repeat, xforms-value-changed with setvalue. Instance metadata meta/instanceID, deprecatedID (edits), instanceName; submission action/method/base64RsaPublicKey, orx:auto-send, orx:auto-delete, odk:client-editable [6].

Entities extensionentities sheet: list_name, label, entity_id, create_if, update_if; save_to column in survey [12].


4. Feature set field monitors need (synthesised)

Question types (must): text (multiline, numbers/regex constraints), integer/decimal, range (slider), select_one/select_multiple with choice_filter cascades and external itemsets (thousands of admin units/P-codes), select_one_from_file/csv-external, rank, rating/score matrix (Likert grids), question matrix, note (markdown), acknowledge, date/time/dateTime (Hijri-aware display, no-calendar), geopoint (accuracy threshold, background auto-capture start-geopoint), geotrace/geoshape (map + manual), image (with max-pixels, signature/draw/annotate appearances), audio (foreground + background-audio), video, file, barcode/QR (batch scanning), calculate, hidden, metadata (start/end/today/deviceid/username/email/phonenumber, audit) [5][6][34].

Logic (must): relevance/skip, constraints with messages, required expressions, calculations, defaults incl. dynamic defaults via setvalue/once(), pulldata/instance() lookups from attached CSV, repeat_count, indexed-repeat, jr:choice-name, selected(), date math, count-selected, regex, random()/uuid() for sampling; grouped pages (field-list) [5][6].

Structure & lifecycle: groups/pages, repeat groups (household rosters), form versioning (version + form_id; devices update forms while online) [5]; submission states draft → finalized → sent with auto-send, delete-after-send [36]; edit-after-submit with deprecatedID [6]; enumerator metadata + audit trail (audit.csv, track-changes with reasons, location trail) [28]; encryption at rest/in transit (RSA/AES pattern) [29].

Longitudinal: entities/cases (registration → follow-up; select from local entity list; conflicts flagged) [12][19].

Humanitarian workflows: PDM (4–6 weeks post-distribution; modules on selection process, site accessibility/safety, cash redemption, spending decisions, CFM awareness) [30]; TPM (third-party enumerators, GPS/time audit evidence, photo geo-tags, blind re-interview samples); CFM/AAP (CHS 2024: participation, feedback & complaints handling, closing the loop; anonymous/sensitive intake, PSEA referral, multi-channel via RapidPro/hotline) [31][54].

Language/UX: per-form language switching at runtime; label/hint/choice/media/constraint-message translations; RTL layouts (mirrored progress, numerals, mixed-direction bidi text); large tap targets, low-RAM devices, minimal JS payload, offline maps/basemaps.


5. Implications & recommendations for Rasd Forms

  1. Make XLSForm the canonical interchange, not an afterthought. Model Rasd JSON as a 1:1 superset of XLSForm survey/choices/settings/entities sheets (keep name, type, appearance, parameters, bind::* pass-through). Ship xlsformToRasd() and rasdToXlsform() in the free core and run pyxform-based round-trip tests in CI [5][12].
  2. Implement the ODK XPath function set (or reuse @getodk/xpath 0.11.0, Apache-2.0) as the expression engine for relevant/constraint/calculate; a bespoke expression language would break every existing form library at WFP/UNHCR/UNRWA [6][13][14].
  3. Match the Collect submission lifecycle — draft/finalized/sent, auto-send, retry, delete-after-send, deprecatedID edits — and expose it as a headless state machine so devs can build Kobo/ODK-like UX in React and RN [36][6].
  4. Ship first-class Entities/case support (offline entity lists, create_if/update_if, conflict flags) — this is where Kobo is weakest and CommCare/ODK charge premium tiers [12][19][21].
  5. Audit trail + geo/time evidence (audit.csv-compatible events, start-geopoint, photo EXIF/geotag, identify-user, change reasons) — TPM and donor-facing PDM depend on this [28].
  6. Optional public-key encryption of finalized records compatible with the ODK RSA-2048/AES-256 layout, so Rasd submissions can be decrypted with existing ODK tooling [29].
  7. RTL/Arabic must be tested per widget (bidi numerals, mixed LTR codes in RTL text, mirrored sliders/ranking); expose dir per language and default from language code, as Kobo does [39].
  8. Low-end Android budget: target Android 6+ (DHIS2 dropped 5.x in 2026), <2 GB RAM, offline basemap tiles, lazy-load media widgets, cap image pixels like max-pixels [27][5].
  9. Interoperate rather than replace servers: provide OpenRosa (formList, submission) and Kobo/ODK REST/OData adapters so a Rasd front-end can submit to kf.kobotoolbox.org, ODK Central or Ona/MoDa; UN teams will not migrate servers for a UI library [37][41][45].
  10. Pricing posture: hosted incumbents cost $100–$700/month per org; a per-developer/per-app token subscription (after a 7-day trial) is defensible only if the offline runtime and XLSForm core stay free (Kobo Community and ODK self-host are free) and paid value is builder/theming/case-management/sync add-ons [1][10][21][22].
  11. Builder features to prioritise (from Kobo backlog): rank/matrix in-builder, media upload, choice-name stability, QR device provisioning, repeat data in tables, data-cleaning views [35].
  12. CFM/AAP module: anonymous & sensitive-case flags, referral categories, closing-the-loop status, and a RapidPro/WhatsApp intake adapter (AGPL, hosted by TextIt/UNICEF) [31][54].

Sources (accessed 2026-08-15)

  1. KoboToolbox — Pricing. https://www.kobotoolbox.org/pricing/
  2. KoboToolbox blog — Introducing KoboToolbox's new plan model. https://www.kobotoolbox.org/blog/supporting-future-growth-and-accessibility-introducing-kobotoolboxs-new-plan-model
  3. OCHA IM Toolbox — KoBoToolbox (updated 2025-10-23). https://humanitarian.atlassian.net/wiki/spaces/imtoolbox/pages/3190980609
  4. KoboToolbox blog — How UNHCR is using KoboToolbox (Ukraine); UNHCR server https://kobo.unhcr.org/. https://www.kobotoolbox.org/blog/how-unhcr-is-using-kobotoolbox-to-support-the-needs-of-people-affected-by-conflict-in-ukraine
  5. XLSForm.org — XLSForm reference. https://xlsform.org/en/
  6. ODK XForms Specification. https://getodk.github.io/xforms-spec/
  7. GetODK — ODK vs Kobo. https://getodk.org/vs-kobo/
  8. GitHub — getodk/central releases (v2026.2.3, 2026-08-11). https://github.com/getodk/central/releases
  9. ODK Forum — Central v2025.1 release (2025-05-14). https://forum.getodk.org/t/odk-central-v2025-1-form-drafts-visual-redesign-pagination-web-forms-and-entity-deletion/54899
  10. GetODK — ODK Cloud pricing. https://getodk.org/pricing/
  11. ODK Docs — Managing Submissions in Central. https://docs.getodk.org/central-submissions/
  12. ODK Docs — Managing Entities in Central. https://docs.getodk.org/central-entities/
  13. GitHub — getodk/web-forms README (archived; packages). https://github.com/getodk/web-forms/blob/main/README.md
  14. ODK Docs — ODK Web Forms. https://docs.getodk.org/web-forms-intro/
  15. GitHub API — getodk/collect releases (v2026.3.3, 2026-08-04). https://api.github.com/repos/getodk/collect/releases
  16. GitHub API — repo metadata: kobotoolbox/kpi (AGPL-3.0), kobotoolbox/collect (v2025.3.3, 2025-12-25), dhis2/dhis2-android-capture-app (BSD-3), dimagi/commcare-hq (BSD-3), dimagi/commcare-android (Apache-2.0), nyaruka/rapidpro. https://api.github.com/repos/kobotoolbox/collect/releases
  17. GitHub — enketo/enketo README. https://github.com/enketo/enketo
  18. GitHub API — enketo/enketo releases (7.6.4, 2026-08-13; Apache-2.0). https://api.github.com/repos/enketo/enketo/releases
  19. Dimagi — CommCare product page. https://www.dimagi.com/commcare/
  20. SurveyCTO — Pricing (case management tiers). https://www.surveycto.com/pricing/
  21. SurveyCTO — Pricing. https://www.surveycto.com/pricing/
  22. Dimagi — CommCare pricing. https://www.dimagi.com/commcare/pricing/
  23. ActivityInfo — Pricing. https://www.activityinfo.org/about/pricing.html
  24. Fulcrum — Pricing. https://www.fulcrumapp.com/pricing/
  25. Ona — Ona Data pricing. https://ona.io/home/products/ona-data/pricing/
  26. ODK Docs — Installing ODK Collect. https://docs.getodk.org/collect-install/
  27. DHIS2 — Android Capture releases (3.4.2, 2026-08-12; Android 5 dropped). https://github.com/dhis2/dhis2-android-capture-app/releases
  28. ODK Docs — Form audit log. https://docs.getodk.org/form-audit-log/
  29. ODK Docs — Encrypted forms. https://docs.getodk.org/encrypted-forms/
  30. Shelter Cluster Somalia — Post Distribution Monitoring Tool. https://www.sheltercluster.org/somalia/pages/post-distribution-monitoring-tool
  31. CHS Alliance — The Core Humanitarian Standard (2024 revision). https://www.corehumanitarianstandard.org/the-standard
  32. UNHCR data portal — PDM & Outcome Monitoring (multi-purpose cash) documents. https://data.unhcr.org/ar/documents/download/93539
  33. UNRWA — Evaluation of the UNRWA Emergency Appeals (2023; Kobo in English & Arabic). https://www.unrwa.org/sites/default/files/content/resources/final_report_unrwa_emergency_appeal_evaluation2_1.pdf
  34. KoboToolbox docs — Question types. https://support.kobotoolbox.org/question_types.html
  35. GitHub — kobotoolbox/kpi open issues (sorted by reactions). https://github.com/kobotoolbox/kpi/issues
  36. KoboToolbox docs — Collecting data using KoboCollect. https://support.kobotoolbox.org/data_collection_kobocollect.html
  37. KoboToolbox docs — API. https://support.kobotoolbox.org/api.html
  38. Kobo Community — Data storage in new Community Plan (2024–2025). https://community.kobotoolbox.org/t/data-storage-in-new-community-plan/50724
  39. KoboToolbox docs — Adding languages / RTL. https://support.kobotoolbox.org/language_dashboard.html
  40. GitHub API — XLSForm/pyxform latest release (v4.5.0, 2026-06-25). https://api.github.com/repos/XLSForm/pyxform/releases/latest
  41. ODK Docs — Central API. https://docs.getodk.org/central-api/
  42. Dimagi — CommCare (scale claims). https://www.dimagi.com/commcare/
  43. Dimagi Confluence — CommCare Pricing Overview. https://dimagi.atlassian.net/wiki/spaces/commcarepublic/pages/2420015134/CommCare+Pricing+Overview
  44. DHIS2 Docs — Android Capture overview. https://docs.dhis2.org/en/implement/android-implementation/android-capture-overview.html
  45. WFP — MoDa ("powered by Ona"). https://moda.wfp.org/
  46. WFP MoDa — Ona Data API docs. https://api.moda.wfp.org/static/docs/orgs.html
  47. WFP MoDa — Enketo instance. https://enketo.moda.wfp.org/
  48. ODK Forum — WFP MODA server error (2026-04-06). https://forum.getodk.org/t/wfp-moda-server-error/57949
  49. WFP VAM Resource Centre — Implementing an mVAM survey. https://vamresources.manuals.wfp.org/docs/implementing-an-mvam-survey
  50. WFP — Internal Audit of SCOPE / Journey of a beneficiary. https://docs.wfp.org/api/documents/WFP-0000128891/download/
  51. WFP VAM Resource Centre — Data collection. https://vamresources.manuals.wfp.org/docs/data-collection
  52. IOM DTM — About DTM. https://dtm.iom.int/about-dtm
  53. IOM DTM — Survey listings (Flow Monitoring Surveys 2025). https://dtm.iom.int/component/survey?page=5
  54. RapidPro — home. https://home.rapidpro.io/
  55. Tekpon / SourceForge listings — ActivityInfo tiers (unverified third-party). https://sourceforge.net/software/product/ActivityInfo/
  56. Capterra — Magpi (pricing/activity; magpi.com/pricing returned "account expired" on 2026-08-15). https://www.capterra.com/p/159602/Magpi/
  57. TrustRadius — Fulcrum pricing (third-party). https://www.trustradius.com/products/fulcrum/pricing