Notes from the work

Drupal 7 to Drupal 11: migrate or rebuild, and why Drupal 12 changes the answer

Ask the concierge Contact

Short answer: a Drupal 7 site cannot be updated in place to Drupal 11. Its content and configuration are migrated into a new Drupal 11 site, and its theme is rebuilt. Do that migration on Drupal 11, and don't wait for Drupal 12: Drupal 12, due the week of 7 December 2026, no longer ships the core module that reads a Drupal 7 site, and drupal.org says it has not been moved to a contributed project. "Migrate or rebuild" is rarely either-or. The code is new either way. The real question is how much of your content, users, addresses and history comes across by script rather than by hand.

Is Drupal 7 still supported?

No. Drupal 7's security support ended on 5 January 2025, and it gets no security or compatibility updates. Even so, 182,034 sites still reported Drupal 7 to drupal.org in the week of 18 October 2026.

drupal.org's Drupal 7 end-of-life page offers two ways forward: migrate to a current release, or buy extended security support. The second is a Drupal Association programme, the Extended Security Support Provider Program. As of 28 October 2026 its certified vendors are HeroDevs and Tag1 Consulting. We have no relationship with either, and this is not a recommendation. Extended support keeps a Drupal 7 site patched. It doesn't move it anywhere: it buys time to plan the migration. Ask any vendor exactly which modules and which PHP versions their cover includes.

Can I upgrade Drupal 7 to Drupal 11 in place?

No. drupal.org's upgrade guide says an update "can't simply be applied" to a Drupal 6 or 7 site: its content and configuration "must be migrated to a new" site. The same guide sets two expectations:

  • The theme is rebuilt. Theme structure changed so much that "a theme must be rebuilt".
  • Not every module comes across by itself. Core provides an upgrade path for what was in Drupal 7 core, but "not all contributed modules have automatic upgrade paths". Custom modules are code that someone ports or replaces.

What do the migration tools actually do?

Drupal's migration system has a few parts. Versions and dates are from drupal.org's release history, read on 28 October 2026:

  • Migrate (core): the API that moves data from a source into Drupal. It stays in core in Drupal 12.
  • Migrate Drupal (core): the source plugins that read a Drupal 6 or 7 database. Deprecated in Drupal 11.4.0, and not in Drupal 12.
  • Migrate Upgrade (contributed, 4.0.2, June 2024): adds drush migrate:upgrade, which "will generate migration configurations based on the source site's configuration and content". With --configure-only it writes those migrations as configuration you can read and edit, instead of running them. It depends on Migrate Drupal, and its project is looking for co-maintainers.
  • Migrate Plus (contributed, 6.0.10, January 2026): extensions to the core framework, required by Migrate Upgrade.
  • Migrate Tools (contributed, 6.1.4, May 2026): commands to check, import and roll back migrations. Most of them now live in Drush itself.

The generated migrations are a first draft. The work is reading them, handling what the old site did in custom code, and checking the result against the old site until they match.

Why does Drupal 12 change the answer?

Because the part that reads Drupal 7 leaves core, on this record:

  • 12 January 2026. A drupal.org change record: Migrate Drupal, "which provides source migrations from Drupal 6 and 7", is deprecated in Drupal 11.4.0 "and will be removed in Drupal 12".
  • 3 March 2026. The core issue that removes it was closed: "Migrate Drupal is not being moved to contrib."
  • 2 September 2026. The Drupal 12.0.0-alpha1 release notes: Migrate Drupal and Migrate Drupal UI "have been removed from core and not moved to a contributed project". And: "Sites can continue to migrate from Drupal 6 or Drupal 7 to Drupal 11, and then update from Drupal 11 to Drupal 12 using the usual update process."

So the path drupal.org describes is Drupal 7 to Drupal 11 by migration, then Drupal 11 to 12 as an ordinary update. Migrate Upgrade depends on Migrate Drupal, so our reading is that it, too, is a Drupal 11 tool.

How long is the Drupal 11 window? drupal.org has not published an end-of-life date for Drupal 11. Its schedule shows 11.5 released alongside 12.0 in the week of 7 December 2026, and 11.6 in June 2027. Security support for 11.3 ends that same December week. A migration started today should target the current 11.4 branch and land on a supported release.

Migrate or rebuild: which one?

Most quotes for a Drupal 7 site assume a rebuild, because a rebuild is easier to price. It throws away what is genuinely yours: years of content, user accounts, revisions, addresses that search engines already know, and decisions buried in custom code that nobody can describe any more. Sometimes a rebuild is the right call, for example for a site of a few pages whose structure was wrong anyway, and we will say so.

For most sites the honest answer is both:

  • Rebuild the presentation. The theme has to be rebuilt anyway, so it is the moment to fix it.
  • Migrate the data. Content, users, files, taxonomy and addresses come across by script. A script can be run again, so the migration can be rehearsed until its result matches the old site.
  • Decide per content type. Some types are worth reshaping on the way across. Some are dead and should stay behind.

That is the approach on our offer page: make the site reproducible from code before you move it, move it in one command, and be able to move it back. The same page describes two migrations that go wrong in ways nobody warns you about: changing a field's storage type in place on a site that lacks the revision table the API expects, and changing a site's default language after it has content. Both cost a database restore to learn.

What has our founder done before?

Before Tecnocratica, our founder co-led a 14-person team migrating 1.5 million recipes and 600,000 user accounts. Later he drove the Drupal 9 to 11 cutover across a ~400-site healthcare fleet, on live production data, with no downtime window available to any organisation on it. That is his record at previous employers, not Tecnocratica's client work.

How much does it cost, and how long does it take?

A migration is quoted after an audit of the site, not before, because a price that hasn't read your code is a guess. The audit inventories the modules, the custom code and the content types, and ends in a plan and a price. The one fixed price we publish is an hour of the founder's time: USD 75. Today the engineer is the founder, so the work runs in business hours on Colombian time (UTC-5), with no 24/7 on-call.

What should I do this month?

  • List every contributed and custom module on the Drupal 7 site, and mark the ones that do real work.
  • For each, find its Drupal 11 equivalent, or decide what replaces it.
  • Decide which content types come across as they are, which change shape, and which stay behind.
  • Target Drupal 11.4, and plan the Drupal 12 update as a separate, later step.
  • If the migration can't finish soon, look at extended security support for the meantime.

To find out which path fits your site, write to us or ask the concierge on the home page.

Drafted with Claude from our own records; checked and approved by Carlos Santana. How we use AI

Want to talk this project through?

Ask the concierge about this project — what it is, how it was built, or get put in touch.