Install the FXMacroData redistribution pixel
The Commercial Redistribution plan lets product builders start at a low minimum cost and scale with measured non-bot website users. The pixel must be installed on every page of the approved site before the redistribution API key is enabled.
Billing meter
$25/month minimum
Covers the first 250 measured users, then $10 per 100 measured users.
Trial
14 days
The trial period measures the first billing band.
Activation
Pixel verified
API access opens after the pixel and attribution are detected.
Install checklist
- 1. Add the approved production domain in API Management.
- 2. Paste the generated script into the site-wide layout.
- 3. Add the visible FXMacroData attribution link, or use auto-inject mode.
- 4. Keep the API key on your server, never in browser code.
- 5. Load the site once and confirm API Management marks the pixel active.
- 6. Leave the pixel on every page while using redistribution access.
Commercial Redistribution is governed by the Commercial Redistribution Terms, including the server-side key requirement, no marketplace resale, no API mirroring, and request caps that scale by measured-user block.
1. Add your approved domain
After starting the Commercial Redistribution trial, open API Management and add the website domain that will display FXMacroData-powered data. The dashboard generates the pixel and attribution snippets for that registered domain.
2. Install the pixel on every page
Place the generated script in the global layout, normally before the closing </head> tag or at the end of <body>. API Management uses your approved domain to identify the meter.
<script
async
src="https://fxmacrodata.com/static/js/fxmacrodata-pixel.js"
></script>
The script creates an anonymous browser identifier, records page and app-route views, sends a lightweight heartbeat after 15 seconds, and captures attribution-link clicks. Billing is based on measured non-bot users. You do not send customer data to use the meter.
For single-page apps where only some sections display FXMacroData-powered output, add data-fxmd-meter-mode="exposure" to the script and mark the visible sections as metered modules. In exposure mode, loading the app shell verifies the pixel, but billing starts from module exposure events.
3. Put it in the right framework file
The goal is simple: the pixel must load once on every public page where your product can render FXMacroData-powered data. Common placements are:
HTML, Flask, Django, Rails, PHP
Paste the script and attribution into the shared base layout or footer partial used by all pages.
React, Vite, Vue, Svelte
Paste the script into index.html and the attribution into the persistent app shell or footer component. If only some panels use FXMacroData, use exposure mode and mark those panels with data-fxmd-module.
Next.js app router
Add the script in the root app/layout document and the attribution in the root layout body or shared footer.
Webflow, Framer, no-code builders
Add the script to global custom code before </body> and add the attribution link to the global footer.
4. Mark React and SPA exposures
Do not mount and unmount the pixel script for each React tab. Install the pixel once, then tell the meter when a user can actually see a section powered by FXMacroData. Exposure mode does not require separate routes or a full page reload. The pixel deduplicates repeated views client-side and billing is still monthly unique non-bot users, not view count.
<script
async
src="https://fxmacrodata.com/static/js/fxmacrodata-pixel.js"
data-fxmd-meter-mode="exposure"
></script>
Automatic visible-section tracking
<section data-fxmd-metered data-fxmd-module="calendar">
<CalendarPanel />
</section>
Explicit React hook
useEffect(() => {
if (activeSection === "calendar") {
const pixel = window.FXMacroDataPixel || { q: [] };
if (pixel.trackModule) {
pixel.trackModule("calendar");
} else {
pixel.q.push(["trackModule", "calendar"]);
window.FXMacroDataPixel = pixel;
}
}
}, [activeSection]);
Use stable module names such as calendar, cot, macro_non_usd, news, widgets, or reports. The module name is used for diagnostics and auditability; the invoice still uses unique measured users.
5. Show attribution with a linkback
Redistribution requires visible attribution where FXMacroData-powered data appears. Add the generated link in your footer, data table area, chart footer, or dashboard shell, or use this minimum valid link:
<a
data-fxmd-attribution
href="https://fxmacrodata.com/"
target="_blank"
rel="noopener"
>
Data powered by FXMacroData
</a>
The pixel checks whether the attribution element exists, is visible, and links to FXMacroData. API Management may add UTM parameters based on your approved domain for referral reporting, but those parameters are optional for verification. If you prefer not to add a separate link manually, API Management also provides an optional script mode that injects a small attribution link automatically.
6. Verify the installation
After installing the script and attribution, open the approved website in a normal browser. Then return to API Management. The redistribution panel should show the approved domain, latest measured users, active pixel status, and estimated next invoice.
Expected
Pixel status becomes active and the redistribution API key is enabled.
Browser check
The Network tab should show a request to /fxmacrodata-pixel/v1/events.
No secret check
The browser should never contain your FXMacroData API key.
7. Use the API from your server only
The redistribution API key is server-side only. Do not expose the key in browser code, client-side bundles, mobile apps, or public repositories. Your server should request FXMacroData, cache what is needed for your product, and render approved user-facing views.
Redistribution keys include 100,000 API requests/month for the first 250 measured users, then 5,000 extra API requests/month for each additional 100-user billing step, capped at 500,000 requests/month on self-serve terms. The fixed operational guards are 300 requests/minute, 5,000 requests/hour, and 20 concurrent requests.
Billing examples
Commercial Redistribution has a $25/month minimum covering the first 250 measured monthly non-bot users. Above 250 measured users, the meter is $10 per 100 measured users/month. A measured user is an anonymous browser identifier recorded by the FXMacroData redistribution pixel on an approved product surface.
API request allowance starts at 100,000 requests/month, then adds 5,000 requests/month for each additional 100-user billing step until the 500,000 request/month self-serve cap.
| Measured users/month | Billing quantity | Monthly charge |
|---|---|---|
| 0 to 250 | $25 minimum covers first 250 users | $25 |
| 300 | 3 x 100-user units | $30 |
| 500 | 5 x 100-user units | $50 |
| 1,000 | 10 x 100-user units | $100 |
| 2,100 | 21 x 100-user units | $210 |
| 10,000 | 100 x 100-user units | $1,000 |