Motyw
Import kontaktów z CSV
Import CSV to najszybszy sposób na przeniesienie dużej ilości kontaktów do GoHighLevel. Ten tutorial przeprowadzi Cię przez cały proces krok po kroku.
Kiedy używać importu CSV?
- Migrujesz z innego CRM (ActiveCampaign, HubSpot, Mailchimp)
- Masz listę kontaktów w Excel/Google Sheets
- Batch dodawanie po evencie (setki wizytówek)
- Klient przekazuje Ci swoją bazę
- Consolidating dane z wielu sources
Przygotowanie pliku CSV
Krok 1: Format pliku
GHL accepts:
- CSV (Comma Separated Values) - preferred ✅
- TXT z delimiters
- Excel można przekonwertować na CSV
W Excel/Google Sheets: File →Save As → CSV (Comma delimited) (*.csv)
Krok 2: Struktura kolumn
Wymagane kolumny: Przynajmniej JEDNA z tych:
- Phone
- Last Name + First Name
Zalecane kolumny:
csv
First Name, Last Name, Email, Phone, Company, Address, City, State, Postal Code, Country, Tags, SourcePrzykładowy plik CSV:
csv
First Name,Last Name,Email,Phone,Company,Tags,Source
Jan,Kowalski,jan@example.com,+48600123456,ABC Corp,"vip,customer",website
Anna,Nowak,anna@test.pl,+48601234567,XYZ Sp zoo,"lead,warm",referralKrok 3: Formatowanie danych
Email:
- Lowercase:
jan@example.com✅ - Validated (check for typos)
- No spaces
Phone:
- Z kodem kraju:
+48600123456✅ - Consistent format w całym pliku
- Remove dashes/spaces w numerze (lub keep consistent)
Tags:
- Separated by pipe:
tag1|tag2|tag3 - LUB comma w cudzysłowach:
"tag1,tag2,tag3" - Lowercase recommended:
hot-lead|marketing
Date fields:
- Format:
YYYY-MM-DD(2026-02-17) - ISO standard - LUB:
MM/DD/YYYY(02/17/2026) - US format - Consistent throughout file
Krok 4: Cleaning data
Przed importem:
Remove duplicates:
Excel: Data → Remove Duplicates
Sheets: Data → Data cleanup → Remove duplicatesFix formatting issues:
- Extra spaces (trim)
- Wypełnij na puste cells (lub usun puste rows)
- Fix encoding issues (special Polish characters: ą, ę, ć, ł, ń, ó, ś, ź, ż)
Validate emails: Use tool like:
- ZeroBounce
- NeverBounce
- EmailListVerify
Removes invalid emails (reduces bounce rate później).
Proces importu w GHL
Krok po kroku
1. Wejdź w odpowiednie sub-konto
Upewnij się że jesteś w właściwym sub-account dla klienta.
2. Otwórz Import Tool
Contacts → prawy górny róg → three dots (⋮) → Import Contacts
LUB: Contacts → Import button (depends on version)
3. Upload pliku CSV
- Click Choose File lub drag & drop
- Select Twój przygotowany CSV file
- Click Upload
GHL process file i pokaże preview.
4. Mapowanie kolumn (Column Mapping)
To NAJWAŻNIEJSZY krok!
GHL pokazuje:
- Kolumny z Twojego CSV (left)
- Pola GHL (right)
- Auto-match (GHL próbuje guess)
Sprawdź każde mapowanie:
CSV Column → GHL Field
First Name → First Name ✅
Last Name → Last Name ✅
Email → Email ✅
Phone → Phone ✅
Company → Company Name ✅
Tags → Tags ✅Custom Fields: Jeśli masz kolumny które nie matchują standard fields:
- Create custom field first (Settings → Custom Fields)
- Wróć do importu
- Map do custom field
Skip columns: Jeśli kolumna nie jest potrzebna, zostaw bez mappingu.
5. Import Options
Duplicate Handling: Co robić gdy contact już istnieje (matching email/phone)?
- Skip duplicates - zostaw existing, don't import ✅ (safest)
- Update existing - overwrite existing data z nowym z CSV (careful!)
- Create duplicate - create second contact (usually bad idea)
Uwaga
"Update existing" OVERWRITE current data. Use tylko jeśli pewien że CSV ma newest data.
Tags:
- Import tags from CSV ✅
- Add additional tag do all imported (np.
import-2026-02)
Workflow Trigger:
- Opcjonalnie: Trigger specific workflow dla wszystkich imported contacts
- Use to send welcome email, add to nurture sequence, etc.
6. Review i Confirm
- GHL pokazuje summary:
- X contacts będzie imported
- Y duplicates skip/update
- Mapping preview
- Double-check wszystko
- Click Start Import
7. Monitoring
- Import runs w tle (background)
- Duże pliki (10k+ contacts) mogą zająć kilka minut
- Receive notification gdy zakończone
- Check Activity Feed dla statusu
Po imporcie
1. Verify Import
- Go to Contacts
- Filter by tag (jeśli dodałeś import tag)
- Spot check kilka contacts:
- Czy wszystkie fields populated correctly?
- Tags assigned?
- Custom fields OK?
2. Handle Failed Imports
Jeśli niektóre contacts failed:
- GHL generuje error report
- Download i sprawdź issues:
- Invalid email format
- Missing required fields
- Duplicate handling conflicts
- Fix CSV i re-import tylko failed ones
3. Clean Up
- Remove temporary import tag (jeśli użyłeś)
- Merge any accidental duplicates (tutorial 23)
Mapowanie złożonych scenariuszy
Scenario 1: Multiple Tags
W CSV:
csv
Email,Tags
jan@test.pl,"hot-lead|vip|interested-in-premium"Mapping:
- Map "Tags" column → "Tags" field
- Delimiter: Pipe
|LUB Comma,(specify w options)
Scenario 2: Custom Fields
Masz w CSV:
csv
Email,Budget,Interest Level,Preferred Contact Time
jan@test.pl,5000-10000,High,MorningBefore import:
- Settings → Custom Fields
- Create:
- "Budget" (Dropdown: <5k, 5-10k, 10-20k, 20k+)
- "Interest Level" (Dropdown: Low, Medium, High)
- "Preferred Contact Time" (Text)
- Wróć do importu
- Map do tych custom fields
Scenario 3: Address Fields
Pełny adres w jednym polu:
csv
Email,Address
jan@test.pl,"ul. Marszałkowska 1, 00-624 Warszawa, Poland"Recommendations:
- Jeśli możliwe, split na osobne kolumny:
- Street Address
- City
- State/Province
- Postal Code
- Country
- Daje lepszą searchability i filtering
Scenario 4: Date Fields
Birthday,Last Purchase Date:
csv
Email,Birthday,Last Contact
jan@test.pl,1985-03-15,2025-12-01Format:
- Use ISO:
YYYY-MM-DD✅ - GHL auto-detected most date formats
- Verify po imporcie że parsed correctly
Advanced CSV Techniques
Multi-valued Fields
Tags Z różnych sources:
Zamiast jednej kolumny "Tags", możesz mieć:
csv
Email,Source Tag,Status Tag,Interest Tag
jan@test.pl,facebook,hot-lead,premium-packageDuring import:
- Map wszystkie do "Tags"
- GHL concatenate
Conditional Tagging
W preprocessing (before import):
Excel formula to conditionally add tags:
excel
=IF(Budget>10000,"high-budget","standard-budget")Create "Budget Tag" column uyując formula, potem import.
Encoding Issues
Problem: Polish characters (ą,ę,ł,ń,ó) pokazują się as gibberish.
Solution:
- Excel: Save as CSV UTF-8 (not standard CSV)
- Google Sheets: Download as CSV automatically UTF-8
- Notepad++: Encoding → Convert to UTF-8
Best Practices Importu
1. Test Import First
Always:
- Create test CSV z 5-10 contacts
- Import do test sub-account (або sandbox environment)
- Verify everything works
- Tylko potem import full list
2. Batch Dużych List
Jeśli masz 50k+ contacts:
- Split na multiple files (10k each)
- Import w batches
- Reduced risk błędy
- Sprawdzasz każdy batch before next
3. Add Import Date Tag
Zawsze dodaj tag:
import-2026-02-17Dlaczego:
- Easy identyfikacja imported batch
- Troubleshooting później
- Segmentacja dla specific campaigns
- Tracking źródła
4. Backup Before Update
Jeśli robisz "Update Existing":
- Export current contacts first (backup!)
- Potem import z update
- Jeśli coś pójdzie źle, masz backup do restore
5. Document Mapping
Screenshot lub notes:
- Które kolumny mapped gdzie
- Custom fields użyte
- Tags dodane
- Date importu
Helpful dla future imports lub troubleshooting.
6. Clean Data Zewnętrz czasz BeFORE Import
Niczyść w CSV before uploading:
- Invalid emails
- Duplicates within file
- Formatting consistency
- Missing krityczne fields
Jest łatwiej fix w Excel niż w GHL po imporcie.
Troubleshooting
Problem: "Invalid File Format"
Możliwe przyczyny:
- Nie jest prawdziwy CSV (może być Excel .xlsx nazwany .csv)
- Encoding issue (non-UTF-8)
- Corrupt file
Solution:
- Re-save jako CSV UTF-8
- Open w Notepad++ check format
- Try different program (Excel → Google Sheets)
Problem: "Column Mapping nie rozpoznaje pól"
Solution:
- Upewnij się headers w pierwszym row
- Nazwa headers closely match GHL fields:
- "First Name" not "FirstName" czy "Name"
- "Email" not "email address"
- Check for extra spaces w header names
Problem: "Wszystkie contacts failed import"
Check:
- Czy at least jedna z: Email, Phone, First+Last Name jest populated?
- Invalid email formats (mnoość)
- Duplicate detection rules zbyt strict
Solution: Download error report, fix issues, re-upload.
Problem: "Tags nie imported"
Check:
- Czy mapped "Tags" column → "Tags" field?
- Delimiter correct? (pipe
|vs comma,) - Tags w cudzysłowach jeśli contains commas
Problem: "Custom fields puste po imporcie"
Solution:
- Verify custom fields exist przed importem
- Re-check mapping (case-sensitive!)
- Check data format w CSV matches field type (text/number/date)
Problem: "Polish characters pokazują gibberish"
Solution:
- Re-save CSV as UTF-8 encoding
- W Excel: Save As → CSV UTF-8
- W Sheets: już UTF-8 by default
- Verify po re-upload
Compliance i Legal
RODO (GDPR) Considerations
Jeśli importujesz contacts w UE/PL:
Musisz mieć: -Legal basis (zgoda, legitimate interest,Contract)
- Dokumentację consent (gdzie i kiedy uzyskano)
Recommended:
- Kolumna "RODO Consent" w CSV: Yes/No
- Kolumna "Consent Date": data zgody
- Kolumna "Consent Source": skąd (website form, event, etc.)
Po imporcie:
- Do NOT wysyłaj marketing do tych bez consent
- Segment: "consent=yes" before campaigns
OPT-IN vs OPT-OUT Lists
Opt-in (permission-based): ✅ Best practice
- Ludzie explicitly agreedować receive communications
- Import bez problemu
- Higher engagement
Opt-out (scraped/purchased): ⚠️ Risky
- Nie có consent
- Can violate RODO, CAN-SPAM
- High complaint rate
- Może dostać Twój domain blacklisted
Po-Import Kolejne Kroki
1. Segmentacja
Create Smart Lists dla imported contacts:
- By source tag
- By import date
- By custom field criteria
2. Enrichment
Imported data often basic. Enrich:
- Research company details
- LinkedIn profiles
- Additional custom fields
- Lead scoring
3. Engagement Campaign
Start nurturing imported contacts:
- Welcome email sequence
- Value-providing content
- Gradually build relationship
- Don't immediate hard sell
4. Monitoring
Track metrics first 30 days:
- Email open rates
- Response rates
- Unsubscribe rate (should be <1%)
- Spam complaints (should be <0.1%)
Wysoki complaints = problem z listą quality.
Ekspert Tips
Tip 1: Pre-Segment w CSV
Zamiast importować wszystko płasko, możesz pre-segment:
- File1: hot-leads.csv
- File2: warm-leads.csv
- File3: cold-prospects.csv
Import osobno z różnymi tags/workflows.
Tip 2: Progressive Profiling
Possible nie masz wszystkich danych teraz:
- Import basic info (name, email)
- Later imports enrich (company, budget, etc.)
- GHL updates existing contacts
Tip 3: Use środło Tracking
Tag format:
source:facebook-ads-campaign-febuary
source:webinar-2026-02-15
source:linkedin-connection-requestsDetailed tracking → better ROI analysis później.
Checklist Importu
Przed kliknięciem "Import":
- [ ] CSV properly formatted (UTF-8, headers, clean data)
- [ ] Test import wykonany (5-10 contacts)
- [ ] Column mapping checked (każdy field właściwie)
- [ ] Duplicate handling strategy wybrany
- [ ] Import tag dodany (data tracking)
- [ ] Custom fields created (jeśli potrzebne)
- [ ] RODO compliance checked
- [ ] Backup created (jeśli update existing)
- [ ] Email validation run (reduced bounces)
- [ ] Post-import plan ready (segmentation, nurture)
Sumowanie
CSV import to powerful tool do mass-adding contacts. Proper preparation (clean data, correct format, good mapping) = smooth import z wysokim success rate.
Key points:
- Clean data PRZED importem
- UTF-8 encoding dla Polish characters
- Test z małym file first
- Always add import-date tag
- RODO compliance dla EU contacts
- Verify po imporcie
Next tutorial: Niestandardowe pola kontaktów - jak stworzyć i używać custom fields efektywnie.
