Skip to content
Octo × Field data collection PT Request an assessment

Octo for QField, Mergin Maps, ODK and KoboToolbox

The data comes from the field. What goes into the database is your call.

A QGIS project on a phone with QField or Mergin Maps, an XLSForm with ODK or KoboToolbox: all open source, all with an API. Octo writes the form, prepares the project, measures each team's sync and checks accuracy, area, duplicates and photos before the data goes into the database. What is collected about each person, what is accepted and what goes back for a revisit stay with the technical lead, the field coordinator and the data protection officer.

On the left, a phone with an inspection form: property code, a point with 3.2-meter accuracy, damage type and a required photo; in the center, a neighborhood map with blocks and points collected by three teams, some with a large accuracy circle; on the right, the sync server and the check panel with 412 submissions, 9 outside the accuracy limit and 3 without a photo Post-rain inspection v2026-10-31 · draft Property code Q12-034 Location (geopoint) ± 3.2 m OK Damage type Crack or fissure Damage photo * required if damaged Save offline FICTIONAL DISTRICT · 3 TEAMS ± 18 m outside FICTITIOUS DATA Sync Team 1 148 ↑ Team 2 131 ↑ Team 3 133 = no increase since yesterday: check Review 412 submissions 9 accuracy > 5 m 4 outside the area 3 without photo 2 duplicates 394 ready exceptions go to the coordinator Team 1 Team 2 Team 3 team area poor accuracy QGIS project on a phone or XLSForm · what comes back from the field is measured
Illustration: form on a phone, points from three teams and the check of what comes back; fictitious data.
QField4.3.7from Oct 24, 2026, GPL-2.0
ODK Centralv2026.3.1from Sep 28, 2026, Apache-2.0
Mergin Maps server2026.10.1AGPL-3 and commercial license
Sources13listed at the end of the page
01

What Octo does with field data collection.

Six possible deliverables, taken from the survey. All of them start by reading the project, the form or the server without changing anything, and all go through the coordinator before reaching the field team.

XLSForm with rules

Writes survey and choices with geopoint, a photo conditioned by relevant, constraint and required, and converts with xls2xform before publishing.

Deliverable: spreadsheet + XForm + list of personal data collected

QGIS project ready for the phone

Checks relative paths, layer constraints, the attachment widget and the orthophoto clip before packaging for QField or Mergin Maps.

Deliverable: packaged project and list of what was adjusted

Measured sync

Pulls from the server with mergin pull, qfieldcloud-cli or pyodk and counts by team and by day; a team with no increase becomes a question.

Deliverable: daily count with alerts

Accuracy and area

Flags points with accuracy above the round's limit, points outside the team's area and points in another team's area, already in SIRGAS 2000 / UTM.

Deliverable: exceptions by team for revisit

Linked photos

Checks that every required photo exists, that every photo has a record and that no file arrived empty; photos with people in them enter the LGPD discussion.

Deliverable: list of missing, orphaned and empty photos

Checked database entry

The same rules in SQL in PostGIS, as an exceptions view; nothing is deleted or moved, and what is accepted goes in with a note.

Deliverable: exceptions view + summary by team
02

Eight arms, one collection checked before the database.

The same Octo cycle, applied to the field. Each arm has a narrow role; people decide what is collected, what goes in and what goes back.

  1. Discovery

    Reads the project and the form

    Layers, fields, rules, paths, form version, sync server and who has an account.

  2. Data

    Models the collection

    Types, domains, relationships, a task layer and the check rules written with the coordinator.

  3. Security

    Looks at personal data

    Name, ID and phone fields with no need, photos with people, tokens in files, a server with open sign-up.

  4. Architecture

    Chooses the path

    QGIS project on a phone or XLSForm; hosted or in-house server; external GNSS when accuracy calls for it.

  5. Development

    Writes the form and scripts

    XLSForm, project preparation, daily count and check, with the source of each rule noted.

  6. Review

    Checks by content

    The test submission arrived with point, accuracy and photo; the count matches. A form that converts without errors can still have a wrong rule.

  7. Release

    Only with your OK

    Form publishing, project upload and schema changes happen between rounds and with the coordinator's approval.

  8. Documentation

    Logs each round

    Form or project version, teams, accepted exceptions and who approved, so the next round starts from the right point.

