Changelog
We ship new features, fixes, and improvements to Formo every week.
Changelog
We ship new features, fixes, and improvements to Formo every week.
Here are this week's highlights:
Behavior Filters Based on First-Seen
Transaction Frequency Chart
Query Parameter Redaction
Sticky Referrer Tracking
Improvements and Fixes
Behavior Filters Based on First-Seen
Behavior filters now support First-seen relative time windows to make targeting much more precise.

Until now, behavior filters were limited to rolling windows ("did X in the last N days"). You can now anchor windows to each user's first-seen timestamp, so you can ask questions like:
Users who visited the Trading Competition page within 2 hours of their first session (attribute engagement directly to the campaign that brought them in).
Users who connected a wallet, deposited, and clicked "Enroll" within their first 24 hours (first-day activation funnel).
Users who came back to transact more than 7 days after first-seen (true returning users vs. same-session conversions).
Together these mean better attribution to specific campaigns, sharper onboarding activation analysis, and more targeted segments.
Learn more in the Wallet Segmentation guide.
Transaction Frequency Chart
A new transaction frequency chart on the Users page show you how often your users transact.

View the distribution of transaction counts per wallet to distinguish one-time users from power users, spot drop-off between first and second transactions, and target wallets by activity tier.
Query Parameter Redaction
You can now strip sensitive query parameters before events are stored or sent. Pass a list of query parameter names and the SDK redacts matching keys (case-insensitive) from event properties.

Learn more in the Web SDK docs.
Sticky Referrer Tracking
The Web SDK now keeps first-touch referrer sticky across an entire session, so internal navigation no longer overwrites the source that brought a user in.
This means cleaner channel reports, more accurate first-touch attribution, and no more "self-referral" noise from internal page-to-page navigation.
Improvements and Fixes
Hardened AI Insights generation so Acquisition, Activation, and Behavioral cards reliably render on the page and in the weekly email.
Improved Ask AI response quality with an eval-and-review harness, tighter prompt rules, and better date and tool-selection handling.
Extracted
volume,revenue, andpointsto typed columns on events for faster, more reliable revenue and volume queries across dashboards and the SQL Explorer.Fixed a bug with filtering by Referrer URLs.
Steered invited users to join their team's existing workspace during onboarding instead of accidentally creating a new one.
Added wallet icons (via RDNS) to the Top Wallets chart for quicker visual identification of which wallets your users are connecting with.
Standardized all destructive-action confirmation modals to a single "type the resource name to confirm" pattern across projects, workspaces, dashboards, charts, and API keys.
Added an upgrade button to the Usage page, mirroring the Billing page placement.
Upgraded
@formo/analyticsto v1.32.0 across all 17 example apps.Improved infrastructure monitoring for faster incident detection.
Performance and security improvements.
Here are this week's highlights:
Behavior Filters Based on First-Seen
Transaction Frequency Chart
Query Parameter Redaction
Sticky Referrer Tracking
Improvements and Fixes
Behavior Filters Based on First-Seen
Behavior filters now support First-seen relative time windows to make targeting much more precise.

Until now, behavior filters were limited to rolling windows ("did X in the last N days"). You can now anchor windows to each user's first-seen timestamp, so you can ask questions like:
Users who visited the Trading Competition page within 2 hours of their first session (attribute engagement directly to the campaign that brought them in).
Users who connected a wallet, deposited, and clicked "Enroll" within their first 24 hours (first-day activation funnel).
Users who came back to transact more than 7 days after first-seen (true returning users vs. same-session conversions).
Together these mean better attribution to specific campaigns, sharper onboarding activation analysis, and more targeted segments.
Learn more in the Wallet Segmentation guide.
Transaction Frequency Chart
A new transaction frequency chart on the Users page show you how often your users transact.

View the distribution of transaction counts per wallet to distinguish one-time users from power users, spot drop-off between first and second transactions, and target wallets by activity tier.
Query Parameter Redaction
You can now strip sensitive query parameters before events are stored or sent. Pass a list of query parameter names and the SDK redacts matching keys (case-insensitive) from event properties.

