20-minute walkthrough with 2–3 personalized examples on your real pages.
Email, chat, or 24/7 phone support included on every paid plan.
One visitor profile behind all of it. Anything you build in one place is available in the others.
One REST API over every object in the account, server-side SDKs for Node, PHP and Python, native mobile SDKs, a client-side JavaScript API, and an MCP server for assistants. Then automation rules and scheduled reports that keep running when nobody has the panel open.
You looked at Enterprise twice this week. Here is what it costs at 240 seats.
Decided on your server before the page painted — Marco never saw the starter price.
The same decision, asked for by the phone — no webview, and the engine is your own server.
Whose trial ends this week with no card on file?
personyze › list_visitors
Three, and Marco Reyes is the one worth a call today — third visit this week, already priced at 240 seats, and his trial ends Friday.
read + write, scoped
The same decision, handed to an assistant — over an open protocol, not a scraped screen.
Third visit this week, priced at 240 seats, still no card on file — and his trial ends Friday.
POST /your-webhook
The same decision, one last time — as a reason for the person who could pick up the phone.
personyze.decide(user)
The same decision, tested and counted — one winner, served by every caller at once.
The audience model, the targeting and the reporting are the ones the panel uses. What changes is who asks and what renders the answer.
Server-side, in the app, or in the page. Pick the one that fits where the decision has to land.
One JSON endpoint with three ports. The caller supplies the user id and carries an opaque session id, so it works for a kiosk, a set-top box, or a page your framework renders before a browser ever sees it.
Native SDKs with their own tracker, condition and action APIs — the same audiences and the same goals as the website, returned as JSON your components draw.
Read the profile, fire a goal, ask for a decision or re-run a placement from your own script — useful when the page is a single-page app and nothing reloads.
Brands running Personyze in production
Average rating on G2, Capterra & Crozdesk
No nightly sync, and no second copy of the profile drifting out of date
Not a read-only feed of what happened. The same objects, created and changed from your own code.
Create a campaign, add actions to it, change their content and switch them on. These are the same records the panel writes, with the same versioning underneath, so an edit made by a script is recoverable exactly like one made by a person.
GET POST PUT /rest/campaigns
An audience can be a set of conditions the engine evaluates, or a static list your own system keeps in step by adding and removing members as people qualify. Both kinds target anything on the platform.
POST /rest/audience_members
Read a profile, write your own fields onto it, or hand the engine an identity from your CRM so the website, the app, the email and a webhook are all talking about the same person rather than four anonymous sessions.
POST /rest/identify
Push products or articles, keep prices and stock current, and let the recommendation engine rank against what you actually sell today rather than a nightly export of what you sold yesterday.
PUT /rest/products
Define what a conversion is, then report one from your server when it happens somewhere the browser could never have seen it — a phone order, a signed contract, a refund that should take one back off the board.
POST /rest/goal_reached
Campaign performance, traffic, product statistics and A/B results, with the metric definitions the panel uses. Pull them on demand, or have them sent on a schedule to people who will never log in.
GET /rest/reports/:id
The parts that should happen without anybody deciding to make them happen — and the winner going live on its own once it is a winner.
Watch a segment, a goal or a feed and act on it — switch a campaign on, move somebody into a list, fire an event to your analytics. The rule runs on the schedule you set rather than when somebody remembers.
The report you would have exported, sent on a schedule to the people who ask for it — with the same breakdowns and the same metric definitions as the screen it came from.
Split traffic across variations, watch the numbers where you already watch them, and let the engine serve the winner once it is sure. Every caller starts serving it at the same moment — nothing to redeploy, nothing to remember.
The MCP server puts the account behind an open protocol, so Claude, ChatGPT or any MCP client can read it and change it in conversation — with the permissions you granted, and revocable on its own.
“Which campaigns lost ground this month?” — and it reads the same performance numbers the panel shows, rather than a screenshot of them.
A campaign draft, an audience from a description, a page group, a goal. It comes back as a draft you open and check, not something already live.
Move somebody into an audience, switch a campaign on, change a piece of content, open a support ticket — each one a tool it had to be granted.
What authenticates a server is not what authenticates an assistant, on purpose.
Answered the way they would be on a call.
No. The REST API and the server-side SDKs make a decision from your own server and hand you the content to render — nothing has to run in the browser. Most accounts use both: the tag for the behavioural signal, the API for the decisions they want to own.
You pass an identity — your user id, an email hash, whatever your system already calls them. Every caller that passes the same identity reads and writes one profile, which is what stops the website and the app from making two different offers.
Both. Campaigns, actions, audiences, goals, catalogs and page groups can be created and changed, not just listed. Content changes go through the same versioning the panel uses, so a bad edit is recoverable.
A server-side call is yours to time out. Set a budget you are comfortable with, fall back to your default content when it is exceeded, and the page still renders. Nothing about the decision is load-bearing for your own rendering.
No — it is the same account behind an open protocol. The tools an assistant sees map onto the same objects the REST API exposes, with permissions you grant and can revoke separately from your API key.
That is the point of them. Rules evaluate on their schedule and reports send on theirs, whether or not anybody has the panel open.
Start with the REST API and add the pieces you need — server-side SDKs, the mobile SDKs, the MCP server, rules and reports. Nothing here is a different product; it is the same engine, answering a different caller.