Adding leads manually and importing a CRM CSV
Leads flow into Verinode on their own as inquiries come in through your inbox, but two of them are always in your hands: typing in a lead you took over the phone, and bringing in a batch export fro…
On this page
What this covers
Leads flow into Verinode on their own as inquiries come in through your inbox, but two of them are always in your hands: typing in a lead you took over the phone, and bringing in a batch export from a CRM you already run (DASH, Albi, JobNimbus, and similar tools). This article covers both paths on the Leads page: the Add lead form, the Import CSV flow, what each field and column maps to, and what the import result summary tells you afterward.
Where to find it
Open Sales & Marketing from the sidebar (/growth), then open Leads (/growth/leads). The back link at the top of the page reads "‹ Sales & Marketing." At the top right of the Leads page sit two buttons:
- Add lead, opens a short form for typing in one lead by hand.
- Import CSV, opens your file picker for a bulk CRM export. While a file is being processed the button reads "Importing…" and is disabled so you cannot fire a second import on top of it.
Both actions write into the same lead list you see below them, filtered by the same chips (Needs attention, All, New, Quoted, Won, Lost).
Adding a lead by hand
Click Add lead. A narrow overlay titled "Add a lead" opens with six fields:
- Name, the customer's name.
- Phone and Email, side by side.
- Property address, the loss address.
- Source, free text, for example "Referral," "Google," or "Angi." You are not picking from a fixed list. Whatever you type is resolved behind the scenes into one of Verinode's acquisition channels (Referral, Repeat customer, Paid search, Paid social, Local Service Ads, Organic / web, Direct, Carrier program) so the lead can be compared against peers on the same channel later. If the resolver cannot place your wording, the lead still saves, it just lands under a general channel.
- Estimated value, the dollar amount you expect the job to be worth. Type digits and a decimal point; other characters are stripped automatically.
You do not have to fill in every field. Verinode only requires that you give it something to work with, at least one of a name, phone, email, address, or source. Try to save a blank form and you will see: "Add a name, contact, source, or address." Click Add lead to save, or Cancel to discard.
Note
A lead you add this way starts at status New and, once saved, appears at the top of the list ("Needs attention" leads and the newest arrivals sort first). The page refreshes automatically, no reload needed.
Once a lead exists, whether added by hand, imported, or captured automatically, you work it from its detail overlay: click any row to open it, then use Log first response, Mark quoted, Mark won (with an optional link to the job it became), Mark lost (with a reason), or Reopen. That day-to-day pipeline work is covered in a separate article; this one is about getting leads in.
Importing a CRM CSV
Click Import CSV and choose a file from your computer. Verinode reads the file, maps its columns, and writes each usable row as a lead, then shows you a result summary. There is no template to fill out first: the importer is built to recognize the column names your CRM already uses.
What "CRM CSV" means here
This is meant for an opportunity or lead export from a CRM like DASH, Albi, or JobNimbus, the list of inquiries or opportunities your team has logged, not a job or invoice export. One file can backfill months of funnel history in a single pass, since your inbox capture only sees inquiries going forward from when you set it up. Importing is a manual, explicit action, so it always writes for real; it does not wait on any rollout switch the way automated inbox capture might.
How columns are mapped
Verinode does not need an exact header name. It matches on a broad list of common aliases restoration CRMs use for the same field, case-insensitive, and takes the first alias it finds in your file for each of the following:
| Verinode field | Recognized column headers (examples) | |---|---| | Source | Source, Lead Source, Referral Source, Marketing Source, Opportunity Source, How Did You Hear (About Us), Channel, Lead Type, Campaign | | Status | Status, Stage, Opportunity Status, Pipeline Stage, Deal Stage, Lead Status, Opportunity Stage | | Received date | Created, Date Created, Created Date, Created At, Lead Date, Date Received, Opportunity Created, Inquiry Date, Date, Received | | First response date | First Contact, First Contacted, Contacted Date, First Response, Responded, Date Contacted, First Contact Date | | Estimated value | Value, Estimated Value, Opportunity Value, Amount, Estimate, Job Value, Deal Value, Potential Value, Est Value, Estimated Amount, Quote Amount | | Lost reason | Lost Reason, Reason Lost, Loss Reason, Closed Lost Reason, Lost Notes | | Contact name | Name, Customer, Customer Name, Contact, Contact Name, Client Name, Insured, Insured Name, Homeowner, Full Name | | Phone | Phone, Phone Number, Mobile, Cell, Primary Phone, Contact Phone, Telephone | | Email | Email, Email Address, Contact Email, E-mail | | Property address | Address, Street, Street Address, Property Address, Job Address, Loss Address, Service Address, Site Address, Address 1, Address Line 1 |
Any column in your file that is not on this list is simply ignored, it does not cause an error and it does not get stored.
Status mapping. Whatever your CRM's stage or status column says, Verinode reads the wording and buckets it into one of four lead statuses:
- Words like "closed won," "won," "sold," "signed," "converted," "booked," "job created," or "approved" map to Won.
- Words like "closed lost," "lost," "dead," "declined," "no sale," "cancelled," or "rejected" map to Lost.
- Words like "quote," "estimate," "proposal," "bid," "pending," "negotiating," or "follow-up" map to Quoted.
- Anything else, or a blank status column, defaults to New.
Dates. Verinode parses whatever date format your export uses, including day/month order variants (a Canadian-style "14/03/2024" export resolves correctly rather than getting flipped or discarded). It looks across your whole file once per date column to infer whether it is day-first or month-first, so the same file is read consistently row to row instead of guessing row by row. If a cell carries a time of day, that is kept, since how fast you responded to a lead matters down to the hour, not just the day.
Money. Values like "$1,250.00" or figures with parentheses for negatives are parsed to a plain number. Only positive amounts are kept as an estimated value; anything that comes out zero or negative is treated as no value given.
What gets skipped
A row is counted as skipped when it carries none of: a source, a contact name, a phone, an email, an address, or a recognizable status. In practice that means a genuinely blank or junk row in your export, not a real lead. Every skipped row is still counted, never silently dropped.
Duplicate handling
If a row's contact information (name, phone, email, or address) matches a lead already on file for the same customer, within about a month of that lead's received date, Verinode treats it as the same inquiry instead of creating a duplicate. It fills in anything the existing lead was missing (a first-response date, an estimated value) and advances the status if the import shows it further along (for example, from Quoted to Won), rather than creating a second row. This is also why you can safely re-import the same CRM export more than once, for example, to pick up new rows since your last export, without doubling your lead counts or watering down your close rate.
Running the import
- 1Click Import CSV on the Leads page.
- 2Choose your exported file (
.csv). The file picker accepts CSV files only. - 3Wait for the button to finish reading "Importing…" (this can take a moment for a large export).
- 4Review the Import complete summary that opens automatically.
- 5Close the summary. The list behind it has already refreshed with your imported leads.
You can import the same file again later, the file input clears itself after each pick, so re-selecting it (or a newer export from the same CRM) always triggers a fresh read.
Reading the import result summary
When the import finishes, an "Import complete" overlay opens with three numbers side by side:
- Added, brand-new lead rows created.
- Updated, rows that matched an existing lead (by contact) and had that lead updated instead of duplicated.
- Skipped, rows that had nothing usable to save.
Below the three numbers, a line reads "N rows read from the file," the total row count Verinode parsed out of your CSV, which should line up with Added + Updated + Skipped.
If anything went sideways on specific rows, for example a badly formed date or a value that would not parse, a Notes section lists up to eight of those messages so you can see which rows to check in your source file. The import does not stop for these; it keeps going and reports them for your awareness.
If the file itself could not be read at all (empty file, unreadable format), the summary shows 0 across Added, Updated, and Skipped with a single note explaining the failure.
Where imported and manual leads show up
Every lead you add or import lands in the same list as leads Verinode captures automatically, filtered by the same status chips, sorted the same way (leads needing attention first, then newest received). There is no separate "imported" view. From there you work each one exactly as you would any other: log a first response, mark it quoted, mark it won (optionally linking it to the job it became), or mark it lost with a reason.
Related reading
- Understanding your margin
- The decision workspace
- Clients and carriers
- Forwarding documents
- Connecting your data
Data sources
Data sources
- 1.The Add lead form. Your manual entry.
- 2.CRM opportunity/lead export CSV (DASH, Albi, JobNimbus, and similar). Your business.