Learn more in the Web SDK docs.
Sticky Referrer Tracking
The Web SDK now keeps first-touch referrer sticky across an entire session, so internal navigation no longer overwrites the source that brought a user in.
This means cleaner channel reports, more accurate first-touch attribution, and no more "self-referral" noise from internal page-to-page navigation.
Improvements and Fixes
Hardened AI Insights generation so Acquisition, Activation, and Behavioral cards reliably render on the page and in the weekly email.
Improved Ask AI response quality with an eval-and-review harness, tighter prompt rules, and better date and tool-selection handling.
Extracted
volume,revenue, andpointsto typed columns on events for faster, more reliable revenue and volume queries across dashboards and the SQL Explorer.Fixed a bug with filtering by Referrer URLs.
Steered invited users to join their team's existing workspace during onboarding instead of accidentally creating a new one.
Added wallet icons (via RDNS) to the Top Wallets chart for quicker visual identification of which wallets your users are connecting with.
Standardized all destructive-action confirmation modals to a single "type the resource name to confirm" pattern across projects, workspaces, dashboards, charts, and API keys.
Added an upgrade button to the Usage page, mirroring the Billing page placement.
Upgraded
@formo/analyticsto v1.32.0 across all 17 example apps.Improved infrastructure monitoring for faster incident detection.
Performance and security improvements.
Here are this week's highlights:
Filter by Page
Angular SDK support
Crossmint and OpenFort examples
Improvements and Fixes
Filter by Page
You can view the performance of specific pages with the new Page filter. The Overview and Activity pages now support filtering by Page, such as specific vault or campaign page.
You can also click any row in the Top Pages chart to apply the page filter inline, the same way segments work elsewhere in the dashboard.
Angular SDK support
The Web SDK now supports Angular. Non-React frameworks (Angular, Vue, Svelte, vanilla JS) can now use Formo without React types. React and Next.js apps continue to work as before.
See the Angular example and the docs for more details.
Crossmint and OpenFort examples
The examples repo now includes end-to-end integrations for Crossmint embedded wallets and OpenFort smart wallets.
Crossmint is a platform for companies and agents to integrate stablecoin rails — including wallets, onramps, stablecoin orchestration & more.
OpenFort is the wallet stack for agentic and stablecoin payments —one open-source SDK instead of five vendors.
Improvements and Fixes
Added Angular SDK support.
Added Crossmint and OpenFort wallet examples to the examples repo.
Added a rolling curve view and richer tooltip to the Retention chart.
Refined bounce rate to an engagement-aware definition so single-page sessions with real engagement no longer inflate the metric.
Replaced the cohort-analysis Insights with volume and revenue Insights.
Added ENS name support to the public profiles API.
Added a copy button to Top Pages chart rows in the Analytics Overview.
Restricted the Formo MCP OAuth flow to Scale and Enterprise plans, matching API key access.
Restricted Weekly Insights emails to paid workspaces.
Fixed the referrer URL filter not applying on the overview page.
Fixed funnel conversion-window editor display drifting from execution.
Fixed a datepicker visual glitch when selecting a date range.
Fixed the Retention chart so still-maturing weeks render as blank instead of 0%, removing the false churn cliff on the newest cohort. AI insight rules and weekly email prompts were updated in the same pass so missing weekly retention is no longer misread as churn.
Fixed token-gated forms SIWE verification for smart-contract wallets on non-mainnet chains.
Fixed empty segments dropdown on public boards.
Fixed invalid MCP tools list error.
Migrated all SDK repos to pnpm 11 with a 7-day minimum release age for stricter supply-chain protection.
Hardened GitHub Actions across SDK repos (SHA-pinned third-party actions, command-injection fixes in the release workflow, protected credentials.)
Performance and security fixes across the platform.
Here are this week's highlights:
Filter by Page
Angular SDK support
Crossmint and OpenFort examples
Improvements and Fixes
Filter by Page
You can view the performance of specific pages with the new Page filter. The Overview and Activity pages now support filtering by Page, such as specific vault or campaign page.
You can also click any row in the Top Pages chart to apply the page filter inline, the same way segments work elsewhere in the dashboard.
Angular SDK support
The Web SDK now supports Angular. Non-React frameworks (Angular, Vue, Svelte, vanilla JS) can now use Formo without React types. React and Next.js apps continue to work as before.
See the Angular example and the docs for more details.
Crossmint and OpenFort examples
The examples repo now includes end-to-end integrations for Crossmint embedded wallets and OpenFort smart wallets.
Crossmint is a platform for companies and agents to integrate stablecoin rails — including wallets, onramps, stablecoin orchestration & more.
OpenFort is the wallet stack for agentic and stablecoin payments —one open-source SDK instead of five vendors.
Improvements and Fixes
Added Angular SDK support.
Added Crossmint and OpenFort wallet examples to the examples repo.
Added a rolling curve view and richer tooltip to the Retention chart.
Refined bounce rate to an engagement-aware definition so single-page sessions with real engagement no longer inflate the metric.
Replaced the cohort-analysis Insights with volume and revenue Insights.
Added ENS name support to the public profiles API.
Added a copy button to Top Pages chart rows in the Analytics Overview.
Restricted the Formo MCP OAuth flow to Scale and Enterprise plans, matching API key access.
Restricted Weekly Insights emails to paid workspaces.
Fixed the referrer URL filter not applying on the overview page.
Fixed funnel conversion-window editor display drifting from execution.
Fixed a datepicker visual glitch when selecting a date range.
Fixed the Retention chart so still-maturing weeks render as blank instead of 0%, removing the false churn cliff on the newest cohort. AI insight rules and weekly email prompts were updated in the same pass so missing weekly retention is no longer misread as churn.
Fixed token-gated forms SIWE verification for smart-contract wallets on non-mainnet chains.
Fixed empty segments dropdown on public boards.
Fixed invalid MCP tools list error.
Migrated all SDK repos to pnpm 11 with a 7-day minimum release age for stricter supply-chain protection.
Hardened GitHub Actions across SDK repos (SHA-pinned third-party actions, command-injection fixes in the release workflow, protected credentials.)
Performance and security fixes across the platform.
Here are this week's highlights:
OAuth on Formo MCP
Segments on Funnels
Event Exclusions in Flow Charts
Improvements and Fixes
OAuth on Formo MCP
The Formo MCP server now supports OAuth, so you can add it as a remote MCP connector in Claude, ChatGPT, Cursor, and other clients. Connect your Formo account with the tools you already use.

Learn more in the MCP docs.
Segments on Funnels
You can now filter Funnels by any saved segment, the same way you can on the Users and Activity pages.
Pick a segment from the chart controls and the entire funnel recomputes against that cohort, so you can compare conversion across audiences without duplicating charts.

