Migration / Technical Advisory

SuiteCRM 7 to 8 Migration: What Changes, What Can Break, and When Should You Migrate?

A practical, balanced guide to SuiteCRM 7 to 8 migration — what changes, what normally survives, what needs investigation, where migrations get difficult, and when delaying can be the sensible decision.

Request a SuiteCRM migration assessment
SuiteCRM 7 to 8 migration — the SuiteCRM 7 interface on the left moving to the redesigned SuiteCRM 8 dashboard on the right.

If you have been running SuiteCRM for several years, there is a good chance your CRM is no longer just SuiteCRM.

It may contain custom fields created in Studio, custom modules, logic hooks, workflows, scheduled jobs, integrations with ERP or accounting systems, web forms, APIs, email configuration, reporting tools, WhatsApp integrations and pieces of PHP written by developers who may no longer work with you.

That is why moving from SuiteCRM 7 to SuiteCRM 8 deserves more thought than installing a new version and clicking an upgrade button.

We have seen businesses make two opposite mistakes. The first is assuming: It is only an upgrade. How difficult can it be? The second is assuming: Our SuiteCRM is heavily customised, so moving to SuiteCRM 8 will be impossible.

Usually, neither is true. The right answer depends on what is actually inside your CRM.

This guide explains how we look at a SuiteCRM 7 to 8 migration from a practical business and technical perspective: what changes, what normally survives, what needs investigation, where migrations become difficult and when delaying a migration may actually be the sensible decision.

On this page
  1. SuiteCRM 7 to 8 migration in plain English
  2. Is SuiteCRM 7 to 8 an upgrade or a migration?
  3. Do you actually need to migrate from SuiteCRM 7?
  4. Is SuiteCRM 7 still supported?
  5. What actually changes in SuiteCRM 8?
  6. What happens to your existing data?
  7. What happens to custom modules and customisations?
  8. What happens to integrations and APIs?
  9. What happens to workflows and automation?
  10. What are the real benefits of migrating to SuiteCRM 8?
  11. What happens if you do not migrate?
  12. The hidden problem: migration debt
  13. What are the risks of migrating from SuiteCRM 7 to 8?
  14. What should be audited before migration?
  15. Retain, Replace, Rebuild or Retire
  16. A practical SuiteCRM 7 to 8 migration process
  17. What should be tested before going live?
  18. Should you migrate and modernise everything at the same time?
  19. When would we recommend staying on SuiteCRM 7 temporarily?
  20. How complex is your SuiteCRM migration likely to be?
  21. Questions to ask a SuiteCRM migration partner
  22. So, should you migrate from SuiteCRM 7 to SuiteCRM 8?
  23. SuiteCRM 7 to 8 Migration Readiness Checklist
  24. Final thoughts

SuiteCRM 7 to 8 migration in plain English

The simplest way to explain a SuiteCRM 7 to 8 migration is this:

You are moving your existing CRM onto a new generation of the SuiteCRM application while trying to preserve the data, processes, integrations and custom functionality your business already depends on.

That last part matters. A migration is not successful because the new login screen works, Contacts are visible, the database has been copied, or the server returns HTTP 200.

It is successful when the business can continue operating.

If a salesperson can log in but quotations no longer generate correctly, the migration has failed. If customer records are present but your ERP integration has stopped posting invoices, the migration has failed. If Opportunities work but an important logic hook no longer assigns leads, the migration has failed.

Is SuiteCRM 7 to 8 an upgrade or a migration?

This is the first distinction worth understanding. SuiteCRM itself classifies moving from SuiteCRM 7 to SuiteCRM 8 as a migration rather than a normal upgrade.

That is because the architecture changed significantly. SuiteCRM 8 introduced a Symfony-based application layer and an Angular frontend, while parts of the SuiteCRM 7 application continue to operate within what SuiteCRM refers to as the legacy layer.

SuiteCRM 7.14 to SuiteCRM 7.15 is an upgrade within the SuiteCRM 7 family. SuiteCRM 7 to SuiteCRM 8 is a migration to a different application architecture.

That difference becomes important as soon as custom code is involved.

Do you actually need to migrate from SuiteCRM 7?

Not necessarily tomorrow. This is where we prefer being practical rather than creating unnecessary urgency.

There are businesses running SuiteCRM 7 installations that are stable, heavily customised and doing exactly what the organisation needs. If that installation is on a currently supported version, there may be good reasons to schedule the migration properly rather than rushing into it.

On the other hand, there are organisations still running much older SuiteCRM 7 releases because nobody wants to touch it because it currently works. That is a different situation.

