Skip to main content
When a page uses data binding, scrolling can re-sync the phone number field from the app’s backend, overwriting the Invoca Tag’s swapped number.

Symptoms

  • The number doesn’t swap on the mobile version of a page, but does swap correctly on desktop.
  • The page uses “data binding.”
  • Running Invoca.PNAPI.run() in the console forces the number to swap.
  • Scrolling further down the page causes the number to swap back to the original.
Applies to: Invoca Tag

Cause

Data binding is a technique that binds two data sources — or two representations of the same data — together and keeps them synchronized. As a visitor scrolls, the application syncs data from its backend with the UI element, which overrides the Invoca Tag’s swapped number. This only happens on page load or when Invoca.PNAPI.run() is called. Data binding is a common and reasonable practice in modern software development, but it means the page’s own application overrides the Tag’s number swap — the number field is “bound” to the site’s backend data.

Resolution

To let the Invoca number persist, you’ll need to eliminate data binding on the phone number field within your Single Page Application (SPA). Your developers will need an alternative method to insert the phone number on the page, so it doesn’t override the number after Invoca replaces it.

Where to go next

Last modified on September 21, 2026