Learn more in the Segments docs.
Event Exclusions in Flow Charts
Flow charts (user paths) now support an event exclusion filter. Pick events to leave out of the path entirely and the chart reflows around only the events you care about.
This is the fastest way to clean up noisy flows without changing what you instrument.
Improvements and Fixes
Added
cmd+enterkeyboard shortcut to submit on all code editors.Added unsubscribe controls usage limit alerts.
Fixed Ask AI stopping after the initial request.
Fixed datepicker not rendering on the Number charts edit preview.
Fixed errors when deleting a newly created board.
Fixed flow chart undercount where long converters were dropped from the end-step branch.
Fixed device, browser, and OS aggregations losing
unknownvalues.Fixed minor billing UI bugs.
Fixed orphaned instance page events in the Web SDK.
Fixed a Formo MCP
tools/list400 error.Performance and security fixes across the platform.
Here are this week's highlights:
OAuth on Formo MCP
Segments on Funnels
Event Exclusions in Flow Charts
Improvements and Fixes
OAuth on Formo MCP
The Formo MCP server now supports OAuth, so you can add it as a remote MCP connector in Claude, ChatGPT, Cursor, and other clients. Connect your Formo account with the tools you already use.

Learn more in the MCP docs.
Segments on Funnels
You can now filter Funnels by any saved segment, the same way you can on the Users and Activity pages.
Pick a segment from the chart controls and the entire funnel recomputes against that cohort, so you can compare conversion across audiences without duplicating charts.

Learn more in the Segments docs.
Event Exclusions in Flow Charts
Flow charts (user paths) now support an event exclusion filter. Pick events to leave out of the path entirely and the chart reflows around only the events you care about.
This is the fastest way to clean up noisy flows without changing what you instrument.
Improvements and Fixes
Added
cmd+enterkeyboard shortcut to submit on all code editors.Added unsubscribe controls usage limit alerts.
Fixed Ask AI stopping after the initial request.
Fixed datepicker not rendering on the Number charts edit preview.
Fixed errors when deleting a newly created board.
Fixed flow chart undercount where long converters were dropped from the end-step branch.
Fixed device, browser, and OS aggregations losing
unknownvalues.Fixed minor billing UI bugs.
Fixed orphaned instance page events in the Web SDK.
Fixed a Formo MCP
tools/list400 error.Performance and security fixes across the platform.
Here are this week's highlights:
Performance improvements
Last-touch attribution for funnels
Funnel and Flow public API endpoints
Performance improvements
We've completed significant performance improvements across the platform, including wallets, transactions, top pages, top sources, funnels, and flow charts.
Last-touch attribution for funnels
Funnels now support last-touch attribution as a first-class breakdown option, letting you credit the most recent source, campaign, or referrer before a user converted.
This complements first-touch attribution and gives growth and marketing teams a clearer view of which channels are actually driving conversion at the moment of action, rather than only the channel that introduced the user.
Open any existing funnel and toggle the attribution type to last-touch to see how your numbers shift. Learn more in the Funnels documentation.
Funnel and Flow public API endpoints
Funnels and Flows are now available through the public Query API, so you can pull conversion and user-journey data programmatically into dashboards, notebooks, and downstream systems.
The OpenAPI spec has been updated alongside the new endpoints, making it easy to generate clients and explore the schema. If you build internal tooling on top of Formo, point your scripts and integrations at the new endpoints.
See the API overview for more.
Here are this week's highlights:
Performance improvements
Last-touch attribution for funnels
Funnel and Flow public API endpoints
Performance improvements
We've completed significant performance improvements across the platform, including wallets, transactions, top pages, top sources, funnels, and flow charts.
Last-touch attribution for funnels
Funnels now support last-touch attribution as a first-class breakdown option, letting you credit the most recent source, campaign, or referrer before a user converted.
This complements first-touch attribution and gives growth and marketing teams a clearer view of which channels are actually driving conversion at the moment of action, rather than only the channel that introduced the user.
Open any existing funnel and toggle the attribution type to last-touch to see how your numbers shift. Learn more in the Funnels documentation.
Funnel and Flow public API endpoints
Funnels and Flows are now available through the public Query API, so you can pull conversion and user-journey data programmatically into dashboards, notebooks, and downstream systems.
The OpenAPI spec has been updated alongside the new endpoints, making it easy to generate clients and explore the schema. If you build internal tooling on top of Formo, point your scripts and integrations at the new endpoints.
See the API overview for more.
Here are this week's highlights:
AI SQL Helpers
Ask AI Follow-up Questions
Funnels Compare Mode
Area Chart
Global Search
Profile Side Panel
Query API
Improvements and Fixes
AI SQL helpers
Three new AI helpers now sit next to the SQL editor on both the Explorer page and the create/edit chart page
Explain this Query describes what a SQL query does in plain English.
Generate SQL turns a prompt into SQL.
Format SQL cleans up an existing query in place.

Ask AI Follow-up Questions
Every Ask AI response now ends suggested follow-up questions you can click to keep digging.

The suggestions are generated from the conversation so far and the project's saved charts, events, and segments, so they stay relevant to the data you're actually looking at instead of pulling you off-topic.
Funnels Compare Mode
The funnel chart now has a Compare mode toggle in its date controls, mirroring the one on the overview page, so you can put two date ranges side by side.

Each step now also shows the median time to convert from the previous step, so you can see where users stall, not just where they drop.
Area Charts
You can now create Area Charts.

Area charts support stacking out of the box. It's available alongside Line, Bar, Number, and the other existing chart types.
Global Search
Hit Cmd+K (or Ctrl+K) anywhere in the app to open a command palette. Jump to key pages, custom boards, segments, past chats, and settings even more quickly.

If your query does not match a known action, ask the question directly to Ask AI.