Is SuiteCRM 7 still supported?

This is an area where there is a lot of confusing information online. At the time this article was prepared, SuiteCRM 7.15 is an Extended Support Release (ESR), while older SuiteCRM 7 releases have different end-of-life dates.

That means saying SuiteCRM 7 is unsupported is too broad. The exact version matters.

There is a significant difference between running SuiteCRM 7.15 ESR and running an older SuiteCRM 7 installation that has not been properly maintained.

What actually changes in SuiteCRM 8?

From a business user perspective, SuiteCRM 8 may initially look like a redesigned CRM. From a developer perspective, the change is considerably larger.

A simplified SuiteCRM 7 architecture looks like: Browser → SuiteCRM/PHP application → database.

SuiteCRM 8 introduces another application layer: Angular frontend → SuiteCRM 8 services/Symfony → legacy SuiteCRM functionality → database.

That does not mean every piece of SuiteCRM 7 suddenly gets rewritten in Angular and Symfony during migration. SuiteCRM 8 intentionally retains legacy functionality while newer areas of the application use the new architecture.

We therefore separate two ideas:

  • Migration — make the existing CRM work reliably on SuiteCRM 8.
  • Modernisation — gradually rebuild selected legacy customisations using the newer SuiteCRM 8 architecture.

Those projects can be related, but they do not have to happen simultaneously. In fact, separating them often reduces risk.

What happens to your existing data?

For most businesses, this is understandably the first concern. Your CRM may contain years of Accounts, Contacts, Leads, Opportunities, Cases, Calls, Meetings, Notes, Emails, Documents, Quotes, Campaigns, custom module records, relationships, audit history and uploaded files.

The migration process is designed to preserve the SuiteCRM 7 data while moving the application into the SuiteCRM 8 structure. But the records being visible is only one part of data validation.

We also check:

  • custom field values
  • relationships between records
  • assigned users
  • teams and security groups
  • attachments and notes
  • audit tables
  • email relationships
  • custom module data
  • character encoding
  • date/time behaviour
  • record counts before and after migration

For important modules, we normally compare data before and after the trial migration instead of relying on visual inspection. Twenty Contacts appearing correctly does not prove that hundreds of thousands of records migrated correctly.

What happens to custom modules and customisations?

This is usually where the real migration project begins. Two SuiteCRM installations with the same version number can have completely different migration complexity. One may be almost standard. The other may contain ten years of development.

Studio customisations

Custom fields, layouts, dropdowns, relationships and labels are generally easier to deal with than deep code customisations, although they still need testing.

Module Builder modules

Custom modules generated using Module Builder need to be inventoried and tested. We check whether records display properly, relationships work, list views and filters work, edit views save correctly, subpanels load, workflows still fire and permissions remain correct.

Logic hooks

Logic hooks deserve special attention. A hook may perform something business-critical without users even knowing it exists.

If that hook stops working after migration, the Opportunity itself may still save perfectly. Nobody notices the problem until operations asks why no project was created.

Custom controllers, entry points and overridden classes

These usually require deeper analysis, especially when developers have overridden SuiteCRM core behaviour rather than using upgrade-safe customisation methods.

Core modifications

These are one of the biggest migration warning signs. If previous developers directly modified SuiteCRM core files, we treat those changes as high risk until we understand why they were made. The goal should usually be to remove or re-engineer those modifications rather than blindly copying them into the new environment.

What happens to integrations and APIs?

Integrations are one of the most frequently underestimated parts of CRM migration. A business may tell us it only has three integrations. After investigation, we may find website enquiry forms, ERP, accounting, Power BI, WhatsApp, telephony, email marketing, n8n, Zapier, customer portals, payment gateways, custom mobile applications, nightly CSV imports, scheduled exports and reporting databases.

Some were built years ago. Some have no documentation. Some are using a user account and password that everybody has forgotten. Some are calling old API endpoints. And some are simply cron jobs somebody created five years ago.

Before migration we want to know:

  • What sends data to SuiteCRM?
  • What receives data from SuiteCRM?
  • What authentication does it use?
  • How often does it run?
  • What happens if it fails?
  • Who owns it?

That integration inventory is often one of the most valuable outputs of the migration assessment itself.

What happens to workflows and automation?

Workflows are easy to overlook because many were created through the CRM interface rather than by developers.

We want to understand what triggers the workflow, what conditions it checks, what records it creates, what fields it changes, what emails it sends, whether it runs immediately or on a scheduler, and whether it depends on custom code.

What are the real benefits of migrating to SuiteCRM 8?

