Migrating custom fields from Funnel, Adverity, or Supermetrics to Windsor.ai using Claude
If you’re moving off Funnel, Adverity, or Supermetrics, you likely already have a list of calculated metrics you don’t want to rebuild by hand. Hand that list to Claude, connected to your Windsor.ai account, and it recreates each one as a Windsor.ai custom field, checking field names and formulas against your connectors as it goes.
The whole process takes about 10 minutes. This guide covers what to prepare, the step-by-step flow, and what to check before the new fields land in your reports.
Before you start
You need three things:
- Windsor.ai connected to Claude. See the Claude integration guide if you haven’t set this up yet.
- A list of the calculated metrics you want to bring over. An export, a screenshot, or even a pasted table works.
- The connectors those fields belong to already added in Windsor.ai (e.g. Facebook Ads, Google Ads).
The five-step process
1. Export your existing fields
From your current tool, pull the list of calculated metrics or custom fields you rely on: name and formula for each. A CSV export is ideal, but a screenshot of the formula editor works too.
2. Upload the list to Claude and ask it to migrate
Attach the file (or paste the list) and tell Claude which tool you’re migrating from and which Windsor.ai connector(s) the fields belong to.
Example prompt: “I’m migrating from Funnel. Recreate these calculated metrics as custom fields in Windsor for Facebook Ads and Google Ads.”
3. Claude checks your Windsor.ai account before creating anything
It looks up the valid field ids for each connector, checks which custom fields already exist so it doesn’t create duplicates, and translates the old formula syntax into Windsor.ai’s formula language.
4. Review the mapping
Claude shows you each field it’s about to create, with its name, type (NUMERIC or TEXT), and formula, so you can correct a name or tighten a formula first.
5. Fields appear in Windsor.ai
Once confirmed, the fields show up in the data preview sidebar alongside your other metrics and dimensions, ready to use in reports and exports right away.
What this looks like in Claude
A simplified example for a team migrating three Funnel metrics to the Facebook Ads and Google Ads connectors. The prompt, with funnel_metrics.csv attached:
“I’m migrating from Funnel. Here are our calculated metrics. Please recreate them in Windsor for Facebook Ads and Google Ads.”
Claude reads the file, checks the valid fields on each connector, checks the existing custom fields, and then proposes the mapping before creating anything:
| Field | Type | Formula |
| CPA | NUMERIC | to_float(spend) / nullif(actions_purchase, 0) |
| ROAS | NUMERIC | to_float(action_values_purchase) / to_float(spend) |
| Campaign Region | TEXT | lookup(campaign, '[["APAC","APAC"],["EU","EUROPE"]]', "Other", "contains") |
After you confirm, Claude creates the fields and repeats the same check for the second connector.
Validated internally
We ran this exact flow end-to-end against a client’s Funnel export before writing this guide. The Funnel account config was uploaded to Claude. Of roughly 1,875 field definitions, Claude correctly identified the single genuine custom metric (Cost Per Lead; the rest were Funnel’s own built-in CPC/CPM/CTR, not user-created), translated the formula, and created it on the all connector.
Pulling 30 days of data back out confirmed the calculated values matched Funnel’s to the cent, including correct null handling on days with zero conversions.
Coming from Funnel, Adverity, or Supermetrics?
The concept has different names depending on where you’re migrating from. Claude maps them all to the same thing in Windsor.ai.
| Platform | What they call it | Windsor.ai equivalent |
| Funnel.io | Calculated metric | Custom field |
| Adverity | Manipulation / formula field | Custom field |
| Supermetrics | Custom field / data blend formula | Custom field |
Formula translation, side by side
A typical CPA metric, before and after.
Your old tool:
cost / conversions
Windsor.ai, written by Claude:
to_float(spend) / nullif(actions_purchase, 0)
Good to know
- Claude asks before it creates anything. New custom fields are only added to your account after you confirm the name, type, and formula.
- Choose the right field type. Numbers used in calculations (spend, conversions, CPA) should be NUMERIC; labels used to group or tag rows (region, channel group) should be TEXT.
- Migrating a lot of fields at once? Group them by connector in your upload, so Claude can check each connector’s field ids in one pass.
For formula syntax, functions, and manual step-by-step instructions, see the custom fields guide. For a worked example of custom fields in practice, see how to add margins using Custom Fields.
FAQs
What format should my metric list be in?
A CSV export from your current tool is ideal, but a screenshot of the formula editor or a pasted table works too. Claude just needs the name and formula of each metric.
Which tools can I migrate from?
Any tool where you can see each metric’s name and formula. Funnel calculated metrics, Adverity manipulation/formula fields, and Supermetrics custom fields all map to Windsor.ai custom fields.
Should a migrated field be NUMERIC or TEXT?
Use NUMERIC for any value used in calculations, such as spend, CPA, or ROAS. Use TEXT only for labels that group or tag rows, such as region or channel group. Text fields can’t be summed or used in mathematical formulas.
Ready to migrate your custom fields? Connect Windsor.ai to Claude and bring them over in minutes
Windsor vs Coupler.io