Profile Side Panel
On the Users page, clicking a user now opens its profile in a side panel instead opening a new tab for a smoother experience.

The side panel keeps your filtered list visible so you can scan a cohort and dip into individual wallets without losing context. A link to the standalone profile page is still there when you want to bookmark and share it.
Query API
The full Query API is now live, with 18 public endpoints that expose the same backed data that powers every chart on the Formo dashboard. Use this to build internal tooling and dashboards with Formo data.
Improvements and Fixes
Added standardized public API error codes.
Added Idempotency-Key support on writes to public API.
Added new Formo CLI
profiles updateandprofiles labels create/deletecommands.Added a
user_idfield to wallet profile data so server-side identifiers can be carried alongside wallet identity.Added a Send Test Alert action to alerts so you can verify your webhook endpoint and payload.
Added URL validation for external SSO and OAuth redirects for security.
Refactored account and workspace onboarding flow.
Standardized filter field naming across the public API surface.
Fixed sticky table column rendering and users filter bar UI issue.
Performance improvements and fixes.
Here are this week's highlights:
AI SQL Helpers
Ask AI Follow-up Questions
Funnels Compare Mode
Area Chart
Global Search
Profile Side Panel
Query API
Improvements and Fixes
AI SQL helpers
Three new AI helpers now sit next to the SQL editor on both the Explorer page and the create/edit chart page
Explain this Query describes what a SQL query does in plain English.
Generate SQL turns a prompt into SQL.
Format SQL cleans up an existing query in place.

Ask AI Follow-up Questions
Every Ask AI response now ends suggested follow-up questions you can click to keep digging.

The suggestions are generated from the conversation so far and the project's saved charts, events, and segments, so they stay relevant to the data you're actually looking at instead of pulling you off-topic.
Funnels Compare Mode
The funnel chart now has a Compare mode toggle in its date controls, mirroring the one on the overview page, so you can put two date ranges side by side.

Each step now also shows the median time to convert from the previous step, so you can see where users stall, not just where they drop.
Area Charts
You can now create Area Charts.

Area charts support stacking out of the box. It's available alongside Line, Bar, Number, and the other existing chart types.
Global Search
Hit Cmd+K (or Ctrl+K) anywhere in the app to open a command palette. Jump to key pages, custom boards, segments, past chats, and settings even more quickly.

If your query does not match a known action, ask the question directly to Ask AI.

Profile Side Panel
On the Users page, clicking a user now opens its profile in a side panel instead opening a new tab for a smoother experience.

The side panel keeps your filtered list visible so you can scan a cohort and dip into individual wallets without losing context. A link to the standalone profile page is still there when you want to bookmark and share it.
Query API
The full Query API is now live, with 18 public endpoints that expose the same backed data that powers every chart on the Formo dashboard. Use this to build internal tooling and dashboards with Formo data.
Improvements and Fixes
Added standardized public API error codes.
Added Idempotency-Key support on writes to public API.
Added new Formo CLI
profiles updateandprofiles labels create/deletecommands.Added a
user_idfield to wallet profile data so server-side identifiers can be carried alongside wallet identity.Added a Send Test Alert action to alerts so you can verify your webhook endpoint and payload.
Added URL validation for external SSO and OAuth redirects for security.
Refactored account and workspace onboarding flow.
Standardized filter field naming across the public API surface.
Fixed sticky table column rendering and users filter bar UI issue.
Performance improvements and fixes.
Here are this week's highlights:
User Properties and Labels
Workspace Audit Log
Improved Wallet Search
Improvements and Fixes
User Properties and Labels
You can now add first-party user properties and custom user labels for wallet profiles, on the dashboard and the API.

Set a custom display name, email, socials, avatar, location, and other identity fields on a wallet profile. Tag wallets with custom labels (VIP tier, KYC status, etc). Custom user labels work with all existing features including segments, filters, and charts out of the box.
With first-party data alongside the web, product, and onchain data Formo already collects, you can now use Formo as the single source of truth for your DeFi app. No more manually stitching together a separate CRM, analytics tool, and internal database. Push user properties and labels into Formo's customer data platform, then use the unified profile across product analytics, attribution, segmentation, and outreach.
Workspace Audit Log
Workspaces now record an Audit Log of who did what: invites, role changes, project updates, billing changes, and other key actions.

This is designed for SOC2 readiness and is useful for any team that wants visibility into workspace changes, especially when multiple team members have admin access.
Improved Wallet Search
You can now search wallets from social profiles on the Users page and Profile Search API . Search based on a partial address, ENS name, Twitter handle, or any social identifier and Formo will find the matching wallet profile.
Improvements and Fixes
Added confirmation step to destructive deletes on projects, segments, boards, contracts, and API keys.
Added a row-limit control to SQL Explorer so you can control the size of large queries.
Added raw results table to charts so you can inspect the underlying numbers behind them.
Added volume to weekly email reports so you can see week-over-week change at a glance.
Added MCP and API setup instructions to the API keys page so it's easier to get started.
Added a feedback link to the sidebar so it's easier to share what's working and what isn't.
Added 2FA status to the workspace members page.
Added ENS name support to the Activity page search bar.
Added time-based sorting to the Activity page.
Added a tooltip to the board global datepicker explaining how the selected range applies to charts.
Replaced the underlying engine for Sankey visualizations for faster, more consistent rendering.
Improved handling for unknown values from device, browser, and OS tracking.
Improved label value filtering to be case-insensitive.
Improved error handling and API key validation across the API.
Improved Ask AI's handling of date variables in queries and charts.
Improved Web SDK location detection to only emit valid country codes.
Fixed an issue with SQL Editor exports to JSON and CSV.
Fixed an issue with the weekly email report.
Performance and scalability improvements across the platform
Here are this week's highlights:
User Properties and Labels
Workspace Audit Log
Improved Wallet Search
Improvements and Fixes
User Properties and Labels
You can now add first-party user properties and custom user labels for wallet profiles, on the dashboard and the API.