The weakest reason to migrate is because 8 is newer. There are much better reasons.

A better long-term platform

SuiteCRM 8 is the strategic development direction of the product. If you expect SuiteCRM to remain part of your technology stack for years, eventually the question becomes less about whether to migrate and more about when.

A modern application architecture

SuiteCRM 8 brings Symfony and Angular into the platform. For organisations doing ongoing CRM development, this gives developers newer architectural patterns for frontend and backend extensions.

Opportunity to remove technical debt

A migration gives you a natural point to ask questions rarely asked during ordinary day-to-day development: Do we still need this custom module? Does anybody still use this workflow? Why did we modify this core file? Can this old PHP script be replaced with an API-based integration?

A better foundation for future development

Current SuiteCRM 8 releases continue expanding native SuiteCRM 8 functionality. For organisations investing heavily in future CRM development, that matters.

Better control over future maintenance

The goal should be to move customisations toward patterns that are easier to document, version-control, test and maintain. SuiteCRM 8 does not eliminate maintenance, but it gives you an opportunity to stop adding new technical debt to an architecture you already know you will eventually leave.

What happens if you do not migrate?

This depends entirely on what you are running. If you are on a supported SuiteCRM 7 ESR, delaying migration for a planned period can be a defensible decision. If you are running an unsupported older release, the conversation is different.

The risks start accumulating in several areas:

Security

Once a release reaches end of life, you cannot assume new security issues will be patched for your version. For a CRM holding customer information, that should matter.

Infrastructure

Older application versions often depend on older PHP versions, operating systems, databases, libraries or authentication methods. Eventually the CRM becomes the reason infrastructure cannot be upgraded.

Integration compatibility

Your CRM does not exist in isolation. Microsoft changes. Google changes. WhatsApp changes. Payment gateways change. Email providers change. APIs are deprecated. TLS requirements change. Authentication standards change. Even if SuiteCRM itself keeps running, the systems around it continue moving.

Developer availability

Maintaining old undocumented PHP customisations becomes harder over time, which normally means support becomes slower or more expensive.

Third-party extensions

Plugin vendors eventually stop supporting older CRM versions. That can turn an otherwise stable installation into a blocker when another business requirement changes.

The hidden problem: migration debt

There is another cost businesses rarely measure. We call it migration debt.

If a SuiteCRM 7 installation already contains integrations, custom modules, logic hooks, workflows and custom scripts, every new legacy customisation added before migration may become one more thing that eventually needs to be assessed.

That does not mean you should stop improving your CRM. It means every significant new SuiteCRM 7 customisation should be considered in the context of your eventual SuiteCRM 8 strategy.

What are the risks of migrating from SuiteCRM 7 to 8?

Custom functionality may behave differently

Older code can rely on assumptions about PHP, SuiteCRM internals, UI behaviour or undocumented framework behaviour.

UI customisations may need redesign

Heavy SuiteCRM 7 theme or frontend modifications need careful analysis because SuiteCRM 8 uses a different frontend architecture.

Third-party plugins may not have equivalent SuiteCRM 8 versions

Verify this before migration, not after.

Infrastructure requirements may change

The target server stack must meet the requirements of the target SuiteCRM release.

Users may need adjustment

Even technically successful migrations can create adoption problems if screens or processes change without communication.

Production cutover may require downtime

For many migrations, the sensible objective is controlled, predictable downtime with a tested rollback plan.

What should be audited before migration?

Current SuiteCRM environment

  • exact SuiteCRM version
  • upgrade history
  • database size
  • uploaded file size
  • number of users
  • major modules in use
  • scheduled jobs
  • cron configuration

Custom modules

  • Module Builder modules
  • manually developed modules
  • relationships
  • custom tables

Customisations

  • custom fields
  • layouts
  • logic hooks
  • controllers
  • custom views
  • custom JavaScript
  • custom CSS
  • entry points
  • overridden classes
  • core modifications

Workflows

  • triggers
  • actions
  • scheduled workflows
  • custom workflow actions

Integrations

  • ERP
  • accounting
  • websites and forms
  • telephony
  • WhatsApp
  • marketing platforms
  • n8n or Zapier
  • portals
  • reporting tools
  • payment systems
  • external databases
  • custom APIs

Authentication

  • standard authentication
  • LDAP
  • SAML
  • OAuth
  • SSO
  • custom authentication

Third-party extensions

  • vendor
  • version
  • business purpose
  • SuiteCRM 8 compatibility
  • available alternative
  • whether still required

