Personyze Technical Implementation Guide

A step-by-step resource for developers and technical teams. Learn how to install the tracking code, define content placeholders, configure conversion goals, and integrate your data stack.

Start Now
Install Tracking Code
GTM, HTML, & CMS
Define Placeholders
Content Zones & Selectors
Goals & KPI Tracking
Conversions & Revenue
Extract Data
Cookies, JS & Meta Tags
In-House CRM Sync
Universal Data Matching
Product & Content Feed
Catalog & Article Sync
Privacy & GDPR
Opt-Out JS & Control
3rd Party Integrations
Analytic, ABM & More
Email Sender
SES, SMTP & Webhook
Web Push
Service Worker Setup
REST API
Read/Write Data
Mobile SDK
iOS & Android App
Single Sign-On (SSO)
Okta, Auth0 & More

Install Personyze on Your Site

To enable personalization, you must install the tracking snippet on every page of your site. Choose the method that matches your platform.

Retrieve your Code: Navigate to Account Settings > General > Tracker Settings to copy your unique Site ID and Tracking Snippet.

Option 1: Google Tag Manager (GTM)

Option A: Custom HTML (Manual)
Create a "Custom HTML" tag, paste the full Personyze JS snippet, and trigger it on "All Pages".

Option B: Template Integration (Easiest)
Search the GTM Community Gallery for "Personyze Tracking Code". Add it, enter your Site ID, and trigger on "All Pages". This keeps your container clean.

Crucial Setting: Set Tag Firing Priority to high (e.g., 100) to minimize content flicker. For SPAs, verify if "All Pages" handles history changes or if you need a specific "History Change" trigger.

Option 2: Standard HTML

Paste the snippet directly into the <head> tag of your master template file. Ensure it is placed as high as possible, immediately after your charset and viewport meta tags.

Option 3: CMS Instructions

WordPress: Install "Personyze Personalization" plugin. Requires App Password.
Shopify: Edit theme.liquid. Paste code before </head>.
Magento 2: Content > Configuration > HTML Head > Scripts.
Wix: Settings > Custom Code > Head > Load on all pages.
Squarespace: Settings > Advanced > Code Injection > Header.
Webflow: Project Settings > Custom Code > Head Code.
Weebly: Settings > SEO > Header Code.
Magnolia: Inject into header.ftl template.

Define Placeholders (Zones)

Placeholders are areas on your site where Personyze injects content. Using placeholders instead of popups makes personalization feel native.

Option A: The Visual Selector (No-Code)

  1. Create a new Campaign and add a "Banner" action.
  2. In Display Settings, choose "Show in placeholder".
  3. Click "Find on pages" to open the Simulator.
  4. Navigate your site and simply click the element (e.g., Hero Banner) you want to turn into a zone.

Option B: Manual CSS Selectors

Manually enter IDs or Classes like #home-hero or .sidebar-widget.

Advanced Features: Cycle Content: Rotates multiple campaigns in one spot (Slideshow effect).
Max Simultaneous Actions: Allows stacking multiple banners vertically (e.g., show Banner A AND Banner B).

Conversion Goals & KPI Tracking

Track ROI by defining what success looks like. You can track simple clicks or complex revenue data.

1. Goal Types

  • URL Destination: Triggered when user visits a specific URL like /thank-you or /order-confirmed. Best for lead generation.
  • Track Activity: Track specific interactions like clicking "Add to Cart", hovering over a menu, or watching a video. Use the Visual Selector to pick the element.
  • Grab Data (Revenue): Extract dynamic values (e.g., "$150.00") from the page HTML or a cookie. Essential for calculating ROI and Revenue.
  • External Events: Automatically capture events pushed to the GTM Data Layer or Google Analytics events without extra setup.

2. Advanced Settings

  • Goal Value: Set a Fixed Value (e.g., Lead = $10) or a Dynamic Value (grabbed from the page, like Purchase Total).
  • Frequency: Set "Once per visit" for leads (to avoid duplicate counts on refresh) or "No Limit" for purchases (to track every transaction).

3. E-Commerce Metrics

If you enable product/revenue tracking, Personyze automatically calculates Total Revenue, AOV (Average Order Value), and Contribution Rate (how much revenue was influenced by personalization).

Extract Site Data (Variables)

Enhance targeting by "grabbing" data from the visitor's browser or page session to build a rich user profile.

Supported Data Sources