Set a custom display name, email, socials, avatar, location, and other identity fields on a wallet profile. Tag wallets with custom labels (VIP tier, KYC status, etc). Custom user labels work with all existing features including segments, filters, and charts out of the box.
With first-party data alongside the web, product, and onchain data Formo already collects, you can now use Formo as the single source of truth for your DeFi app. No more manually stitching together a separate CRM, analytics tool, and internal database. Push user properties and labels into Formo's customer data platform, then use the unified profile across product analytics, attribution, segmentation, and outreach.
Workspace Audit Log
Workspaces now record an Audit Log of who did what: invites, role changes, project updates, billing changes, and other key actions.

This is designed for SOC2 readiness and is useful for any team that wants visibility into workspace changes, especially when multiple team members have admin access.
Improved Wallet Search
You can now search wallets from social profiles on the Users page and Profile Search API . Search based on a partial address, ENS name, Twitter handle, or any social identifier and Formo will find the matching wallet profile.
Improvements and Fixes
Added confirmation step to destructive deletes on projects, segments, boards, contracts, and API keys.
Added a row-limit control to SQL Explorer so you can control the size of large queries.
Added raw results table to charts so you can inspect the underlying numbers behind them.
Added volume to weekly email reports so you can see week-over-week change at a glance.
Added MCP and API setup instructions to the API keys page so it's easier to get started.
Added a feedback link to the sidebar so it's easier to share what's working and what isn't.
Added 2FA status to the workspace members page.
Added ENS name support to the Activity page search bar.
Added time-based sorting to the Activity page.
Added a tooltip to the board global datepicker explaining how the selected range applies to charts.
Replaced the underlying engine for Sankey visualizations for faster, more consistent rendering.
Improved handling for unknown values from device, browser, and OS tracking.
Improved label value filtering to be case-insensitive.
Improved error handling and API key validation across the API.
Improved Ask AI's handling of date variables in queries and charts.
Improved Web SDK location detection to only emit valid country codes.
Fixed an issue with SQL Editor exports to JSON and CSV.
Fixed an issue with the weekly email report.
Performance and scalability improvements across the platform
Here are this week's highlights:
Extra Usage
Ask AI Gets Smarter
Top Channels
Click IDs for Paid Attribution
Install-Time Mobile Attribution
Improvements and Fixes
Extra Usage
Workspaces with a payment methodcan now go above their plan's MAU limit without missing any data.

This means growing projects no longer lose data during a spike, and teams don't need to keep upgrading mid-cycle to keep tracking users.
Overages are billed as a one-time charge at the end of the cycle, and you can set a monthly spend cap so there are no surprises.
Ask AI Gets Smarter
A big batch of Ask AI improvements landed this week.

Here is a summary:
Ask AI can now answer product, SDK, and API questions by searching and citing the exact doc pages it used, instead of bouncing you to the docs.
The system prompt was updated with the latest SQL functions and variables introduced last week.
Chart proposals now enforce per-chart date ranges and tighter SQL validation.
Raw aggregate states are no longer leaked into answers.
You can save individual charts from an Ask AI dashboard to an existing board, instead of saving the whole dashboard.
New guardrails keep Ask AI focused on analytics questions it can actually answer well.
Top Channels
You can now see a Channels chart alongside Referrers and UTM.

Referrers, UTMs, and other properties are grouped into marketing channels like Organic Social, Paid Search, Direct, Referral, and Email, so you can see traffic composition by channel without having to bucket domains yourself.
Click IDs for Paid Attribution
The Web SDK now captures and persists click ID parameters from landing page URLs alongside UTMs, so paid traffic from Google, Meta, TikTok, LinkedIn, Reddit, and X is attributed correctly to the campaigns that drove it.
Twelve vendor parameters are supported including gclid, gad_source, gbraid, wbraid, dclid, fbclid, msclkid, yclid, ttclid, twclid, li_fat_id, and rdt_cid.
Install-Time Mobile Attribution
The React Native SDK now automatically captures install-time attribution from:
Google Play Install Referrer API on Android
Apple AdServices on iOS
This means you can see incoming traffic source fields (utm_source, utm_medium, utm_campaign, and friends) to your mobile app.
Deep link attribution still takes precedence, and the merge logic only fills empty fields, so real deep links never get overwritten by install referrer data.
Improvements and Fixes
Added more breakdown dimensions for charts and funnels
Added vertical resizing to the SQL Query Editor
Added per-request nonce-based Content Security Policy for tighter frontend security
Added the ability to remove saved payment methods on the free plan
Fixed double-counting of protocol-issued token values in wallet events
Fixed stale Tinybird tokens after pipe renames by auto-refreshing on scope errors
Fixed email notification defaults to use the local timezone instead of UTC
Fixed a bug where deleting a chat made links unclickable on the page
Fixed weekly insights emails sending duplicates with missing insights
Improved performance across the platform and dashboard pages
Here are this week's highlights:
Extra Usage
Ask AI Gets Smarter
Top Channels
Click IDs for Paid Attribution
Install-Time Mobile Attribution
Improvements and Fixes
Extra Usage
Workspaces with a payment methodcan now go above their plan's MAU limit without missing any data.