Infrastructure

  • operating system
  • PHP
  • database
  • web server
  • SSL
  • mail
  • cron
  • filesystem
  • proxy
  • Redis or other services where relevant

Business-critical processes

  • document complete journeys such as: Website lead → CRM → assignment → salesperson → opportunity → quotation → ERP

Not sure how customised your SuiteCRM really is?

A migration-readiness assessment can identify custom code, integrations, plugins and migration blockers before production is touched.

Request a SuiteCRM Migration Assessment

Retain, Replace, Rebuild or Retire

Retain

It works correctly and remains suitable in SuiteCRM 8. Keep it.

Replace

There is now a better native SuiteCRM capability or supported extension. Replace the old solution.

Rebuild

The business requirement still exists, but the current implementation is too old, incompatible or risky. Rebuild it using an appropriate SuiteCRM 8 architecture.

Retire

Nobody needs it anymore. Remove it.

Retiring functionality is underrated. A migration is one of the few times an organisation gets permission to ask why it is still maintaining something. If nobody can answer, that is worth investigating.

A practical SuiteCRM 7 to 8 migration process

At a high level, a controlled migration moves through assessment and a tested trial before production is ever touched:

  1. Current SuiteCRM
  2. Assessment
  3. Supported SuiteCRM 7 baseline
  4. Trial migration
  5. SuiteCRM 8
  6. Validation
  7. Modernisation
  1. Discovery

    Understand the business processes, current environment and reasons for migration.

  2. Technical assessment

    Inventory code, modules, integrations, workflows, extensions and infrastructure. Identify blockers.

  3. Prepare the SuiteCRM 7 baseline

    Bring the current CRM to the required supported migration baseline and resolve problems that already exist.

  4. Build the SuiteCRM 8 environment

    Create the new target environment with the correct PHP, database, web server, SSL, permissions, scheduled processing and backup configuration.

  5. Trial migration

    Copy production into an isolated environment and perform the migration there. This is where you want failures to appear.

  6. Remediate customisations

    Work through incompatible PHP, UI, extensions, deprecated functions, file paths, API behaviour, permissions and schedulers.

  7. Integration testing

    Test every known integration in both directions where applicable.

  8. Business-process testing

    Run complete user journeys rather than isolated screens.

  9. User acceptance testing

    Actual users validate the activities they perform every day.

  10. Production cutover

    Plan the write freeze, backups, final data sync, deployment, validation, user release and rollback criteria.

  11. Hypercare

    Monitor logs, scheduled jobs, integrations, email, performance and user-reported issues.

  12. Modernisation

    After the environment is stable, decide what should be rebuilt or improved using SuiteCRM 8 capabilities.

What should be tested before going live?

One of the biggest mistakes in CRM projects is testing modules instead of processes. A checklist that says Accounts - pass, Contacts - pass, Leads - pass and Opportunities - pass does not tell us enough.

Lead management example

Sales example

Customer service example

Integration example

Should you migrate and modernise everything at the same time?

Usually, we would advise against it. If you migrate, redesign the sales process, replace ERP integration, introduce WhatsApp, add AI agents, rebuild dashboards, clean all customer data and redesign permissions in one project, troubleshooting becomes much harder.

A lower-risk approach is often:

Preserve

Get the important existing business processes working correctly on SuiteCRM 8.

Stabilise

Fix migration defects and establish a reliable baseline.

Modernise

Replace poor legacy customisations deliberately.

Optimise

Introduce new automation, AI, WhatsApp, n8n and process improvements.

When would we recommend staying on SuiteCRM 7 temporarily?

Your supported SuiteCRM 7 environment is stable and extremely customised

If the business risk of changing the environment today is greater than the benefit, plan rather than rush.

A business-critical plugin is not yet compatible

Replacing it may need its own project.

You are entering a critical trading period

Do not migrate a mission-critical CRM immediately before your busiest month without a compelling reason.

You do not have enough time for testing

A short schedule often saves time by removing testing. That is not saving time; it is transferring work into production incidents.

You first need to understand your customisations

If nobody knows what is inside the CRM, discovery is the first project.

Staying temporarily on a supported SuiteCRM 7 release can be reasonable. Staying indefinitely because nobody wants to investigate the system is not a strategy.

How complex is your SuiteCRM migration likely to be?

Current environmentTypical migration risk
Mostly standard SuiteCRMLow
Studio fields and layoutsLow
Standard workflowsLow-Medium
Several third-party extensionsMedium
Custom modulesMedium
Logic hooks / custom PHPMedium
API integrationsMedium-High
Heavy custom UI / themeHigh
Core SuiteCRM modificationsHigh
Undocumented custom codeVery High
Old unsupported SuiteCRM + custom codeVery High

