By Arthur Baghdasaryan, senior Drupal specialist · Drupal.org profile

Drupal 7 to Drupal 8 migrations — and the line I will not cross

I have run Drupal 7 to Drupal 8 migrations for organisations that needed a supported core. This page is that experience, not a fictional client story.

What is on the record

A rebuild, not an update

Drupal 7 to Drupal 8 was never “run update.php.” The platform changed foundations: Symfony components, configuration management, Twig themes, and a different module API. Content and users moved. Themes were rebuilt. Modules were mapped to equivalents or replaced.

I do not publish a client name or a single project’s budget for that work. What I will state is the shape: high-value Drupal 7 to 8 migrations, done as a scoped rebuild, not as an open-ended care arrangement that pretended the old site was fine.

What I refused then, and still refuse

No open-ended stay on end-of-life core

A bridge can make sense while budget, procurement, or content inventory catch up. An open-ended “we will stay on Drupal 7 and call it support” does not. Community security support for Drupal 7 ended on 5 January 2025. Hardening can reduce avoidable risk for a dated window. It cannot invent the patches the community no longer ships.

If you need that dated bridge now, see Drupal 7 support. If you are ready to leave, see Drupal 7 migration — today’s destination is Drupal 10 or 11, not another hop that stops at 8.

Related

Where this work leads

About Arthur

Who does the work, and the other figures I publish.