You can create a "User Profile Variable" from any of these sources:

  • Page Elements (HTML): Scrape text visible on the page (e.g., "Hello, [Name]" or "Points: 500"). Use the Visual Selector.
  • Cookies: Read values stored in browser cookies (e.g., login_status, affiliate_id).
  • JavaScript Variables: Read global JS variables (e.g., window.userLevel or dataLayer[0].userId).
  • Meta Tags: Read SEO meta tags to understand content context (e.g., <meta name="author" content="John">).
  • URL Parameters: Read UTMs or query strings (e.g., ?campaign=summer_sale).
Advanced Logic: You can use Regular Expressions (Regex) to clean up grabbed data (e.g., removing "Welcome " to leave just the name) and set Persistency (save this data to the user's permanent profile vs session only).

In-House CRM & Data Integration

Connect your internal databases (custom CRM, SQL, ERP) with real-time website behavior.

Crucial: How Matching Works To connect an anonymous visitor to your uploaded CRM data, Personyze needs a Common Identifier (Key). First, your uploaded list must have a unique key (e.g., Email, CRM ID, or Loyalty #). Second, this Same Key must be available on your website (in a Cookie, URL, JS Variable, or Page Element). Finally, you must set up a "Grab Data" rule (see Step 4) to tell Personyze where to find this key on the live site. Once Personyze "grabs" this key from a visitor, it links their session to the rich CRM profile you uploaded.

Integration Methods:

  • CSV Upload: Manually upload lists of User IDs + Attributes (VIP Status, Industry, Offline Purchases).
  • Live Feed: Sync via a Google Sheet URL or HTTP Feed that updates automatically.
  • API: Use the Personyze API to push user updates in real-time from your backend.

Product & Content Feed

This is required for running Product Recommendations AND Article/Content Recommendations.

1. Prepare Your Feed

Personyze accepts CSV, XML, JSON, RSS, Atom, or Google Merchant Feeds.

2. Map Your Columns

Go to Settings > Data & Content > Product Feed. You must map the fields in your feed to Personyze attributes:

  • Internal ID: MUST match the Product/Article ID found on your live page (SKU/ID) or GTM variable. This allows Personyze to know which item the user is currently viewing.
  • Title: The name of the product or article.
  • Image URL: For displaying in recommendation widgets.
  • Link URL: Where the recommendation clicks to.
  • Price / Category: For filtering and logic.

Alternative Methods

  • Site Crawler: If you don't have a feed, contact your account manager to set up a crawler that builds the feed from your site automatically.
  • SFTP Upload: For large enterprise catalogs, ask your account manager to enable secure SFTP upload.

Privacy & Opt-Out

Ensure compliance with GDPR/CCPA by integrating with your Consent Management Platform (CMP).

JavaScript API:

Use these commands inside your Cookie Banner's "Accept" or "Decline" logic:

  • _S_T.system.off(): Stop Tracking. Call this if a user declines cookies. No data will be sent.
  • _S_T.system.on(): Start Tracking. Call this when a user accepts cookies.
  • _S_T.system.is_on(): Returns true/false to check current status.

Strict Mode: You can configure Personyze to run in "Strict Mode" where it doesn't track IPs or PII by default until explicit consent is given via the command above.

3rd Party Integrations

Plug-and-play integrations with the tools you already use. To access these, go to: Settings > Integrations.

Analytics & Data

Send Personyze audience and campaign data to your analytics tools for reporting.
Google Analytics
Segment
Tealium
Mixpanel

CRM & Marketing

Bi-directional sync of leads and user attributes between Personyze and your CRM.
Salesforce
HubSpot
Zoho
Pardot
ActiveCampaign

ABM & B2B Data

Enrich anonymous traffic with Company Name, Industry, and Revenue data.
Clearbit
6sense
Leadfeeder
Albacross
ZoomInfo
LeadRebel
Demandbase

Infrastructure

Connect backend systems, authentication, and workflow automation.
WordPress
Single Sign On
Webhooks
Zapier

Email Sender Configuration

Configure how Personyze sends your triggered emails and newsletters.

Option A: Default Sender (Amazon SES)

By default, Personyze uses Amazon SES. You can authorize your own "From" address (e.g., info@yourdomain.com).

  • Add your desired email in Personyze settings.
  • You will receive a verification request from AWS.
  • Recommendation: Contact your account manager to get DKIM records to upload to your DNS for better deliverability.

Option B: Custom SMTP

Use your own mail server (SendGrid, Mailgun, Outlook, etc.) for full control.

  • Select "Mail provider (SMTP)".
  • Enter your Host, Port (e.g., 465 or 587), User, and Password.

Option C: Webhook (HTTP POST)

Send the email data payload to your own endpoint or automation tool (like Zapier) to trigger the send externally.

Web Push Notifications Setup

To enable browser push notifications, you must install a Service Worker.

1. Download the Service Worker

Download the standard file: sw.js

2. Install on Your Server

  • Scenario A (No existing Service Worker): Upload the `sw.js` file to the root folder of your website (e.g., `yoursite.com/sw.js`).
  • Scenario B (You already have a Service Worker): Do NOT overwrite your file. Instead, ask your developer to merge the contents of our `sw.js` into the top of your existing service worker file.

Note: Each site can only have one active Service Worker file.

Personyze REST API

Integrate Personyze programmatically with your backend systems to read or write data.

Documentation: Access the full API references here: REST API Guide

Capabilities

  • User Data: Push CRM data or update user profiles.
  • Content: Update your product or content catalog.
  • Events: Report offline conversions or backend events.

Mobile SDK (iOS & Android)

Extend personalization to your native mobile applications.

Documentation: View the SDK setup guide: Mobile SDK Guide

Features

  • Unified Profile: Track users across Web and App.
  • Native Targeting: Use app-specific behaviors for segmentation.
  • Push Notifications: Trigger personalized alerts.

Single Sign-On (SSO)

Manage access to the Personyze dashboard using your enterprise identity provider.

Benefits:

Centralized user management, one-click access for employees, and enhanced security compliance.

Supported Providers

  • Auth0
  • Okta
  • OneLogin
  • Xecurify

Setup Instructions

  1. Go to Settings > Integrations > Single Sign On in the Personyze console.
  2. Select your provider from the list.
  3. Enter the required Metadata URL or Certificate details from your IdP.
  4. Save and test the connection.

Frequently Asked Questions

Will the tracking code slow down my website?
No. The Personyze tag loads asynchronously, meaning it runs in the background and does not block the rendering of your main page content. This ensures it has negligible impact on your site speed or Core Web Vitals.
Can I install via Google Tag Manager?
Yes. This is the recommended method. You can use our official GTM Template (search "Personyze") or create a Custom HTML tag. Just ensure you set the tag to fire on "All Pages."
Is Personyze GDPR compliant?
Yes. We offer tools to help you comply, including a "Strict Mode" that disables tracking until consent is given. You can also trigger tracking only after a user accepts cookies via your CMP (Consent Management Platform).
How do I sync my product catalog?
You can upload a Product Feed (CSV, XML, JSON) or sync directly from Google Merchant Center. If you don't have a feed, our Site Crawler can automatically scrape product data from your pages.
What if I have a Single Page Application (SPA)?
Personyze fully supports SPAs (React, Angular, Vue). Our tracker automatically detects "virtual pageviews" when the URL changes without a full reload, ensuring behavior is tracked correctly across the session.
Can I track users across devices?
Yes. If a user logs in on both Desktop and Mobile (or clicks an email link on both), Personyze merges their profiles using a unique identifier (like User ID or Email Hash), giving you a unified view of their journey.
Do I need a developer to set up goals?
Not necessarily. Simple goals like "URL Visits" or "Button Clicks" can be set up using our visual interface. More complex goals, like capturing dynamic revenue values, might require knowing the CSS selector or JavaScript variable name.
How does the CRM integration work?
We sync data bi-directionally. You can push website behavior (e.g., "Viewed Pricing Page") to your CRM, and pull CRM attributes (e.g., "VIP Customer") into Personyze to personalize the website experience.
Can I use my own email sender?
Yes. While we provide a default sender via Amazon SES, you can configure your own SMTP server (SendGrid, Mailgun, Outlook) in the settings to ensure emails come from your own domain with full deliverability control.
What happens if I change my website theme?
If you change your HTML structure (CSS IDs or Classes), some placeholders or "grab data" rules might break. We recommend checking your Personyze campaigns after any major site redesign to ensure selectors are still valid.
Can I exclude internal traffic?
Yes. You can filter out traffic from specific IP addresses (like your office IP) in the account settings so that employee visits don't skew your analytics data.
Does the tracking work offline?
For web tracking, an internet connection is required. However, if you use our Mobile SDK, we can cache events locally on the device and sync them once the user comes back online.
How secure is the data transfer?
All data is transmitted via HTTPS encryption. We adhere to strict security protocols, including SOC 2 compliance, to ensure your customer data remains safe.
Can I manage multiple domains in one account?
Yes. Personyze supports multi-domain tracking. You can manage separate sites under one account or link them to share user data across different domains (Cross-Domain Tracking).
What is a "Service Worker" for push notifications?
A Service Worker is a script that runs in the background of a browser. It is required to receive push messages even when the user is not actively on your website. You must upload this file to your server's root directory.