CRM migration

Migrate from Bright to Freshsales

Field-level mapping, validation, and rollback between Bright and Freshsales. We move data and schema; workflows are rebuilt natively in Freshsales.

Bright logo

Bright

Source

Freshsales

Destination

Freshsales logo

Compatibility

90%

9 of 10

objects map 1:1 between Bright and Freshsales.

Complexity

BStandard

Timeline

24–48 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Bright CRM stores contacts, companies, deals, and activities in a flat object model with per-seat or usage-based licensing. Freshsales structures the same data across Leads, Contacts, Accounts, and Opportunities — each with its own field set and lifecycle stage. The migration carries every standard object from Bright into Freshsales, maps pick-list values for pipeline stages and statuses, resolves owner email addresses against Freshsales user accounts, and re-uploads file attachments. Custom fields created in Bright become custom fields in Freshsales (on Pro and Enterprise plans, which support advanced custom fields). Workflows, sequences, and automation rules in Bright do not carry over — FlitStack AI exports the workflow definitions as JSON so your Freshsales admin can rebuild them in Freshsales's workflow builder. The migration runs via authenticated API reads from Bright and bulk API inserts into Freshsales, with a 24–48 hour delta-pickup window capturing in-flight changes during cutover. All operations are logged and reversible via the FlitStack audit log.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Bright logo

Bright

What's pushing teams away

  • Reporting flexibility is limited compared to enterprise payroll systems — customers needing custom analytics often bridge to external BI tools.
  • Document storage and viewer functionality lacks the polish of dedicated document management platforms, an annoyance for HR-heavy users.
  • UK-only focus means companies expanding internationally have to migrate to multi-country payroll providers like Deel, Remote, or ADP iHCM.
  • Bureau pricing scales aggressively (e.g., £329 for 10 employers, £549 for 25 employers per tax year), pushing larger payroll bureaus toward subscription-based alternatives.
  • Cloud transition is still in progress — historically a desktop-installed Windows product, customers wanting fully cloud-native payroll without local install evaluate alternatives during the transition window.

Choosing

Freshsales logo

Freshsales

What's pulling them in

  • Lowest barrier to entry among major CRMs — the free tier supports up to 3 users and includes core CRM functionality before committing to per-seat pricing.
  • Built-in chat, email, and phone reduce reliance on third-party integrations for basic sales communication and contact management.
  • Freddy AI contact scoring and deal insights are included on Pro plans at a lower price than comparable HubSpot tiers.
  • Kanban pipeline views across Contacts, Accounts, and Deals provide visual deal management without requiring custom configuration.
  • Integration with the broader Freshworks ecosystem (Freshdesk, Freshchat, Freshservice) reduces tool sprawl for teams already using Freshworks.

Object mapping

How Bright objects map to Freshsales

Each row shows how a Bright 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.

Bright

Contact

maps to

Freshsales

Contact

1:1
Fully supported

Bright contact records map 1:1 to Freshsales Contacts. Freshsales Contacts require a First Name, Last Name, and Email; Bright contacts without a last name are flagged for manual review before migration. Work phone and mobile phone merge into Freshsales's Phone and Mobile Phone fields respectively.

Bright

Contact (type = lead)

maps to

Freshsales

Lead

1:many
Fully supported

Bright stores all person records as contacts with a type field. Records flagged as 'lead' in Bright map to Freshsales Leads; records flagged as 'customer' or 'company contact' map to Freshsales Contacts. The split is determined by the Bright contact type property before migration begins.

Bright

Company

maps to

Freshsales

Account

1:1
Fully supported

Bright company records map to Freshsales Accounts. Freshsales Accounts use Name, Website, Industry, and Employee Count fields. Bright's parent-company hierarchy, if present, maps to Freshsales's Parent Account lookup field, requiring parent accounts to migrate before child accounts to resolve the foreign key.

Bright

Deal

maps to

Freshsales

Deal

1:1
Fully supported

Bright deal records map to Freshsales Deals. Freshsales Deal objects carry Name, Amount, Stage, Close Date, Owner, and associated Account. Pipeline and stage values from Bright are mapped to Freshsales pipeline-stage pick-list values per the mapping plan delivered before migration runs.

Bright

Pipeline

maps to

Freshsales

Pipeline

1:1
Fully supported

Bright deal pipelines map to Freshsales Pipelines. Each Freshsales pipeline is created in Admin Settings with its own Kanban view and stage set. If Bright has multiple pipelines, FlitStack AI creates matching Freshsales pipelines and maps each stage name to the corresponding Freshsales stage value value-by-value.

Bright

Activity (call, email, meeting, task)

maps to

Freshsales

Sales Activity

1:1
Fully supported

Bright engagement activities (calls, emails, meetings, tasks) map to Freshsales Sales Activities. Each activity type maps to its Freshsales Activity type: calls become 'Calls', emails become 'Emails', meetings become 'Meetings', and notes become 'Tasks'. Owner, timestamp, and linked record (contact, account, or deal) are preserved.

