Web App Batch Enrichment
Enrich your customer list in minutes, no engineer required
You can now enrich a customer file with FullContact straight from your browser. Web Enrichment, now live at app.fullcontact.com, lets you upload a CSV, map your columns, and download a file of enriched records. There is no API integration and no support ticket.
Why we built it
Until now, getting enriched data back from FullContact in real time meant working with the Enrich API or using an AI tool connected to our MCP Server. That is a great fit for engineering teams. It left out the marketing, sales, operations and analytics people who have a list, a campaign deadline, and no developer to spare. Web Enrichment is for them.
How it works
- Upload a CSV, or paste your records straight into the page.
- Map your columns to FullContact fields. We auto-map from your headers and sample values, and you can change any column from a dropdown.
- Confirm before anything runs. You see the records in your file and how many matches the run will use, so there are no surprises.
- Download your enriched file from the Reports page when the job completes. The report also shows your match rate.
What you can match on
Any one of these identifiers is enough to enrich a record: email, phone, name and address, mobile ad ID (MAID), LinkedIn URL, or X ID. Add first name, last name, company, address, city, state and zip to sharpen the match. A single file can hold up to 100,000 rows.
What you get back
You get one row of enrichment data per input row, in the same order as your file. Which fields come back depends on the data your plan includes, and Web Enrichment uses your current account plan and matches.
Getting started
Web Enrichment is live for all customers, and our team turns it on for each account. Ask your FullContact account manager to enable it, then sign in at app.fullcontact.com and choose Enrichment.
We're still building. Web Enrichment is in beta, and we want to hear what would make it more useful. Tell your account team what you'd like to see next.
User guide: enriching a file in the web app
You can go from a CSV to an enriched file in four steps. Before you start, confirm Web Enrichment is enabled for your account. If you don't see Enrichment in the left navigation or as enabled, ask your account manager.
Before you upload
- Save your list as a CSV (comma, tab or pipe delimited, UTF-8 encoded). The limits are 100,000 rows and 3 GB per file.
- Include at least one identifier per row: email, phone, name and address, MAID, LinkedIn URL or X ID.
- Use plaintext emails. Hashed emails (MD5, SHA-256) are not supported just yet.
- Put first and last name in separate columns. A single full-name column isn't supported.
- Remove duplicate rows. Duplicates are processed, and used, as separate records.
- Keep each record on one line. Line breaks inside quoted cells can break parsing.
- Start from the template if you like: choose Download .CSV Template on the upload page.
Step 1: Upload your file and review its details
- Sign in at app.fullcontact.com and choose Enrichment in the left navigation, then Upload Your File.
- Drag your CSV onto the upload area, or choose Select File to Upload.
- No file handy? Choose “Or copy and paste your list here” and paste your records. Include a header row, because the first pasted row is treated as headers.
After the upload, a Review File Details page shows your file name and total rows. Check two settings, then choose Map Fields:
- File separator: leave it on Detect Automatically (recommended), or pick Tab, Comma or Pipe.
- My file has a header row: choose Yes if the first row holds column names, or No if it starts with data.
Step 2: Map your columns
FullContact reads your column headers and sample values and suggests a field for each column. Check each suggestion and use the dropdown to change it. Set a column to Ignore if you don't need it.
| Field type | Fields | Rule |
|---|---|---|
| Identifiers | Email, Phone, MAID, Name + Address together, LinkedIn URL, X ID, | Map at least one. Any one is enough to enrich a record. |
| Match refiners | First Name, Last Name, Company, Address, City, State, Zip | Optional. They sharpen the match. |
If a record has several emails, phones or MAIDs in separate columns, map each one. Every column you map is used.
Watch for: a column of plain numbers, such as an ID or a date, can be auto-mapped to Phone. Review the dropdown preview for every column before you continue.
Check for unmapped columns: Each row shows a status of Mapped or Not Mapped, so choose a field for any column you want used. Then choose Review & Confirm.
Step 3: Review and confirm
Before anything runs, the Review & Confirm Enrichment page lists your mapped fields and shows the records in your file, the matches available on your plan, and the matches this run is estimated to use. Wait for the budget check to finish, then review those numbers. Tick both boxes: one agreeing to use your available matches to enrich the file, and one acknowledging that FullContact will process your data under the services agreement and the data deletion policy. Then choose Start Enrichment. If you're short on matches, the job won't start and nothing is charged.
Start Enrichment stays greyed out until both boxes are ticked, and nothing runs until you click it. A progress message, "Enriching your records...", then appears and takes you to the job's report page when processing finishes. A 3-row test file finished in about a second.
Step 4: Track your job and download results
- Choose Enrichment > Reports to open All Reports. It lists each job's name, row count, date created and status, with a download icon and a trash icon on every row. Choose New Batch to start another job.
- Open a job to see its report. A completed job shows Records Enriched, Processing Time, Match Rate, Input Records and Mapped Columns. Per-field fill rates aren't available yet.
- Choose Download Enriched File on the report, or the download icon on the list, to save your results as
<your-file>-enriched.csv. - To remove a job and its data, choose the trash icon on its row in the list. A Delete report? prompt warns that this permanently deletes the report and all associated data. Choose Delete to confirm, or Cancel to keep it. Deleting can't be undone.
You can only run one job at a time per account. Wait for the current job to finish before starting another.
Reading your results
- The results file has one row per input row, in the same order as your original file.
- It contains enrichment columns only. It does not repeat your original columns, so join the results back to your source file by row position.
- A row with no match comes back empty. It is not removed, so your row count stays the same.
- Which enrichment columns appear depends on the data your plan includes.
Reference: limits, FAQ and troubleshooting
Limits at a glance
| Item | Limit |
|---|---|
| File format | CSV, with comma, tab or pipe delimiters |
| Encoding | UTF-8 |
| Rows per file | 100,000 |
| File size | 3 GB |
| Columns | 1,000 |
| Jobs at once | 1 per account |
| Downloads at once | 3 per account |
| Results file download size | 512 MB |
| Job history | 20 jobs per page |
FAQ
Who can use Web Enrichment? Any FullContact customer whose account has it enabled. Ask your account manager to turn it on.
What does it cost? Web Enrichment uses the matches on your current account plan. The confirm step shows the estimated usage before you start.
Do I get charged if the job fails validation? No. If your file fails validation or your plan lacks enough matches, the job is refused before anything is processed or charged.
Can I choose which data fields come back? Not yet. Your results include the enrichment data your plan includes.
Will I get an email when my job is done? Not yet. Come back to Enrichment > Reports to check your job's status.
Can I cancel a running job? No. A job runs to completion or fails.
Can I run files on a schedule or through the API? Not through the web app. For recurring enrichment, talk to your account manager about batch delivery or the Enrich API.
Can I delete my files? Yes. In Enrichment > Reports, choose the trash icon on the job's row, then confirm in the prompt. Deleting permanently removes the report and all associated data.
Troubleshooting
| What you see | What it means | What to do |
|---|---|---|
| The job is refused with an "isn't part of your plan" message | Web Enrichment or the needed data isn't enabled on your account | Contact your account manager |
| "No identity field" error | None of your mapped columns is an identifier | Map at least one of Email, Phone, MAID, LinkedIn URL or X ID |
| "Active job exists" error | Another job is still running on your account | Wait for it to finish, then upload again |
| Insufficient matches | The file needs more matches than your plan has available | Reduce the file size or contact your account manager |
| "Row limit exceeded" or "file too large" | The file is over 100,000 rows or 3 GB | Split it into smaller files and run them one at a time |
| Invalid CSV | Rows have different numbers of columns, or the file is empty | Check the row the error names, then re-export your CSV |
| Usage lookup timed out | A temporary error | Try again in a few minutes |
| Low match rate | Many rows had no match, or the identifiers were poor | Check that columns mapped correctly and emails aren't hashed, then retest |
| Many empty rows in a failed job's file | A failed job may still offer a partial file | Contact your account team before using the file |
Updated about 1 hour ago