MASP IV · Data Platform
East & Central Africa · 2026–2030
Solidaridad

ECA Trainings & Events Tracker

Training & event delivery analytics — Kenya, Uganda, Tanzania, Ethiopia.

Last data refresh: 11 Aug 2026, 01:27 · 6,811 real / 83 test · Print → Save as PDF for a full-page export
The reach-vs-individual distinction (read this first)
The dashboard never conflates three different denominators:
Reported reach (Σ total_participants) ≥ individual records ≥ unique farmers (deduped)
Demographic percentages are computed on reported reach. Charts state their sample size (n). Unique-farmer counts are approximate where identity rests on typed names rather than a farmer ID.
Field definitions
FieldMeaning
event / submissionOne KoboToolbox submission = one training or event delivered.
total_participantsReported aggregate headcount for the event. NOT the number of individually recorded participants.
individual recordsSum of participant[] repeat rows + known-farmer-list selections — people captured individually.
unique farmersIndividual records deduplicated by farmer_id (or a normalised name+phone key when no ID).
% female / % youthOf reported reach (total_participants). Youth = ≤35 years.
real vs testThe real_test field. Test records are excluded everywhere by default; toggle to include.
admin levelsCountry-conditional: Kenya County/Sub-county/Ward · Uganda & Tanzania Region/District · Ethiopia Region/Zone/Woreda.
completeness scoreMean of four present/absent signals: GPS, photo, attendance sheet, admin-2.
submission lagDays between training_date and submission timestamp — a data-entry timeliness proxy.
PII protection
Row-level phone numbers, Beneficiary IDs, National IDs and participant/facilitator names are held in RLS-locked base tables and are never exposed to the dashboard — it reads only PII-free views (identity is surfaced as an anonymous hash for dedup counting). Disability is shown only in aggregate. Enumerator names appear only as aggregate submission/completeness counts.
Known limitations
  • Free-text dedup (name+phone) is imperfect — unique counts are indicative.
  • Admin-2 and organisation names are free-text; spellings vary.
  • Form-version drift: older submissions may lack newer fields (handled as missing, treated as real).
  • No choropleth boundaries — Geography uses admin-level aggregates and a coordinate scatter, not a basemap.
  • next_training_date (upcoming pipeline) is captured mainly by SAVE KE.
Data refresh
Source: KoboToolbox form aCt5s6EGUnE7UxJVeuXjpY. A scheduled GitHub Action re-fetches all submissions every 3 hours (Kobo REST) and upserts into Supabase; interactive loads run via the Kobo MCP server. The “last data refresh” time is shown in the header. New projects/topics decode automatically once the choices map is refreshed.