This means growing projects no longer lose data during a spike, and teams don't need to keep upgrading mid-cycle to keep tracking users.
Overages are billed as a one-time charge at the end of the cycle, and you can set a monthly spend cap so there are no surprises.
Ask AI Gets Smarter
A big batch of Ask AI improvements landed this week.

Here is a summary:
Ask AI can now answer product, SDK, and API questions by searching and citing the exact doc pages it used, instead of bouncing you to the docs.
The system prompt was updated with the latest SQL functions and variables introduced last week.
Chart proposals now enforce per-chart date ranges and tighter SQL validation.
Raw aggregate states are no longer leaked into answers.
You can save individual charts from an Ask AI dashboard to an existing board, instead of saving the whole dashboard.
New guardrails keep Ask AI focused on analytics questions it can actually answer well.
Top Channels
You can now see a Channels chart alongside Referrers and UTM.

Referrers, UTMs, and other properties are grouped into marketing channels like Organic Social, Paid Search, Direct, Referral, and Email, so you can see traffic composition by channel without having to bucket domains yourself.
Click IDs for Paid Attribution
The Web SDK now captures and persists click ID parameters from landing page URLs alongside UTMs, so paid traffic from Google, Meta, TikTok, LinkedIn, Reddit, and X is attributed correctly to the campaigns that drove it.
Twelve vendor parameters are supported including gclid, gad_source, gbraid, wbraid, dclid, fbclid, msclkid, yclid, ttclid, twclid, li_fat_id, and rdt_cid.
Install-Time Mobile Attribution
The React Native SDK now automatically captures install-time attribution from:
Google Play Install Referrer API on Android
Apple AdServices on iOS
This means you can see incoming traffic source fields (utm_source, utm_medium, utm_campaign, and friends) to your mobile app.
Deep link attribution still takes precedence, and the merge logic only fills empty fields, so real deep links never get overwritten by install referrer data.
Improvements and Fixes
Added more breakdown dimensions for charts and funnels
Added vertical resizing to the SQL Query Editor
Added per-request nonce-based Content Security Policy for tighter frontend security
Added the ability to remove saved payment methods on the free plan
Fixed double-counting of protocol-issued token values in wallet events
Fixed stale Tinybird tokens after pipe renames by auto-refreshing on scope errors
Fixed email notification defaults to use the local timezone instead of UTC
Fixed a bug where deleting a chat made links unclickable on the page
Fixed weekly insights emails sending duplicates with missing insights
Improved performance across the platform and dashboard pages
Here are this week's highlights:
Multi-Anchor Flows
Compare Previous Period
Ask AI Dashboard Creation
Edit Dashboard Layout
Move Charts
Duplicate Charts
SQL: Dynamic Date Variables
SQL: Price Oracle Functions
Formo CLI
Improvements and Fixes
Multi-Anchor Flows
Flow charts now support multiple anchor steps, letting you visualize how users flow through several key events rather than just one.

This gives you a more complete picture of the user journey across your DeFi app.
Compare Previous Period
You can now compare data with a previous time period on the Overview page to compare performance across consecutive periods.

For example, when 30D is selected, all charts on the overview page will compare with the previous 30D period.

This makes it easy to spot trends, measure the impact of changes, and understand whether metrics are improving or declining relative to a prior window.
Ask AI Dashboard Creation
Ask AI can now create entire dashboards for you from a prompt. Describe what you want to track and the AI will generate a complete dashboard with relevant charts, saving you the time of building each chart manually.

You can then save the charts as a new dashboard.
Reorder Charts
You can now reorder charts on your custom dashboard.

Freely rearrange your layout to put the most important metrics front and center.
Duplicate Charts
You can now duplicate any chart in your custom dashboard.

This saves time when you want to create variations of an existing chart with different filters, time ranges, or breakdowns.
Move Charts Between Dashboards
Charts can now be moved from one dashboard to another.
This makes it easy to reorganize your dashboards without having to recreate charts from scratch.
SQL: Dynamic Date Variables
Charts now support dynamic date range filtering through new template variables in your SQL queries.

Instead of hardcoding date ranges, you can set charts to automatically adjust based on a shared date picker, making dashboards more interactive and easier to explore across different time windows.

SQL: Price Oracle Functions
You can now use a price oracle function in your SQL queries.

Convert token amounts to USD values directly in your analytics queries without needing to join external price data manually.
Formo CLI
The Formo CLI (@formo/cli) is now available. The CLI gives you an agent-friendly terminal-based interface for working with Formo, from querying data to creating charts and more.
Install it via npm to get started.
Improvements and Fixes
Added Solana support to profile search and fetch endpoints
Added how-to guides to the docs such as How to Build Conversion Funnels
Added CLI documentation
Added a Tempo Accounts SDK example project.
Added SDK security documentation with architecture, data collection, and supply chain security measures
Added AI insights citations showing the data, queries, and methodology of each insight
Improved team invite validation and error handling
Unified mobile screen events with web page views in the React Native SDK, so charts and attribution work seamlessly across web and mobile
Fixed stale charts shown on custom dashboard after updating a chart
Authorization checks and security improvements
Other performance improvements and UI fixes
Here are this week's highlights:
Multi-Anchor Flows
Compare Previous Period
Ask AI Dashboard Creation
Edit Dashboard Layout
Move Charts
Duplicate Charts
SQL: Dynamic Date Variables
SQL: Price Oracle Functions
Formo CLI
Improvements and Fixes
Multi-Anchor Flows
Flow charts now support multiple anchor steps, letting you visualize how users flow through several key events rather than just one.

