Resolving Sync Conflicts

Sync conflicts happen when the same record is edited by two or more people (or on two or more devices) while offline. When both versions reach the Mapalyze cloud, the system detects the conflict and flags it for review. This article explains why conflicts occur and how to resolve them.

Why conflicts happen

Conflicts are a natural part of working offline with a team. Here are common scenarios:

  • Two field workers edit the same record while both are offline. For example, one updates the condition rating and another adds a photo.
  • A field worker edits a record on mobile while a manager simultaneously edits the same record on the web dashboard.
  • A single user edits a record on two devices (phone and tablet) without syncing between edits.

Mapalyze tracks changes at the field level, so a conflict only occurs when the same specific field in the same record is modified by different sources.

How Mapalyze detects conflicts

Every time a record is saved, Mapalyze records a timestamp and a change identifier. During sync, the system compares:

  1. The last known server version of the record.
  2. The version being uploaded from the device.

If the server version has changed since the device last synced (meaning someone else made edits), Mapalyze checks field by field:

  • No overlap -- If different fields were edited, the changes are merged automatically. No conflict.
  • Overlap detected -- If the same field was edited by both parties, a conflict is flagged.

Viewing conflicts

When a conflict is detected, you will see a notification in the Mapalyze app and on the web dashboard.

To view all conflicts:

  1. Go to Records in the left sidebar.
  2. Click the Conflicts filter (or look for records marked with an orange warning icon).
  3. Click a conflicted record to open the conflict resolution view.

The conflict resolution view

The resolution view shows the conflicting record with both versions side by side:

  • Your version -- The changes made on your device.
  • Server version -- The changes made by someone else (or on another device).

For each conflicted field, you will see both values highlighted. Non-conflicting fields show the merged result.

Resolving a conflict

You have several options for each conflicted field:

Keep your version

Click Use Mine next to the field to keep the value from your device and discard the other version.

Keep the server version

Click Use Theirs to keep the value that was already on the server and discard yours.

Merge manually

For text fields, you may want to combine both values. Click the field to edit it directly and write a merged answer.

Apply to all fields

If you want to accept all of your changes or all of the server changes at once, use the Use All Mine or Use All Theirs buttons at the top of the resolution view.

After making your choices, click Resolve Conflict. The resolved record syncs to all devices on the next sync cycle.

Preventing conflicts

While conflicts cannot be eliminated entirely in offline workflows, you can minimize them:

  • Assign clear ownership. When possible, have only one person responsible for editing a specific record. Others can view it but should not modify it.
  • Sync frequently. Encourage your team to sync whenever they have connectivity, even briefly. The more often devices sync, the less likely two people will edit the same data before either syncs.
  • Use project and role assignments. Mapalyze's project-based access control helps keep different team members working on different sets of records, reducing the chance of overlap.
  • Communicate in the field. If two people are working on the same site, a quick conversation about who is handling which records avoids most conflicts.

What happens to unresolved conflicts

Unresolved conflicts remain flagged in the system until someone resolves them. They do not block other work -- you can continue collecting new records and editing non-conflicting records normally. However, unresolved conflicts may cause confusion in reports and exports, so it is best to resolve them promptly.

Conflicts in exports

When you export data that includes conflicted records:

  • The server version of the record is included in the export by default.
  • Conflicted records are flagged with a "conflict" status column so you can identify and review them.

We recommend resolving all conflicts before running final exports or reports.

Need more help? Contact our support team.

Open the Web App