# How to Validate and Sync Field Data Collected Offline

Last updated: 2026-10-29

> Check field data on the phone, sync it offline without losing or doubling records, and review it before it counts: Restoration Scope, Kobo, ODK and QField.

Date: October 29, 2026

To validate and sync field data collected offline, check each answer on the phone as it's entered, keep every save on the phone until the server confirms it holds it, and review flagged records before they reach a report. Restoration Scope, which publishes this guide, does all three for restoration and agroforestry teams in one place: its field app checks entries as they're captured, sends saves without losing or doubling them, and flags records for review on the project's map and tables. KoboToolbox, ODK and QField do less to check records against each other.

**Disclosure:** Restoration Scope publishes this guide and is one of the options below. We list it first because we think it's the best fit for most projects: it adapts to each project and grows with it, and covers operations and costs as well as fundraising and reporting. No vendor paid to be listed, and there are no affiliate links.

Offline data goes wrong in three places: a wrong value typed in the field, a save lost or doubled on its way to the server, and a record that looks fine alone but clashes with another, such as a plot mapped twice. Each needs its own check.

**Where a save made offline goes, and what checks it at each step:**

1. **On the phone**: Checked while you capture. Required answers, choices from the project’s own records, and GPS accuracy shown while walking a boundary.
2. **Waiting for signal**: Kept until the server confirms. Each save waits on the phone, through restarts and updates, and sends itself when signal returns.
3. **On the server**: Applied, or held with the reason. Changes to one record apply in order. A save that can’t apply is kept with its photos, never dropped.
4. **Review**: Checked before it counts. Checks flag overlaps, duplicates and missing values. The team can fix them before the numbers reach a report.

## How do I validate field data on the phone, before it syncs?

Validating on the phone means the form refuses or warns about a bad value while the collector is still at the plot, where it can be fixed. These checks need nothing but the form:

