CRM migration
Field-level mapping, validation, and rollback between StreetSmart and Freshsales. We move data and schema; workflows are rebuilt natively in Freshsales.
StreetSmart
Source
Freshsales
Destination
Compatibility
9 of 10
objects map 1:1 between StreetSmart and Freshsales.
Complexity
BStandard
Timeline
48–72 hours
Overview
StreetSmart customers typically migrate to Freshsales when they need broader CRM capabilities beyond field service scheduling—particularly Freddy AI-powered lead scoring, multi-pipeline deal management, and integrated email sequences that StreetSmart does not natively provide. The migration carries StreetSmart's core records (contacts, companies, deals) into Freshsales' Lead-Contact-Account-Opportunity object model. The primary translation challenges are mapping StreetSmart's custom fields to Freshsales' custom field schema, preserving contact-company association hierarchies, and handling any StreetSmart-specific properties that have no Freshsales equivalent. FlitStack AI uses scoped read access on StreetSmart to extract data via API, then maps and transforms each record before loading into Freshsales. We run a sample migration with field-level diff before committing to the full dataset, and we capture a delta window (24-48 hours) during cutover to catch in-flight changes. Workflows, sequences, and automation rules do not migrate—they must be rebuilt in Freshsales' workflow builder, and we provide an export of StreetSmart workflow definitions as a rebuild reference.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a StreetSmart object lands in Freshsales, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
StreetSmart
Contact
Freshsales
Contact
1:1StreetSmart contact records map directly to Freshsales Contact objects. Freshsales Contact requires an AccountId (lookup to Account); StreetSmart contacts without a primary company receive a default placeholder account or get mapped as Freshsales Leads based on lifecycle status. If the contact has activity history but no company link, it is flagged for review to ensure correct Lead status assignment in Freshsales.
StreetSmart
Contact (inactive / unqualified)
Freshsales
Lead
1:manyStreetSmart contacts marked as inactive or without engagement history route to Freshsales Lead rather than Contact. This split preserves Freshsales' distinction between raw leads and nurtured contacts, and prevents Freshsales lifecycle stage assignment on unqualified records. Records that lack a recent email, call, or meeting are automatically flagged as inactive, ensuring they do not consume Freshsales' contact tier quotas and remain available for reactivation if needed.
StreetSmart
Company
Freshsales
Account
1:1StreetSmart company records map to Freshsales Account. Freshsales Accounts support parent-child hierarchies via a Parent Account lookup. StreetSmart company associations (one-to-many contacts) map as Account-Contact relationships in Freshsales, preserving the primary-company designation. If a StreetSmart company has multiple locations, each location can be represented as a separate Account under the parent, allowing granular territory reporting and per-site deal tracking within Freshsales.
StreetSmart
Deal / Service Record
Freshsales
Opportunity
1:1StreetSmart service records and deal entries transform to Freshsales Opportunity. Freshsales Opportunity requires a required AccountId and optional ContactIds via Opportunity Contact Roles. Pipeline and stage assignment follows the first matching Freshsales pipeline stage based on StreetSmart service status. If no stage matches, a default stage is used and flagged for manual review.
StreetSmart
Pipeline / Stage
Freshsales
Sales Pipeline + Stage
1:1StreetSmart pipeline stages map to Freshsales pipeline stages via value-by-value mapping. Each StreetSmart stage receives a corresponding Freshsales stage name, probability percentage, and forecast category. We preserve the original stage-entry timestamp as a custom datetime field for historical continuity. This mapping ensures that deal history reflects the original progression, allowing managers to review historical win/loss trends without manual re-entry.
StreetSmart
Activity / Engagement
Freshsales
Task / Event
1:1StreetSmart call logs, emails, and meeting records map to Freshsales Tasks and Events. Calls and emails become Tasks with Type='Call' or Type='Email'. Meetings become Events with start/end times preserved. Original activity timestamps and owner assignments carry over via custom fields.
StreetSmart
Custom Property
Freshsales
Custom Field
1:1Every StreetSmart custom property requires a corresponding Freshsales custom field created before migration. Field types are inferred from StreetSmart data (text, number, date, picklist). Picklist values are mapped value-by-value to Freshsales picklist options. Custom fields are scoped to the appropriate Freshsales module (Contact, Account, or Opportunity).
StreetSmart
Owner / User
Freshsales
Owner (User lookup)
1:1StreetSmart owner IDs resolve to Freshsales users by email match. Unmatched owners are flagged before migration; you either invite them to Freshsales first or assign records to a fallback owner. No record lands in Freshsales without a valid OwnerId. If a Freshsales user account is created after the initial migration, a delta-run updates OwnerId references to reflect the new user.
StreetSmart
Attachment / File
Freshsales
Attachment
1:1StreetSmart file attachments on contacts, companies, or deals are downloaded and re-uploaded as Freshsales Attachments. File size limits apply (Freshsales default 20MB per file for most plans). Inline images embedded in StreetSmart notes are extracted and rehosted separately. During re-upload, we preserve the original file name, MIME type, and upload timestamp, and we log each attachment in the migration audit trail for traceability.
StreetSmart
System ID / External ID
Freshsales
Source_System_ID__c (custom field)
1:1StreetSmart internal record IDs are stored as a custom field on each Freshsales record for traceability, delta-run de-duplication, and cross-referencing. This allows FlitStack to identify which Freshsales record corresponds to which StreetSmart record during delta-pickup runs. We also use this ID mapping to generate reconciliation reports that compare record counts and field completeness between the source and destination after each migration phase.
| StreetSmart | Freshsales | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Contact (inactive / unqualified) | Lead1:many | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Deal / Service Record | Opportunity1:1 | Fully supported | |
| Pipeline / Stage | Sales Pipeline + Stage1:1 | Fully supported | |
| Activity / Engagement | Task / Event1:1 | Fully supported | |
| Custom Property | Custom Field1:1 | Fully supported | |
| Owner / User | Owner (User lookup)1:1 | Fully supported | |
| Attachment / File | Attachment1:1 | Fully supported | |
| System ID / External ID | Source_System_ID__c (custom field)1:1 | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
StreetSmart gotchas
StreetSmart API requires explicit key provisioning
Work Order status enumeration may differ between StreetSmart editions
Attachment metadata stored outside the primary Work Order record
Custom fields schema is not discoverable via public documentation
Freshsales gotchas
Freddy AI is Pro-tier only despite heavy marketing
Post-migration emails and sequences are disabled
Bot session credits are a one-time 500-session allocation
Phone credits charged per minute with no cap
File storage limits scale with plan tier
Pair-specific challenges
Migration approach
Profile StreetSmart data and create Freshsales custom field schema
FlitStack connects to StreetSmart via scoped read-access API to extract a full data export: contacts, companies, deals, activities, and custom property definitions. We profile every custom field for type consistency, value distributions, and null rates. Based on the profile, we generate a Freshsales custom field creation plan specifying field names, types, and picklist values for each StreetSmart custom property. Your Freshsales admin creates these fields before the migration runs, or FlitStack creates them via API if you grant write access.
Resolve owners and validate user account mappings
StreetSmart owner IDs are matched to Freshsales users by email address. We generate a pre-migration owner resolution report listing every unique StreetSmart owner and their Freshsales match status. Unmatched owners are flagged so your team can either invite them to Freshsales or designate a fallback owner. We require owner resolution to reach 100% before migration begins—no record migrates without a valid Freshsales OwnerId.
Migrate Accounts first, then Contacts and Leads split, then Opportunities
Freshsales enforces referential integrity: AccountId is required on Contact, and ContactRoles are required on Opportunity for contact associations. FlitStack sequences the migration in dependency order: (1) Companies → Accounts, (2) Contacts/Leads split by StreetSmart contact status, (3) Deals → Opportunities with pipeline and stage mapping. Activity records (calls, emails, meetings) load last, linked to their parent Contact or Opportunity. This sequence prevents Freshsales from rejecting records due to missing foreign keys.
Run sample migration with field-level diff before full commit
A representative sample—typically 200–500 records spanning each object type—migrates first. FlitStack generates a field-level diff comparing every source field value to its destination counterpart, flagging mismatches, dropped values, and formatting issues. You review the diff with our migration engineer and approve the mapping logic before the full run commits. This step catches mapping errors before they affect your entire dataset and typically takes 1–2 business days.
Execute full migration with delta-pickup window and rollback plan
After sample approval, the full StreetSmart dataset migrates to Freshsales via batched API loads. A delta-pickup window opens (typically 24–48 hours from go-live date) to capture any StreetSmart records created or modified during the cutover. FlitStack maintains an audit log of every record operation—create, update, skip, or error—with reasons. If reconciliation identifies critical discrepancies, a one-click rollback reverts Freshsales to its pre-migration state while your StreetSmart data remains intact for a second migration attempt.
Platform deep dives
StreetSmart
Source
Strengths
Weaknesses
Freshsales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 2 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across StreetSmart and Freshsales.
Object compatibility
2 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
StreetSmart: Rate-limit thresholds are not publicly documented on the developer portal.
Data volume sensitivity
StreetSmart doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during StreetSmart to Freshsales migration scoping. Not seeing yours? Book a call.
Walk through your StreetSmart to Freshsales migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave StreetSmart
Other ways to arrive at Freshsales
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.