Advanced
The Advanced tab groups the settings for tracking, connecting other tools, and customization. Only the account owner and admins see it: teammates with the Member role don't have this tab.
The tracking and customization options in this section require a Pro plan. The cookie banner is available on every plan.
API Key
Your API key is a secret code that links TinyPages to external automation tools like Zapier or Make. With it, you can set up your own scenarios, for example automatically adding a contact to TinyPages when a new row is added to a Google Sheet, or sending a Slack message when someone purchases a product.
Your key is already created: it appears, partly hidden, under API Key. Click the copy icon next to it, then paste it into the tool you want to connect. Using the key directly in tools like Zapier or Make requires a Pro plan. Connecting Claude or ChatGPT stays free on every plan.
The full API documentation is available at api.tinypages.dev/docs.
Regenerating your key
Regenerating your key cuts off every existing access at once. Do it when a team member leaves, for example, or if you think your key was shared by mistake.
- Click the circular arrows icon next to your key.
- Confirm with Regenerate key.
The old key stops working immediately. After that, reconnect Claude or ChatGPT, and paste the new key into the tools that used the old one, such as Zapier or Make.
Cookie banner
If your visitors are in Europe, the law (GDPR) asks you to get their consent before measuring their visits with Google Analytics or following them for your ads. In the Cookies section, turn on Show the cookie banner and TinyPages takes care of it on every page of your site.
Your visitors then see a banner at the bottom of the screen with three choices: Accept all, Reject all or Customize. Customize lets them choose between two categories, audience measurement and advertising. The cookies your site needs to work (member login, payment, forms) always stay on.
Until a visitor agrees, TinyPages holds back the tools you added on this page:
- Google Analytics loads only once the visitor accepts audience measurement.
- Facebook Pixel and its events (lead, add to cart, purchase) load only once the visitor accepts advertising. Nothing about their visit is sent to Meta, from the browser or through the Conversions API.
- Google Tag Manager loads as soon as the visitor accepts one of the two categories, and passes their choice on to your tags (Google Consent Mode). For tags from other networks inside your container, set their consent rules in Tag Manager.
The choice is remembered for 6 months, then the banner shows again. A small cookie tag in the bottom right corner of your pages, next to "Built with TinyPages" when it shows, lets visitors change their mind at any time. If they withdraw their consent, the related cookies are removed and the page reloads.
The banner and the tag appear on your web pages, your blog and your forms. They stay out of the order page and the member area, so they never cover the payment button or the lessons. A visitor who lands straight on an order page without having made a choice (from a payment link you shared, for example) is tracked as usual there, so the sale still reaches Meta and Google. A visitor who refused cookies elsewhere on your site is never tracked, the order page included.
TikTok, Pinterest and other tools added in Custom code
By default, the scripts you paste in Custom code load for every visitor, whatever they choose. To make one of them wait for consent, add data-consent to its <script> tag:
data-consent="ads"for advertising tools such as TikTok, Pinterest, Snapchat, LinkedIn or Xdata-consent="analytics"for statistics tools such as Hotjar or Matomo
Here is the TikTok pixel, for example. Paste the code TikTok gives you, then add the attribute to the opening tag:
<script data-consent="ads">
!function (w, d, t) { /* the rest of the code copied from TikTok */ }(window, document, 'ttq');
</script>
That script now loads only once the visitor accepts advertising. If the code has several <script> tags, add the attribute to each one. Scripts without it, like a countdown or an affiliate tool, keep loading for everyone. For the Facebook Pixel and Google Analytics, prefer their own fields above: TinyPages handles them for you, events included.
If your custom code already includes a cookie tool like Cookiebot or Axeptio, leave this setting off so your visitors don't see two banners.
Facebook Pixel
Connect your Meta Pixel so Facebook and Instagram can see what happens on your pages: who views them, who signs up, and who buys. That feedback is what lets Meta show your ads to the right people and report the results you actually get for your budget.
There are two fields to fill in, and both play a role:
- Pixel ID identifies your pixel. On its own, it lets the visitor's browser report activity to Meta.
- Access token (Conversions API) lets TinyPages send those same events to Meta directly from its servers, not only from the visitor's browser. This is what makes sales tracking dependable. Many browsers (Safari on iPhone, ad blockers, refused cookies) block the browser signal, so without this token some purchases never reach Meta even though page views still do.
Once both are saved, TinyPages fires these standard Facebook events for you:
PageViewwhen a page is viewedLeadwhen someone signs up through an Email form block on your pages (or, if you use double opt-in, when they confirm their email)AddToCartwhen an order page loadsPurchasewhen a payment is completed
Adding your access token
- In Meta Events Manager, go to Datasets and select your dataset (this is what Meta now calls your pixel).
- Open the Settings tab, then in the left menu open Server-side and click Conversions API.
- Under "Set up direct integration", click Generate access token, then copy it (it starts with
EAA). - Back in TinyPages, paste it into the Access token field next to your Pixel ID, and save.
This almost always means the access token is missing. With only the Pixel ID, purchase tracking depends on the customer's browser, which frequently blocks it. Add the Conversions API access token using the steps above so TinyPages reports each sale to Meta directly. Keep in mind that Meta can also take a few hours to display a new purchase.
Google Tracking
Enter a Google Tag Manager ID or a Google Analytics ID to add tracking to your entire site. This is the recommended path if you want detailed analytics beyond TinyPages' built-in view counts.
Custom code
Paste here the code you want added to every public page of your site: third-party tracking scripts, chat widgets, custom fonts, small style tweaks with a <style> block, or any other code your site needs on every page. From this field, TinyPages only keeps four kinds of tags: <script>, <style>, <meta> and <link>. Anything else, such as a <div>, an <iframe> or a <noscript> block, is ignored without a warning. To show something on a page, add a Custom code block in the editor instead. <meta> and <link> tags go into the <head> of your pages (handy for a site verification tag), and scripts load once the page is displayed. If you use the cookie banner, see how to make a script wait for consent.
Making a Custom code block as wide as the window
A Custom code block normally sits within the page column (1080px). If one of them needs the whole width of the window (a wide embed, a map, a table), you can release it from this field. On your published page, right-click the block, choose Inspect, and copy the value of its data-node-id attribute. A block added by Claude, ChatGPT or the API has no data-node-id: to target it, add a new Custom code block in the editor, paste the same code into it, and delete the old one. Then paste this, replacing XXXX with that value:
<style>
.editor-theme:has(> .tp-custom-html[data-node-id="XXXX"]) { max-width: 100% !important; }
.tp-custom-html[data-node-id="XXXX"] {
--wide-block-max-width: none;
margin-inline: calc(-1 * var(--page-gutter));
}
</style>
Only that block spreads out. Text, images and the other blocks on the page keep their usual width, and the page never scrolls sideways. To release every Custom code block on your site instead, remove both [data-node-id="XXXX"] parts.
Tracking ad conversions
If you run ads on X (Twitter), TikTok, LinkedIn, or a similar platform, you want them to know when someone signs up or buys from you. That feedback is how each platform learns who to show your ads to. TinyPages announces each of these key moments on your page, and you connect them to your ad platform with a few lines in the Custom code box.
A built-in helper called onTinyPagesEvent is already available on every one of your pages, so there's nothing to install. You tell it which moment to watch, and what to do when it happens.
There are three moments you can react to:
| Moment | When it happens | Information you receive |
|---|---|---|
lead | A visitor signs up through an Email form block (the forms you build in Forms don't trigger it) | email, first name, last name, phone |
add_to_cart | An order page opens | product, value, currency |
purchase | A payment goes through | email, product, value, currency, first name, last name, phone |
First name, last name, and phone are only filled in when your form actually asks for them. If a form collects only an email, the rest stays empty, so always check a value before you use it.
Example: send a sign-up to X (Twitter). First load your X base pixel (replace YOUR_PIXEL_ID with your own), then react to the sign-up:
<!-- Your X (Twitter) base pixel -->
<script data-consent="ads">
!function(e,t,n,s,u,a){e.twq||(s=e.twq=function(){s.exe?s.exe.apply(s,arguments):s.queue.push(arguments)},s.version='1.1',s.queue=[],u=t.createElement(n),u.async=!0,u.src='https://static.ads-twitter.com/uwt.js',a=t.getElementsByTagName(n)[0],a.parentNode.insertBefore(u,a))}(window,document,'script');
twq('config','YOUR_PIXEL_ID');
</script>
<!-- Send the conversion when someone signs up -->
<script data-consent="ads">
onTinyPagesEvent('lead', function (lead) {
twq('event', 'tw-xxxxx-xxxxx', {
email_address: lead.email || undefined,
phone_number: lead.phone || undefined,
});
});
</script>
Each <script> tag carries data-consent="ads": when the cookie banner is on, it waits until the visitor accepts advertising (see above). Without the banner, the attribute changes nothing.
Example: track a purchase.
<script data-consent="ads">
onTinyPagesEvent('purchase', function (order) {
twq('event', 'tw-xxxxx-xxxxx', {
value: order.value,
currency: order.currency,
email_address: order.email || undefined,
});
});
</script>
Using Google Tag Manager? The same three moments are also sent to your data layer as tinypages_lead, tinypages_add_to_cart, and tinypages_purchase. Create a Custom Event trigger for each name, then read the details from Data Layer Variables under tinypages, for example tinypages.email or tinypages.value.
Delete your account
At the very bottom of the tab, Delete my account permanently removes your account and all its data. This cannot be undone, so export anything you want to keep first. Only the account owner sees this option.