The Scenario
You are a growth engineer. Your team is migrating from Intercom to Gleap and the deadline is end of week.
You have 2,000 user records in an Excel workbook, User Records tab: column A is user ID, column B is email, column C is name, column D is plan tier, column E is a custom tag.
Every record needs to be in Gleap as a user session before the Intercom contract ends Friday at midnight.
The bad version of this week:
- You read Gleap's API docs and start writing a PowerShell script
- The script fails at row 847 because column E has an unexpected value
- You debug, re-run, it fails again at row 1,203 because of trailing spaces in emails
- Friday arrives and 400 records are still not in Gleap.
The fast version is one prompt.
The Easy Way: One Prompt in SheetXAI
SheetXAI is an AI agent inside your Excel workbook that reads each row and calls Gleap's session import API directly.
Open the SheetXAI sidebar and type:
Import all rows in the User Records tab as Gleap user sessions — userId in column A, email in column B, name in column C, plan in column D, custom tag in column E. Skip rows where column A is blank.
SheetXAI reads the tab, calls Gleap's API for each row, and imports the sessions. When it finishes, it writes a summary into the workbook: how many rows were imported, how many were skipped.
What You Get
2,000 Gleap user sessions, each carrying:
- userId — from column A
- email — from column B
- name — from column C
- plan — from column D
- custom tag — from column E, attached as Gleap session metadata
The import runs in the background. You do not watch a progress bar. The Gleap dashboard shows all 2,000 sessions before Friday midnight.
What If the Data Is Not Quite Ready
Intercom exports are never perfectly clean. SheetXAI handles data issues and the import in the same prompt.
When emails have trailing spaces or mixed casing
Before importing, trim whitespace from column B of the User Records tab and convert all emails to lowercase. Then import each row as a Gleap user session.
When plan labels do not match Gleap's expected values
Normalize plan values in column D: pro_monthly → pro, pro_annual → pro, enterprise → enterprise, anything else → free. Then import all rows as Gleap sessions.
When some rows are missing a userId
For rows in the User Records tab where column A is blank, generate a userId using the email in column B with the prefix "imported-". Then import all rows as Gleap sessions. Write the generated userId back to column A.
When you need to skip users who already exist in Gleap
Before importing, check each email in column B against existing Gleap sessions. Skip any row where the email already exists in Gleap. Import the remaining rows and write "IMPORTED" or "SKIPPED — EXISTS" to column F for each row.
The pattern: clean the data and run the import in one prompt. No pre-processing script, no mid-run debugging.
Try It
Get the 7-day free trial of SheetXAI and open your user migration workbook, then ask it to import every row into Gleap as a session. The Gleap integration is included in every SheetXAI plan. For a related workflow, see how to export Gleap sessions for cohort analysis in Excel or the Gleap in Excel overview.