Octo works with read access and as support. It does not publish forms, delete submissions, move points or decide what is collected about a person.

03

Each task, its own path.

The criteria Octo uses to choose, with each project's documentation.

TaskPathNote
Edit existing features in the fieldQField ou Mergin MapsThe layer is the same as in the office
Inspection with many questions and skipsXLSForm in ODK or KoboToolboxrelevant, constraint, required
Convert and validate the formxls2xform (pyxform)Structure, not rules
Download submissions from ODK Centralpyodk, submissions.get_tableConfiguration in ~/.pyodk_config.toml
Property list that goes out and comes backODK Entities (/projects/:id/datasets)One form updates, another looks up
List projects in QFieldCloudqfieldcloud-cli --json list-projectsToken in QFIELDCLOUD_TOKEN
Pull a project from Mergin Mapsmergin download and mergin pullToken in MERGIN_AUTH
Export from KoboToolboxAPI v2 (JSON, CSV, XLSX)v1 is deprecated
Centimeter accuracyQField with external GNSS and NTRIPReference system decided by the technical lead
Daily checkGeoPandas or a view in PostGISExceptions table, nothing deleted
04

From the one-off round to collection checked every night.

Three steps. Each one only makes sense after the previous one has shown results on your team.

A proposal, not a promise

1 Today

Reading what exists

Octo reads the project, the form and the server and lists missing rules and personal data, without changing anything.

  • Fields, rules and paths
  • Personal data collected
  • Questions for the coordinator
Benefit: know what comes back from the field before sending the team
2 Next

Form and check

A form with rules, a checked test submission and the round's exceptions table.

  • XLSForm or project reviewed
  • Daily count by team
  • Exceptions by rule
Benefit: the coordinator reviews exceptions, not submission by submission
3 Later

Round routine

Each round with a logged version, a nightly check and database entry with a note of what was accepted.

  • Scheduled check
  • History of accepted exceptions
  • Indicators by team
Benefit: field data with its origin and check on record
05

Confirmed in a source.

Each point below has a source published by the project or by the organization responsible for the standard. The sources are in the next section.

5

points with a published source, each with its reference shown alongside.

ConfirmedQField 4.3.7 and open QFieldCloud
QField 4.3.7 released on Oct 24, 2026, GPL-2.0; the QFieldCloud backend is MIT and can be hosted with Docker Compose.Source: opengisch/QField and opengisch/qfieldcloud repositories
ConfirmedMergin Maps with dual licensing
Server 2026.10.1 (Oct 29, 2026) under AGPL-3 and a commercial license; app GPL-2.0; mergin CLI with download, pull and push.Source: MerginMaps/server, mobile and python-api-client repositories
ConfirmedODK Central and pyodk
Central v2026.3.1 (Sep 28, 2026), Apache-2.0; Entities at /projects/:id/datasets; submissions as a table with submissions.get_table.Source: getodk/central releases, Central API and pyodk documentation
ConfirmedData protection officer under the LGPD
"The controller shall appoint an officer in charge of the processing of personal data" (art. 41).Source: Law 13,709/2018, planalto.gov.br
ConfirmedConflict resolution
In Mergin Maps, when the same feature is edited on two devices, the last to sync wins and the server keeps a JSON of the conflict; even so, it becomes a test with two test devices.Source: Mergin Maps, sync documentation
06

What Octo does and what stays with you.

Octo prepares everything, but it does not sign. The document of record stays with whoever is accountable for it.

Octo prepares

Surveys, calculates, organizes and produces the documents: spreadsheets, reports, maps and drafts.

Deliverable: material ready to check

Your team checks

The licensed professional checks what Octo delivered before signing. If something doesn't add up, it goes back to Octo with the correction.

Step: review by the signer

The signer

Octo does not sign. Projects, technical reports, ART/RRT, accountability reports and any official document are still signed by the company's or agency's licensed professional: here, the technical lead for the map or the survey.

Signature: technical lead for the map or survey
07

Sources.

Repositories, release pages, project documentation, PyPI and the LGPD, consulted on Oct 31, 2026.

Your field data collection, checked before the database.

The assessment starts by reading the project, the form and the server, without changing anything. You get the list of missing rules, personal data collected and the decisions only your team makes, and you decide with it in hand.