Bright

Custom Property (standard object)

maps to

Freshsales

Custom Field

1:1
Fully supported

Bright custom properties on Contacts, Companies, and Deals map to Freshsales custom fields. Basic custom fields are available on all Freshsales plans; advanced custom fields (multi-select pick-lists, lookup relationships) require the Pro or Enterprise plan. FlitStack AI creates custom fields in Freshsales before the migration run and maps each Bright property to the new field.

Bright

Attachment / File

maps to

Freshsales

File Attachment

1:1
Fully supported

Bright file attachments linked to contacts, companies, or deals are downloaded and re-uploaded to Freshsales's file storage. Freshsales Growth includes 2GB/user file storage; Pro includes 5GB/user; Enterprise includes 100GB/user. FlitStack AI verifies available storage quota before committing attachments to avoid partial uploads.

Bright

User / Owner

maps to

Freshsales

User

1:1
Fully supported

Bright owner IDs are resolved by email match against Freshsales user accounts. Unmatched owners are flagged before migration; teams either invite the user to Freshsales first or assign records to a fallback owner. This prevents records from landing without an assigned owner in Freshsales.

Bright

Tag / Label

maps to

Freshsales

Tag

1:1
Fully supported

Bright tags applied to contacts, companies, or deals migrate as Freshsales Tags. Tags are a flat key-value label system in both platforms, so the mapping is direct. Freshsales tags appear in list views and filtering, enabling segmentation continuity after cutover.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Bright logo

Bright gotchas

Medium

CIS deduction rates are employee-specific and must transfer as discrete fields

High

No bulk document export API forces manual file downloads

Low

Leave entitlement balances require separate export alongside the request history

Freshsales logo

Freshsales gotchas

Medium

Freddy AI is Pro-tier only despite heavy marketing

High

Post-migration emails and sequences are disabled

Medium

Bot session credits are a one-time 500-session allocation

Medium

Phone credits charged per minute with no cap

Low

File storage limits scale with plan tier

Pair-specific challenges

  • Freshsales API rate limits are plan-tiered and can throttle migration throughput

    Freshsales enforces per-hour API request limits that vary by subscription tier. The Growth plan caps at 1,000 requests per hour, Pro at 2,000/hour, and Enterprise at 5,000/hour. All tiers share a per-minute ceiling of 400 requests. FlitStack AI monitors 429 (Too Many Requests) responses and throttles accordingly, but migrations against a Growth-plan Freshsales account will run significantly slower than against Enterprise. If the Bright export volume exceeds the destination plan's rate limit, the migration extends beyond the initial window estimate. Teams on Growth should consider a temporary Pro trial license for the migration duration to increase throughput.

  • Bright workflows, sequences, and automation rules do not migrate and must be rebuilt in Freshsales

    Bright workflow definitions — including triggers, conditions, and automated actions — are stored in Bright's proprietary automation engine and have no Freshsales equivalent. Sequences, multi-step nurture sequences, and enrollment-based automations in Bright must be manually rebuilt using Freshsales's workflow builder (available on Growth and above) and sales sequences (Pro and above). FlitStack AI exports the Bright workflow definitions as a structured JSON file at the start of the migration, giving the Freshsales admin a rebuild reference. Failing to account for this rebuild time is the most common source of post-migration operational gaps.

  • Freshsales contact lifecycle stages require a Pro or Enterprise plan for advanced use

    Freshsales Contact Lifecycle Stages are available on Growth plans as basic labels, but the full lifecycle stage model — with stage-transition timestamps, stage-specific views, and Freddy AI scoring against lifecycle data — requires the Pro plan ($39/user/mo). Bright contacts that used lifecycle or lead-status fields as segmentation criteria will land in Freshsales Contacts with those values as static custom fields unless the team upgrades to Pro. Without the upgrade, lifecycle-based automation and AI scoring cannot leverage the migrated stage data.

  • Bright's contact-type split into Freshsales Leads and Contacts requires manual mapping review

    Bright stores all person records as contacts with a type property. Freshsales separates Leads from Contacts, each with different field sets and lifecycle models. The mapping of Bright contact-type values to Freshsales Lead Status or Contact records must be reviewed manually before migration runs. Records where Bright contact type is null or ambiguous cannot be auto-routed and are flagged for a manual decision. This mapping review step adds a planning day to the migration timeline and should not be skipped.

  • Freshsales file attachment storage limits are per-user and may require cleanup before migration

    Freshsales storage quotas are tied to the plan tier: Growth includes 2GB per user, Pro includes 5GB per user, and Enterprise includes 100GB per user. Bright file attachments — especially email attachments, imported documents, and images on deal records — can consume significant storage. FlitStack AI calculates total attachment size before migration and compares it to the destination Freshsales account's available quota. If quota is exceeded, the team must either upgrade the Freshsales plan, purchase additional storage add-ons, or selectively migrate attachments by record priority.