This gives you a more complete picture of the user journey across your DeFi app.
Compare Previous Period
You can now compare data with a previous time period on the Overview page to compare performance across consecutive periods.

For example, when 30D is selected, all charts on the overview page will compare with the previous 30D period.

This makes it easy to spot trends, measure the impact of changes, and understand whether metrics are improving or declining relative to a prior window.
Ask AI Dashboard Creation
Ask AI can now create entire dashboards for you from a prompt. Describe what you want to track and the AI will generate a complete dashboard with relevant charts, saving you the time of building each chart manually.

You can then save the charts as a new dashboard.
Reorder Charts
You can now reorder charts on your custom dashboard.

Freely rearrange your layout to put the most important metrics front and center.
Duplicate Charts
You can now duplicate any chart in your custom dashboard.

This saves time when you want to create variations of an existing chart with different filters, time ranges, or breakdowns.
Move Charts Between Dashboards
Charts can now be moved from one dashboard to another.
This makes it easy to reorganize your dashboards without having to recreate charts from scratch.
SQL: Dynamic Date Variables
Charts now support dynamic date range filtering through new template variables in your SQL queries.

Instead of hardcoding date ranges, you can set charts to automatically adjust based on a shared date picker, making dashboards more interactive and easier to explore across different time windows.

SQL: Price Oracle Functions
You can now use a price oracle function in your SQL queries.

Convert token amounts to USD values directly in your analytics queries without needing to join external price data manually.
Formo CLI
The Formo CLI (@formo/cli) is now available. The CLI gives you an agent-friendly terminal-based interface for working with Formo, from querying data to creating charts and more.
Install it via npm to get started.
Improvements and Fixes
Added Solana support to profile search and fetch endpoints
Added how-to guides to the docs such as How to Build Conversion Funnels
Added CLI documentation
Added a Tempo Accounts SDK example project.
Added SDK security documentation with architecture, data collection, and supply chain security measures
Added AI insights citations showing the data, queries, and methodology of each insight
Improved team invite validation and error handling
Unified mobile screen events with web page views in the React Native SDK, so charts and attribution work seamlessly across web and mobile
Fixed stale charts shown on custom dashboard after updating a chart
Authorization checks and security improvements
Other performance improvements and UI fixes
Here are this week's highlights:
Volume and Revenue Timeseries
Historical Wallet Data
Solana Wallet Profiles
Solana SDK: Framework Kit Integration
React Native SDK: Mobile Lifecycle Events
Improved Slack Alerts
Improvements and Fixes
Volume and Revenue Timeseries
You can see how your users' volume and revenue changes across time with a new volume and revenue timeseries chart.

Available on the profile page, the chart shows full attribution of which events, referrers, UTMs, and referrals contributed to volume and revenue.
This makes it easier to understand your highest-value users, identify key revenue signals, and understand the history of individual wallets within your app.
Historical Wallet Data
You can now view past snapshots of a wallet's net worth, apps, and tokens on the wallet profile page. Just choose a date from the dropdown.

Historical wallet data gives you a clearer picture of how your users onchain activity portfolio have changed over time.
Solana Wallet Profiles
Formo now supports Solana wallet addresses alongside EVM wallets.

Turn anonymous Solana addresses into actionable rich profiles, with social data and token balances.
Solana SDK: Framework Kit Integration
The Solana integration now works with framework-kit and @solana/kit. This stack supersedes web3.js + wallet-adapter approach.
React Native SDK: Mobile Lifecycle Events
The React Native SDK now automatically captures install, update, open, and background events following the standard mobile lifecycle spec.
Improved Slack Alerts
Slack alerts have been redesigned for better readability.

You can also now customize which event properties are displayed in each alert with a live preview.
Improvements and Fixes
Added AI-powered Insights to the weekly performance email
Added public API endpoints for alerts, boards, and AI chat
Updated Overview page chart breakdowns to sort by each metric (wallets, transactions, volume)
Improved wallet profiles Twitter/X handle resolution with fallback data sources
Fixed Funnels failing to filter custom events by volume
Fixed Activity page event timeseries timeout for high-volume projects
Fixed tooltip not displaying for negative volume values on the Overview page
Fixed missing icons for browser filter dropdown items
Fixed SDK storage fallback for environments local / session storage is unavailable
Optimized load times across dashboard pages
Other improvements and fixes
Here are this week's highlights:
Volume and Revenue Timeseries
Historical Wallet Data
Solana Wallet Profiles
Solana SDK: Framework Kit Integration
React Native SDK: Mobile Lifecycle Events
Improved Slack Alerts
Improvements and Fixes
Volume and Revenue Timeseries
You can see how your users' volume and revenue changes across time with a new volume and revenue timeseries chart.

Available on the profile page, the chart shows full attribution of which events, referrers, UTMs, and referrals contributed to volume and revenue.
This makes it easier to understand your highest-value users, identify key revenue signals, and understand the history of individual wallets within your app.
Historical Wallet Data
You can now view past snapshots of a wallet's net worth, apps, and tokens on the wallet profile page. Just choose a date from the dropdown.

Historical wallet data gives you a clearer picture of how your users onchain activity portfolio have changed over time.
Solana Wallet Profiles
Formo now supports Solana wallet addresses alongside EVM wallets.

Turn anonymous Solana addresses into actionable rich profiles, with social data and token balances.
Solana SDK: Framework Kit Integration
The Solana integration now works with framework-kit and @solana/kit. This stack supersedes web3.js + wallet-adapter approach.
React Native SDK: Mobile Lifecycle Events
The React Native SDK now automatically captures install, update, open, and background events following the standard mobile lifecycle spec.
Improved Slack Alerts
Slack alerts have been redesigned for better readability.

