Works with your stack
Cookie consent for AddToAny Share Buttons
on every page, even without buttons
AddToAny loads its script from AddToAny’s servers on every public page, even pages without buttons. That script opens a hidden frame that reads cookies on addtoany.com. Its WP Consent API support only covers the official-style buttons.
By AddToAny · addtoany.com · WordPress.org
Is this your product? Tell us if anything here is out of date. Write to us
AddToAny Share Buttons
WordPress plugin
- Tested version
- 1.8.18
- How
- Tested automatically around each Cookie Rocks version
- Last test
- 7 November 2026
- Latest version
- 1.8.18 tested
- Active installs
- 300,000+
What AddToAny Share Buttons adds to your visitors’ browser
Trackers it loads
- AddToAny →Preferences
What matters for consent with AddToAny Share Buttons
A frame from AddToAny on every page
The AddToAny script creates a hidden frame that reads the visitor’s favourite sharing networks from AddToAny’s cookies, then loads its menu and icons from AddToAny. No cookie is written on your site.
The local copy still calls out
With “Cache AddToAny locally”, the main script comes from your site, but the menu frame still loads from AddToAny as soon as the page opens.
Counts call the networks
With share counts on, the visitor’s browser asks Pinterest, Reddit, Tumblr or Facebook for counts when the page loads. Opening the menu or copying a link sends a statistic to AddToAny.
WP Consent API, for a few buttons
AddToAny reads the marketing choice on the server only to switch off its official-style buttons. The script, the frame and the counts do not wait, and a cached page shows the same buttons to everyone.
What our tests found on AddToAny Share Buttons
Set before the choice · AddToAny Share ButtonsCookie Rocks also holds AddToAny's local copy of page.js
setting “Cache AddToAny locally”
With AddToAny's local cache on, Cookie Rocks also holds the copy of page.js served from the site (wp-content/uploads/addtoany/page.js), so nothing reaches static.addtoany.com before consent. The buttons appear after Accept, without a reload.
Seen in our tests, 18 October 2026, AddToAny Share Buttons 1.8.18.
Set before the choice · AddToAny Share ButtonsAddToAny local cache still loads files from static.addtoany.com on page open
setting “Cache AddToAny locally” · by default: Off
page.js comes from the site, but the menu frame, a module and the icons still load from static.addtoany.com before any click. No cookie is set before a click.
Seen in our tests, 18 October 2026, AddToAny Share Buttons 1.8.18.
Full detail
With its local cache option on, AddToAny serves page.js from the site (wp-content/uploads/addtoany/page.js) and sets a2a_config.static_server to that folder. The script still loads its menu frame, a module and the button icons from static.addtoany.com as soon as the page opens, before any click. No cookie is set before a click.
Depends on a setting · AddToAny Share ButtonsAddToAny's local cache option still loads one file from AddToAny
setting “Cache AddToAny locally (addtoany_options['cache'])” · by default: off
With this option (off by default), page.js is served from the site, but the utility frame still loads from static.addtoany.com. The plugin turns the option off if files are old or fail to download.
Read in its code, 16 October 2026, AddToAny Share Buttons 1.8.18.
Full detail
With the local cache option (off by default), AddToAny serves page.js from uploads/addtoany/page.js and sets a2a_config.static_server to that folder; the utility iframe sm.25.html stays hard-coded to static.addtoany.com. The files are fetched by the server from addtoany.com; if page.js is missing the tag still points to the local address (404), and if the file is older than 2 days, or a download fails, the plugin turns the option back off.
Set before the choice · AddToAny Share ButtonsAddToAny loads its script on every page, even without share buttons
page.js opens a hidden frame from static.addtoany.com that reads the visitor's preferred networks from addtoany.com cookies. It writes no cookie or storage on the site itself.
Read in its code, 16 October 2026, AddToAny Share Buttons 1.8.18.
Full detail
AddToAny enqueues static.addtoany.com/menu/page.js (defer) on every public page, even without buttons, after an inline window.a2a_config script. page.js creates a hidden iframe, static.addtoany.com/menu/sm.25.html (AddToAny Utility Frame), which reads the visitor's preferred sharing networks from cookies on addtoany.com (page_services, feed_services) and passes them back by postMessage, then loads its core module and icons from static.addtoany.com. page.js and the core module write no cookie or browser storage on the site. The PHP filter addtoany_script_disabled removes the script.
Good to know · AddToAny Share ButtonsAddToAny sends stats on use and can fetch share counts on page load
setting “Show count”
- Sends a POST to stats.addtoany.com/menu when the full menu opens, a link is copied or the visitor returns from a share.
- With Show count on, the browser asks Pinterest, Reddit, Tumblr or Facebook for share counts on page load.
- Official-style buttons are copies linking to addtoany.com, without the networks' own code.
Read in its code, 16 October 2026, AddToAny Share Buttons 1.8.18.
Full detail
AddToAny's core module sends a POST to stats.addtoany.com/menu (view, copy or post, the site's domain, flags for ad tags found on the page) when the full menu opens, a link is copied or the visitor returns from a share. With Show count on, the visitor's browser requests share counts directly from Pinterest, Reddit, Tumblr or Facebook (Like replica) when the page loads. Official-style buttons are replicas linking to addtoany.com/add_to/, without the networks' SDKs.
Good to know · AddToAny Share ButtonsAddToAny uses WP Consent API only to switch off its official-style buttons
Its script, utility frame and share counters do not wait for consent, and it sends no Consent Mode signal. With page caching, the cached buttons are served to everyone.
Read in its code, 16 October 2026, AddToAny Share Buttons 1.8.18.
Full detail
AddToAny registers with WP Consent API and reads wp_has_consent('marketing') on the server at init, but only to switch off its official-style buttons (Like, Tweet, Pin, LinkedIn replicas). page.js, the utility frame and share counters do not wait for consent, and it sets no Consent Mode signal; it only pushes AddToAnyShare events into gtag or dataLayer when they exist. With page caching, the cached version of those buttons is served to everyone.
How we test it
Around each version, with its latest release
Around each Cookie Rocks version, a fresh WordPress installs its latest version from WordPress.org next to Cookie Rocks and runs the same checks. A new version joins the next run on its own.
- AddToAny Share Buttons 1.8.18, tested on 7 November 2026.
- The banner shows, the trackers of the test page wait for consent and load after it, and Cookie Rocks raises no PHP error.
- Settings of the test: Default settings after activation.
- Last run: AddToAny Share Buttons 1.8.18 on 7 November 2026, with WordPress 7.1.3.
Social sharing
Other plugins of the same kind.
Questions
Does AddToAny need consent?
Its script, frame and counts reach AddToAny and the networks before the choice. Cookie Rocks holds known trackers until the visitor agrees. A plugin with plain share links loads nothing before the click.
What happens after the 30-day trial?
The banner, your visitors’ choices and your proofs of consent keep working. Without a key, most settings lock, updates and support stop. Take a key at any time and everything opens again.
For sites with AddToAny
Sharing, after the choice.
the frame calls out
Every feature of the complete plugin for 30 days, no card.
- During the trial: everything, including the full settings and the scans
- After 30 days without a key: the banner, your visitors’ choices and your proofs of consent keep working
- What waits for a key: most settings, updates and support

Get your trial key
Your e-mail and your site. Your key arrives as soon as you confirm your e-mail.