Help

Welcome to the Airtable Community! If you're new here, check out our Getting Started area to get the most out of your community experience.

Specifics on Synced Tables and Syncing Intervals

Topic Labels: Sync
Solved
Jump to Solution
1576 10
cancel
Showing results for 
Search instead for 
Did you mean: 

Hi all!

So, here’s the use case that spurred some thinking… I have a HUGE, monster of a base that is a bit out of control. It contains many intricate rollups that drive some housekeeping/reporting processes. Now that Airtable Sync is available, I’m working on moving those high-overhead processes out to their own bases in the hopes of speeding up the “master” base.

One of those processes is a nightly report. The report is driven off of a view in the master base. I synced this view over to a new base, and set up a duplicate of the report. To test it, I’ve been letting it run the past few nights to compare the new version to the current version… and surprise surprise, they are not the same.

Current Report: Runs from source/master base, triggered by a zap that runs on a schedule - every night at 8PM a record is added to a table called [Automation Launcher]. This record triggers a script that aggregates the report data, spits out the HTML which is then picked up and emailed by Zapier.

New Report: Runs out of the synced base, triggered by an Airtable automation every night at 8PM - runs a script and spits out the report HTML onto a separate table - which is then picked up and emailed by Zapier.

Here’s where things get weird. Each night there are a couple more records on the Current Report than on the New Report. While investigating why this is, I realized that the records missing from the New Report are not appearing in the synced base until EXACTLY 8PM, every night - which happens to be the exact time that Zapier hits the source base as well as the exact time my new report automation runs.

Takeaways… My synced base is not actually syncing every 5 minutes (which I suppose isn’t totally unexpected, why update all night if no one is looking at it?). BUT something is forcing the base to sync at exactly 8PM. I’m going to change the time my new report runs to be different than the time Zapier hits the source base - I’m interested to see which one is triggering the sync.

Any insight would be greatly appreciated as well.

1 Solution

Accepted Solutions

I just heard back from Airtable Support on this situation, and here is what they said:

When the base is inactive the base will not sync. The base will sync as soon as a user access the base. One workaround to keep the base active without a user active in the base is to create an automation set to trigger at a scheduled time (when users are not active on the base). The automation can perform a simple action like checking or unchecking a checkbox field on a record. Doing this should keep the base active, and thus syncing, without an active user. I’ve passed along the feedback to the team to have this information reflected on our support articles on Sync.

See Solution in Thread

10 Replies 10

I have no insight. But that’s so strange!

Yep, the documentation says every 5 minutes

Hopefully, someone else can chime in with some info!

Similar to how the NOW() and TODAY() formula functions only update every 15 minutes, I’m wondering if the Airtable Sync happens every 5 minutes — but only if the base is currently open on someone’s computer?

If the base is closed, NOW() and TODAY() will only update every hour (and even then, they will only update if something in the base is dependent upon them updating for that particular hour).

So even though Airtable doesn’t specify this in their Sync FAQ’s, I wonder if there is a similar behavior happening here? I’m wondering if the sync doesn’t update in the background (i.e. when the base is closed) unless something is dependent upon it updating — such as the base being accessed via the API through Zapier or Integromat.

However, if it doesn’t start syncing until the base is accessed, then that’s already too late to get updated information to Zapier or Integromat.

So it seems like a quick workaround would be to schedule a “fake automation” to happen 5+ minutes prior to the REAL Zapier automation that you want to run. This “fake automation” could do something simple like search the database and the exit the automation, or simply create then delete a fake record. If my theory is correct, then this would trigger an Airtable Sync, and by the time the “real automation” kicks in, it should be fine.

I think that ultimately we would need to write Airtable Support to get them to chime in on this issue, and possibly have them update the Sync FAQs page — if this syncing behavior does actually operate similarly to the NOW() and TODAY() behavior.

@ScottWorld, you read my mind!

I believe by now I’m able to confidently say that the base is not syncing unless someone (or something) is accessing it. I also did wonder about NOW() and TODAY()… but I think I’m able to debunk that as the sync isn’t even happening every hour - in fact, it’s not happening at all if nothing is accessing the base.

I set up an automation to run at 7:55 PM in the synced base, and new records are now being added at exactly that time.

Additionally, when I popped into the synced base this morning, I saw a few more records be added and several others updated as the sync was triggered per my opening it.

I think I may write to Airtable support to see what the parameters around this actually are. I’m wondering if it has something to do with the size of the source base - maybe larger bases have slower sync intervals?

Wow, good sleuthing, @AlliAlosa!

I will write support as well — I think that their documentation on syncing should be updated to reflect when we can expect syncs to actually happen!

I just heard back from Airtable Support on this situation, and here is what they said:

When the base is inactive the base will not sync. The base will sync as soon as a user access the base. One workaround to keep the base active without a user active in the base is to create an automation set to trigger at a scheduled time (when users are not active on the base). The automation can perform a simple action like checking or unchecking a checkbox field on a record. Doing this should keep the base active, and thus syncing, without an active user. I’ve passed along the feedback to the team to have this information reflected on our support articles on Sync.

@ScottWorld thank you SO much for reaching out to support and clarifying this - I had it on my ever-growing list of things to do and hadn’t gotten to it yet (per usual). :smiling_face_with_halo: also encouraged that we were able to reach the same conclusion :raised_hands:

Yay! You’re welcome! :cowboy_hat_face: :raised_hands:

@ScottWorld

I updated the support articles here, here, and here to call out the limitation and workaround.

Thanks for the callout!

Hi! Thank you very much for your precious intervention. I have a further question, thee is a precise synchronization time following the "Source Base" update?

My process is this:

- When the event occurs I send a webhook via Make
- The webhook triggers an automation inside the Source Base on Airtable (this automation looks up the last created record and updates a field by setting a checked field)

The problem is the time between this update on the "Source Base" and the synchronization on the "Sync Base"

I realized that up to 9 minutes pass and for this I had to insert 2 "Sleep" modules set to 300 seconds (screenshot attached) each on Make before looking for the new (synchronized) record on the "Sync Base".

Can you confirm that the process described is correct? I had read that the ""Sync Base" synchronization takes place within 5 minutes following the "Source Base" update.

Can you give me some information about it? Thank you very much and Happy New Year!

Hi! Thank you very much for your precious intervention. I have a further question, thee is a precise synchronization time following the "Source Base" update?

My process is this:

- When the event occurs I send a webhook via Make
- The webhook triggers an automation inside the Source Base on Airtable (this automation looks up the last created record and updates a field by setting a checked field)

The problem is the time between this update on the "Source Base" and the synchronization on the "Sync Base"

I realized that up to 9 minutes pass and for this I had to insert 2 "Sleep" modules set to 300 seconds (screenshot attached) each on Make before looking for the new (synchronized) record on the "Sync Base".

Can you confirm that the process described is correct? I had read that the ""Sync Base" synchronization takes place within 5 minutes following the "Source Base" update.