Migration approach

Six steps for a successful Bright to Freshsales data migration

  1. Extract Bright data via authenticated API and audit the export

    FlitStack AI connects to Bright using API credentials with read-only scope, pulling all contacts, companies, deals, activities, and custom property definitions. We also export workflow definitions as JSON and list all active user accounts for owner-resolution preparation. Before any mapping begins, the FlitStack team generates a data audit report covering record counts per object, blank field rates, duplicate email addresses, and orphaned records with no linked company or owner. This report identifies migration risk areas — such as contacts missing email addresses or deals with no linked account — before field mapping is finalized.

  2. Build the Freshsales field mapping plan and create custom fields

    FlitStack AI maps Bright objects to Freshsales objects (Contact → Contact, Company → Account, Deal → Deal) and Bright field names to Freshsales field API names. Custom fields that do not have a Freshsales standard equivalent are flagged for custom field creation. On Pro and Enterprise plans, FlitStack creates multi-select pick-list and advanced custom fields in Freshsales Admin Settings before the migration run. On Growth plans, only basic custom field types are created. The mapping plan is delivered as a field-level diff document for the customer's Freshsales admin to review and approve.

  3. Resolve Bright owners to Freshsales user accounts by email

    Bright owner IDs are matched against Freshsales user accounts using the email address as the join key. FlitStack AI generates a pre-migration owner-resolution report listing all matched pairs and all Bright owners with no corresponding Freshworks user account. Unmatched owners are assigned to a designated fallback Freshsales user (such as a RevOps admin) or the customer decides to invite those users to Freshsales before migration day. No record migrates without a resolved Freshsales owner, preventing the common issue of records landing in unassigned queues after cutover.

  4. Run a sample migration with field-level verification

    A representative slice of Bright records — typically 100–300 records spanning contacts, accounts, deals, and activities — migrates to Freshsales first. FlitStack AI generates a field-level diff comparing source values against destination values, verifying that pick-list mappings, date formats, owner assignments, and linked-record lookups resolved correctly. The customer reviews the sample in Freshsales and approves field mapping before the full run commits. Any value-mapping gaps or lookup failures are corrected in the mapping plan before the production migration begins.

  5. Execute full migration and capture delta changes during cutover window

    The full Bright dataset migrates to Freshsales via the Bulk API, respecting Freshsales rate limits per plan tier. A delta-pickup window of 24–48 hours runs concurrently, capturing any records modified or created in Bright during the cutover period. FlitStack's audit log records every insert, update, and skip operation with timestamps, error codes, and retry counts. If reconciliation identifies discrepancies — such as records that failed to insert due to duplicate email constraints — the FlitStack team resolves them and re-runs affected batches. One-click rollback reverts the Freshsales environment to its pre-migration state if the customer requires a full restart.

Platform deep dives

Context on both ends of the pair

Bright logo

Bright

Source

Strengths

  • Integrated RTI payroll submissions for UK construction companies under the CIS scheme
  • Clock-in and timesheet tracking with leave management in a single platform
  • CIS verification and deduction calculation built directly into the payroll workflow
  • Support team rated highly in G2 reviews for setup and query resolution

Weaknesses

  • Document storage interface lacks the polish of dedicated document management tools
  • Reporting flexibility is limited compared to standalone payroll systems
  • Pricing and tier structure is not publicly documented in a standard pricing page
Freshsales logo

Freshsales

Destination

Strengths

  • Generous free tier for small teams with core CRM functionality without per-seat costs.
  • All-in-one sales CRM with built-in telephony, chat, and email reducing third-party tool dependency.
  • Freddy AI contact scoring and deal predictions available on Pro tier.
  • Multiple pipeline views with Kanban and list options across all plans.

Weaknesses

  • Reports lack depth compared to competitors like HubSpot, with limited customization options.
  • Integration setup is poorly documented with no clear guides for connecting third-party tools.
  • AI features gated behind $39/user/month Pro tier despite marketing emphasis on Freddy AI.
  • Bot sessions limited to 500 one-time allocation with no monthly refresh.

Complexity grading

How hard is this migration?

Standard CRM migration. 2 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Bright and Freshsales.

  • Object compatibility

    B

    2 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Bright: Not publicly documented.

  • Data volume sensitivity

    B

    Bright doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Bright to Freshsales migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Bright to Freshsales data migrations

Answers to the questions buyers ask most during Bright to Freshsales migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Bright to Freshsales migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most Bright-to-Freshsales migrations complete within 24–48 hours for datasets under 25,000 records. Larger migrations exceeding 200,000 records or involving custom object mapping across multiple pipelines extend to 5–8 days. The longest single step is typically the Freshsales custom field creation and owner-resolution review, which runs before data moves. FlitStack AI delivers a timeline estimate after the initial Bright data audit, once record counts and custom field volume are known.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Bright.
Land in Freshsales, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day