You can also now customize which event properties are displayed in each alert with a live preview.
Improvements and Fixes
Added AI-powered Insights to the weekly performance email
Added public API endpoints for alerts, boards, and AI chat
Updated Overview page chart breakdowns to sort by each metric (wallets, transactions, volume)
Improved wallet profiles Twitter/X handle resolution with fallback data sources
Fixed Funnels failing to filter custom events by volume
Fixed Activity page event timeseries timeout for high-volume projects
Fixed tooltip not displaying for negative volume values on the Overview page
Fixed missing icons for browser filter dropdown items
Fixed SDK storage fallback for environments local / session storage is unavailable
Optimized load times across dashboard pages
Other improvements and fixes

Here are this week's highlights:
Wallet Profile Search
Insights: Cohort Analysis
Cross-Subdomain Tracking
Improvements and Fixes
Wallet Profile Search
You can now search and view wallet profiles even if they haven't visited your app. The new search page lets you look up any wallet by address.

If a wallet hasn't been profiled yet, Formo will trigger profiling on-demand that returns results in less than a minute. Use this to enrich lead lists and target prospective users.

You can also import wallets via CSV and filter for imported users, making it easy to target and analyze specific wallet lists from external sources.
Insights: Cohort Analysis
The AI-powered Insights page now includes a cohort analysis section.

Uncover insights from user behavior across different dimensions:
Acquisition Quality: Which channels produce users with the highest retention?
Activation (Aha Moment): Which early action predicts long-term retention?
Revenue Insights: Are recent customers more valuable?
Churn Prediction: What behaviours signal a user is about to churn?
Cross-Subdomain Tracking
The Formo Web SDK (v1.28.3) now supports cross-subdomain tracking:
Cross domain tracking: see what users do as they move between your marketing site, app, docs, and other subdomains.
Accurate attribution: attribute conversions to the correct channel, even when users cross subdomains.
Automatic migration: the SDK migrates existing host-scoped cookies to the apex domain so visitors are not double-counted.
To get started, upgrade to the latest SDK version.
Improvements and Fixes
Added volume, revenue, and points filters to the activity page
Add channel filter (web, mobile, onchain, import, api) for users and events
Added a Turnkey integration example
Added outlier filtering for revenue, volume, and points metrics
Fixed segment switching not displaying the correct selected filters on the Users page
Fixed wallet profiler returning incorrect net worth for low-decimal tokens with invalid balances
Fixed duplicated app and protocol tokens appearing on the wallet profile page
Fixed Twitter/X Connect not persisting on form pages after OAuth redirect
Fixed behavior filter operators edge case for less/lessOrEqual conditions
Fixed SDK blocklist bypass via mixed-case checksum addresses
Fixed SDK storage fallback infinite loop and session cookie unbounded growth
Fixed SDK events being lost on page hide and page-leave data loss race conditions
Fixed session duration calculation for sessions with inactivity periods

Here are this week's highlights:
Wallet Profile Search
Insights: Cohort Analysis
Cross-Subdomain Tracking
Improvements and Fixes
Wallet Profile Search
You can now search and view wallet profiles even if they haven't visited your app. The new search page lets you look up any wallet by address.

If a wallet hasn't been profiled yet, Formo will trigger profiling on-demand that returns results in less than a minute. Use this to enrich lead lists and target prospective users.

You can also import wallets via CSV and filter for imported users, making it easy to target and analyze specific wallet lists from external sources.
Insights: Cohort Analysis
The AI-powered Insights page now includes a cohort analysis section.

Uncover insights from user behavior across different dimensions:
Acquisition Quality: Which channels produce users with the highest retention?
Activation (Aha Moment): Which early action predicts long-term retention?
Revenue Insights: Are recent customers more valuable?
Churn Prediction: What behaviours signal a user is about to churn?
Cross-Subdomain Tracking
The Formo Web SDK (v1.28.3) now supports cross-subdomain tracking:
Cross domain tracking: see what users do as they move between your marketing site, app, docs, and other subdomains.
Accurate attribution: attribute conversions to the correct channel, even when users cross subdomains.
Automatic migration: the SDK migrates existing host-scoped cookies to the apex domain so visitors are not double-counted.
To get started, upgrade to the latest SDK version.
Improvements and Fixes
Added volume, revenue, and points filters to the activity page
Add channel filter (web, mobile, onchain, import, api) for users and events
Added a Turnkey integration example
Added outlier filtering for revenue, volume, and points metrics
Fixed segment switching not displaying the correct selected filters on the Users page
Fixed wallet profiler returning incorrect net worth for low-decimal tokens with invalid balances
Fixed duplicated app and protocol tokens appearing on the wallet profile page
Fixed Twitter/X Connect not persisting on form pages after OAuth redirect
Fixed behavior filter operators edge case for less/lessOrEqual conditions
Fixed SDK blocklist bypass via mixed-case checksum addresses
Fixed SDK storage fallback infinite loop and session cookie unbounded growth
Fixed SDK events being lost on page hide and page-leave data loss race conditions
Fixed session duration calculation for sessions with inactivity periods
Load more
Turn data into action
Measure what matters and make impactful decisions with Formo.
Turn data into action
Measure what matters and make impactful decisions with Formo.
Turn data into action
Measure what matters and make impactful decisions with Formo.
Compare
Ask AI about Formo
Compare
Ask AI about Formo