Reactivation duplicates, cleaned back to one user record

A returning customer gets reactivated, Softr writes a second synced row into Airtable, and that second row quietly counts against your 100-user cap. This shows a small automation that collapses each of those back to one record, keeps the project links, and gives the cap slot back.

Everything below is synthetic sample data. Try the buttons.

Softr user cap 94 / 100
EmailStatusLinked projectRecord created

The fix you keep

Paste this into an Airtable automation (Automations → Run a script). It is yours, it runs inside your own base, and it starts in a dry-run mode that only prints what it would do until you flip one switch. It reads users by email, keeps the record already tied to your projects, moves any project links onto it, and deletes the extra rows.

dedupe-users.airtable.js

  

Four steps

  1. In your Airtable base: Automations → Create automation → When a scheduled time (hourly is plenty), add a Run a script action, and paste the script.
  2. Edit the CONFIG block at the top to match your table and field names. Leave DRY_RUN: true.
  3. Run it once and read the log. It lists every email it found twice and which record it would keep. Nothing changes yet.
  4. When the plan looks right, set DRY_RUN: false. From then on it collapses each duplicate back to one record and hands the cap slot back.

Your two questions

If you could set the record back to active in Airtable, would that restart the sync to Softr?
Yes. Softr syncs on the status field, so a record that leaves the "inactive" filter and comes back re-enters the sync as the same source row. The catch is your status is a formula off days-since-login, so you cannot type "active" into it. The clean way to make it editable again is a small checkbox, covered next.
And would that stop the duplicate from being created?
Yes, if you reactivate by flipping the original row back to active instead of clicking reactivate in Softr Studio. The Studio reactivation is what mints the second row. To do that without fighting the formula: add a checkbox field like Force active, and change your status formula to read active when days-since-login is under 90 OR that box is checked. To bring a returning customer back, tick the box on their original row. Softr re-syncs the same user, no new row. The automation above stays as your safety net for any duplicates already in the base, or any that slip through.