This is not a quotation model. A single badly designed customisation can be more difficult than twenty clean ones, but the table is a useful starting point.

Questions to ask a SuiteCRM migration partner

How will you identify custom code?

If the answer is simply that they will run the migration and see what fails, that is not much of an assessment.

How will you test integrations?

You want an integration inventory and test plan.

How will you test business processes?

Ask for examples of end-to-end test scenarios.

What happens if production migration fails?

There should be a rollback plan.

Will you migrate everything or review what should be retired?

Blindly copying technical debt is easier than improving it. It is not necessarily better.

How will customisations be maintained after migration?

Ask which customisations remain in the legacy layer and which should eventually move toward SuiteCRM 8-native approaches.

How will you prove our data migrated correctly?

Users looking at a few records is not a data-validation strategy.

What happens after go-live?

Production monitoring and hypercare matter.

So, should you migrate from SuiteCRM 7 to SuiteCRM 8?

If you plan to continue using SuiteCRM long term, SuiteCRM 8 should be part of your roadmap. That does not automatically mean migrate this weekend.

For some organisations, the right answer is start now. For others, it is move onto the appropriate supported baseline, clean up the environment, audit the customisations and schedule migration properly. And for highly customised systems, the best first project may simply be finding out what you actually have.

That is why we prefer starting with a migration-readiness assessment rather than estimating only from number of users, database size and current SuiteCRM version. Those figures matter, but they do not tell us whether the business has dozens of undocumented logic hooks and an ERP integration written years ago.

SuiteCRM 7 to 8 Migration Readiness Checklist

Version

  • What exact SuiteCRM version are we running?
  • Is it currently supported?
  • What upgrade path is required before migration?

Infrastructure

  • What PHP version are we using?
  • Which database?
  • Which operating system?
  • Which web server?
  • Does the target SuiteCRM version support this stack?

Data

  • How large is the database?
  • How much file storage is used?
  • Which modules contain critical data?
  • How will record counts and relationships be validated?

Customisation

  • What custom modules exist?
  • What custom fields exist?
  • Which logic hooks exist?
  • Have core files been modified?
  • Are there custom controllers or entry points?
  • Is the customisation documented?

Automation

  • Which workflows are active?
  • Which scheduled jobs are active?
  • Which cron jobs exist outside SuiteCRM?

Integration

  • Which external systems read SuiteCRM data?
  • Which external systems write SuiteCRM data?
  • Which APIs are used?
  • Which credentials and authentication methods are used?
  • Who owns each integration?

Extensions

  • Which third-party plugins are installed?
  • Are they still used?
  • Do SuiteCRM 8-compatible versions exist?

Business processes

  • Which CRM processes would stop the business if they failed?
  • Have those processes been converted into test cases?

Migration

  • Is there a staging environment?
  • Has a trial migration been completed?
  • Is there a rollback plan?
  • Has user acceptance testing been completed?
  • Has production downtime been agreed?

If several of those answers are We are not sure, that does not necessarily mean your CRM is in bad shape. It means the correct first step is discovery rather than migration.

Final thoughts

We do not see SuiteCRM 7 to 8 migration as a file-copying exercise.

A CRM sits in the middle of sales, marketing, customer service, operations and often finance. Over time, businesses build processes around it that are far more valuable than the application itself.

The job of a migration is therefore not simply to move SuiteCRM. It is to move the business capability that has grown around SuiteCRM.

That requires understanding what must stay, what should change, what should be rebuilt and what can finally be removed.

If you approach the project that way, SuiteCRM 7 to 8 migration becomes more than a version change. It becomes an opportunity to move onto a supported platform while reducing years of accumulated CRM technical debt.

And if you are not yet sure whether your SuiteCRM is ready for migration, that is exactly what should be established before making changes to production.

SuiteCRM 7 to 8 Migration Readiness Assessment

Before starting a migration, assess the current SuiteCRM environment across version and infrastructure, custom modules, customisations, workflows and automation, APIs and integrations, third-party extensions, data, security and authentication, and business-critical processes.

Once those answers are clear, estimating and planning the actual migration becomes considerably more reliable.

Planning a SuiteCRM 7 to 8 Migration?

Before estimating the migration, we assess what needs to be retained, rebuilt, replaced or retired.

Talk to a SuiteCRM Migration Consultant

Verification references

SuiteCRM support status, migration packages and release numbers change over time. Confirm the current position against the official sources below.