Communication & Background

Background Sync

Probing…

Background Sync is a web platform capability in the Communication & Background category. Defer work until connectivity returns. Supported in Chromium 49+; not available in Firefox and Safari. Requires a secure context (HTTPS or localhost).

Secure context

Permission background-sync: unknown

Try it

Loading demo…

Code

const reg = await navigator.serviceWorker.ready
await reg.sync.register('demo-sync-tag')
const tags = await reg.sync.getTags()
// In the service worker:
// self.addEventListener('sync', e => {
//   if (e.tag === 'demo-sync-tag') e.waitUntil(replayQueue())
// })

Browser support

Chromium
49
Firefox
No
Safari
No

Frequently asked questions

Which browsers support Background Sync?

Supported in Chromium 49+; not available in Firefox and Safari.

Does Background Sync require HTTPS?

Yes. Background Sync needs a secure context, so it only works over HTTPS (or on localhost during development).

What is Background Sync used for?

Defer work until connectivity returns.

Can I try Background Sync in my browser?

Yes. shwcs.net runs a live Background Sync demo that probes your current browser and lets you try the API. Everything runs locally — nothing is sent anywhere.

MDN reference ↗ Specification ↗