- **Required answers.** Questions show only when they apply, so nobody skips a field or fills one that doesn't fit.
- **Choices, not free text.** Species, sites and status come from a list, so "Cedrela odorata" isn't typed four ways.
- **Visits opened from their plot.** The app sets the link to the plot or farm, so nobody types an ID.
- **GPS accuracy before saving.** Phone GPS is around five metres in open sky and worse under canopy, so the collector sees it before saving; [test your own phones](https://restorationscope.com/blog/phone-gps-accuracy).

A phone can check records it has downloaded, but not work another phone hasn't synced yet, such as the same plot mapped twice. Those checks run on the server, after sync.

In Restoration Scope, the field app's surveys show questions only when they apply and require them only while shown, offer choices from the project's own records, and open each visit on the site or plot it belongs to. Walking a boundary shows GPS accuracy as you go, flags it when accuracy is weaker than 25 metres and drops jumps no person could walk. [More about the field app](https://restorationscope.com/platform/field).

## How do I sync offline data without losing or doubling records?

Safe sync means a save leaves the phone only once the server holds it, and a save sent twice counts once. Four rules:

- **Keep every save until the server confirms it.** Saves wait on the phone through restarts, updates and days without signal.
- **Never delete a save because a rule failed.** The server keeps what it can't apply, with the reason, so the work is fixed instead of lost.
- **Give each record its ID on the phone.** A save resent after a dropped connection is then stored once.
- **Show each collector what's still waiting.** Nobody leaves the project with unsent work on their phone.

In Restoration Scope, each save waits on the phone and sends itself as soon as there's signal, with no expiry. A save sent twice is stored once, and changes to one record apply one at a time, in order. The server applies each save or keeps it, with its photos and the reason, for our team to repair: nothing a field worker saves is thrown away. Each person sees what their phone still has to send in the Sync Center, and shared phones keep each person's work apart. [How to read the Sync Center](https://restorationscope.com/docs/sync-center).

![Restoration Scope's Sync Center while offline: two changes saved on the device, each queued to sync](https://restorationscope.com/blog/validate-and-sync-offline-field-data/sync-center-offline.png)

## How do I review field data before it counts?

Reviewing means running the checks that compare records once the data syncs, sending each problem back to whoever collected it, and reporting only on records that passed. Run these on every sync:

- **Overlapping boundaries.** The same land mapped twice.
- **Duplicate people and farms.** Matched by ID, phone number or name within a village.
- **Points outside their site.** Or inside another site.
- **Missing or implausible values.** Such as a survival rate over 100%.

The fix belongs with the field officer who can call the farmer or revisit the plot, not an analyst months later. [How to find bad records across smallholder plots](https://restorationscope.com/blog/find-bad-records-smallholder-plots) covers each check.

In Restoration Scope, we set up these checks with each project. Each record carries its own flags, recomputed every time it's saved, and a Data Quality view lists the records that need action beside them on the map, so the team can fix them before the numbers reach a funder or a verifier.

**The records to send back.**

Plots not mapped yet, a point used for a plot over 4 hectares and mapped areas that differ from the declared ones, each with the field team's next step, beside those plots on the map. Demo cooperative: producers, plot records, risk cases and field visits are made up, and deforestation statuses, check results and cutoff figures are not computed by Restoration Scope. Plot locations, map layers and imagery are real.

![EUDR demo Data quality page: 5 plots not mapped yet, 1 point used for a plot over 4 ha, 2 mapped areas that differ from the declared area and 70 with no issues, then the plots that need action, each with the field team’s next step, beside those plots on the map](https://restorationscope.com/images/landing/eudr-demo/data-quality.png)

## How do Restoration Scope, KoboToolbox, ODK and QField handle offline validation and sync?

All four record offline and check answers on the phone. They differ in what keeps a save safe on its way to the server, and in what happens to a record before it counts.

**Checked October 29, 2026:** claims about each tool come from its own documentation, linked under each entry.

| Tool | On the phone | Sync | Review before it counts |
| --- | --- | --- | --- |
| [Restoration Scope](#restoration-scope) | Conditional and required questions, choices from the project's records, visits opened from their plot, GPS accuracy while walking | Each save kept until the server holds it; a resend is stored once; nothing dropped | Checks across records set up per project, listed in a Data Quality view beside the map |
| [KoboToolbox](#kobotoolbox) | XLSForm required answers, constraints with messages, skip logic | Finalized forms sent when online if Auto send is on; web forms queue submissions offline | Approved, Not approved or On hold, per submission |
| [ODK](#odk) | Required answers, constraints with messages, relevant questions | Finalized forms sent when online if Auto send is on; Central rejects a changed resend of the same submission | Has issues, Approved or Rejected, per submission; clashing offline Entity updates flagged |
| [QField](#qfield) | QGIS expression constraints that block or warn | Changes pushed to QFieldCloud; clashing edits marked as conflicts, latest wins by default | No review step documented; project roles limit who edits |

### Restoration Scope · Best for most restoration and agroforestry projects: checks, sync and review in one place

Restoration Scope builds digital infrastructure for nature projects: software for carbon and nature restoration projects that connects each team's field data, maps and workflows in one system. Its offline field app, RS Field, runs surveys on the sites and plots they describe, keeps every save on the phone until the server holds it, and sends it into the same records the project's checks, maps and funder reports read.

**Why it's our pick for most projects:** validation, sync and review happen in one system, set up around each project, so a flagged record is fixed on the record itself, not in an export someone has to merge back.

**Where it stops:** we set it up with your team, so it isn't instant or self-serve, and it isn't open source. Offline map backgrounds aren't stored yet. For one questionnaire with nothing around it, KoboToolbox or ODK is quicker. [Compare Restoration Scope and KoboToolbox](https://restorationscope.com/compare/kobotoolbox).

### KoboToolbox · Best for free form-led surveys for nonprofits

KoboToolbox validates on the phone with XLSForm: a missing required answer or a failed constraint stops the form being finalized, with your own message, and can also be checked question by question ([constraints](https://support.kobotoolbox.org/constraints_xls.html), [required](https://support.kobotoolbox.org/required_logic_xls.html)). With Auto send on, KoboCollect sends finalized forms when the phone connects, and Delete after send removes them from the phone only once they've uploaded ([KoboCollect settings](https://support.kobotoolbox.org/kobocollect_settings.html)). Web forms work offline once cached, but clearing the browser's data can delete queued submissions ([web forms](https://support.kobotoolbox.org/data_through_webforms.html)). For review, each submission takes a status, Approved, Not approved or On hold, set by people with the Validate permission ([validating data](https://support.kobotoolbox.org/viewing_validating_data.html)). Forms can look up earlier submissions from a linked project, for example to catch a repeat registration ([linked projects](https://support.kobotoolbox.org/dynamic_data_attachment.html)); checks such as overlapping boundaries happen outside Kobo.

### ODK · Best for open-source form-led field work

ODK Collect validates with required answers, constraints with messages and questions shown only when relevant ([form logic](https://docs.getodk.org/form-logic/)). With Auto send on, finalized forms are sent when an allowed connection is available, and ODK Central rejects a resend of the same submission if its content changed ([Collect settings](https://docs.getodk.org/collect-settings/), [OpenRosa API](https://docs.getodk.org/central-api-openrosa-endpoints/)). Reviewers mark submissions Has issues, Approved or Rejected; rejected ones still appear in exports unless filtered out ([review states](https://docs.getodk.org/central-submissions/)). For revisits, ODK Entities update offline, and Central flags a conflict when two updates change the same value, for someone to resolve ([Entities](https://docs.getodk.org/central-entities/)).

### QField · Best for teams already working in QGIS

QField enforces the QGIS project's constraints: a hard constraint blocks saving, a soft one only warns ([attribute forms](https://docs.qfield.org/how-to/project-setup/attributes-form/)). Through QFieldCloud, each edit is kept on the phone as a change and pushed on Synchronize, or automatically at a set interval, 30 minutes by default, if switched on. When two people edit the same feature, QFieldCloud marks a conflict; by default the latest edit wins, or an admin picks the version ([sync jobs](https://docs.qfield.org/reference/qfieldcloud/jobs/), [tips](https://docs.qfield.org/get-started/tutorials/tips-tricks-qfc/)). The docs describe no review step beyond project roles.

## Which tool should you use for offline validation and sync?

- **Restoration Scope** fits most restoration and agroforestry projects: the same plots are revisited each season, several collectors work offline, and the data has to reach a funder or verifier clean.
- **KoboToolbox or ODK** fit a single survey with someone on the team to design forms, review submissions and clean exports. Restoration Scope can bring their submissions in during setup, so existing forms keep running while a team switches.
- **QField** fits teams whose work lives in a QGIS project, with a GIS owner to keep the project and its sync working.

Whichever you pick, test it before the season: switch two phones to airplane mode, record the same plot on both, then reconnect and check what arrived, what was flagged and what reached the report. For the wider choice of apps, see [field-data apps for reforestation teams](https://restorationscope.com/blog/field-data-capture-apps) and [restoration monitoring tools](https://restorationscope.com/blog/restoration-monitoring-tools).

## Questions about validating and syncing offline field data

### How do I validate field data when there is no internet?

Put the checks in the form on the phone: required answers, choices from a list instead of free text, visits opened from the record they belong to, and GPS accuracy shown before a point is saved. Checks that compare records, such as overlaps and duplicates, run on the server once the data syncs.

### How do I stop offline data from being lost during sync?

Keep every save on the phone until the server confirms it holds it, and never let the phone delete a save because a rule rejected it. In Restoration Scope, saves wait on the phone through restarts and updates, and the server keeps anything it can't apply, with its photos, for repair.

### How do I avoid duplicate records when offline data syncs?

Give each record an ID on the phone when it's created, so a save sent twice after a dropped connection is recognised as the same one. Then check for duplicates across collectors on the server, by location, name or ID, because no phone can see what another phone saved.

### What happens when two people edit the same record offline?

It depends on the tool. Restoration Scope applies changes to one record one at a time, in order, and keeps any save it can't apply for repair. ODK Central flags a conflict when two offline updates change the same Entity value, and QFieldCloud marks clashing edits as conflicts, keeping the latest by default.

### Should field data be reviewed before it's used in a report?

Yes. Phone checks catch typing mistakes; they can't see what another collector saved but hasn't synced, such as the same plot mapped twice. Run checks across records once the data syncs, send each problem back to the person who collected it, and report on records that passed.

### Can I keep using KoboToolbox or ODK with Restoration Scope?

Yes. Restoration Scope brings KoboToolbox or ODK submissions in during setup, so they land on the project's records and go through the same checks. Teams moving fully to Restoration Scope have their forms rebuilt in its field app.
