Home Care Plans
Drupal 7 EOL Pantheon Alternative Acquia Alternative WordPress to Drupal
Case Studies Blog About Book a Call
From the WebEvra blog

Drupal 7 to 11 migration: how to size the project before you ask for a quote

·

Most Drupal 7 owners cannot tell whether their migration is a 4 week job or a 20 week job, and most agencies will not give an honest estimate without a paid discovery. There is a useful middle: a small framework you can run yourself in an afternoon to put a tier on the work before you ask anyone for a price.

Drupal 7 reached End of Life on January 5, 2025. Sites still running on it in 2026 are accumulating risk every month. The question is not whether to migrate; it is how big the migration actually is.

The four drivers of D7 migration scope

Strip the rest of the noise away and there are four numbers that determine where your migration sits on the effort curve.

  • Contributed module count. The number of contrib modules currently enabled.
  • Custom module count. The number of custom modules you wrote or paid an agency to write.
  • Integrations. The number of third-party services the site talks to (payment, CRM, marketing automation, custom APIs).
  • Traffic and uptime sensitivity. Low / medium / high. This drives the QA and rehearsal effort, not the engineering effort directly.

Everything else is downstream of these four. Get rough numbers for each before you talk to anyone.

Driver 1: contributed module count

Run drush pml --status=enabled on production. Count the entries that are not core or your custom modules. That is the number you want.

  • Under 12 contrib modules: low risk. Most have D11 ports; you are mostly running config swaps.
  • 12 to 30 contrib modules: medium risk. A few will need replacement (replaced by core, or by a different module on D11). Plan a week of audit work before you commit to scope.
  • Over 30 contrib modules: high risk. Some will have no D11 path. The migration starts with a triage where you decide which features stay and which go.

The contrib count alone will not push the migration to "complex" — the modules that don't port are a constant in any audit, and the migration tool handles the rest.

Driver 2: custom module count

This is the killer driver. D7 hooks, fields, render arrays, services, and configuration are not the same as D11. Custom modules will not run on D11 unmodified. Plan for full or near-full rewrite.

  • Zero to 1 custom modules: probably small migration territory.
  • 2 to 5 custom modules: medium. Each module is roughly 16 to 40 hours of rewrite depending on complexity.
  • 5 to 10 custom modules: medium to large. The aggregate rewrite hours start to dominate the migration budget.
  • Over 10 custom modules: large. Often the migration moment is when you decide which custom modules survive the trip and which get cut.

If you are not sure what is custom versus contrib, look in sites/all/modules/custom or sites/default/modules/custom. Folder names that don't match a drupal.org project are custom.

Driver 3: integrations

Every third-party service the site calls is a separate test plan during cutover. Each integration also needs verification that the D7 contrib module that talks to it has a D11 path, or that you are willing to rewrite the integration directly.

  • Zero to 2 integrations: low risk. Common case is just a contact form going to email and Google Analytics.
  • 3 to 5 integrations: medium. Payment gateway, CRM, mailing list, search service. Each adds rehearsal time.
  • Over 5 integrations: high. Often the integrations are the reason the original D7 build was custom.

Driver 4: traffic and uptime sensitivity

This does not change the engineering effort but it changes the cutover and rehearsal effort.

  • Low traffic, low sensitivity: small business site, archive, occasional visitors. Cutover during a quiet window, monitor for a day, done.
  • Medium traffic, medium sensitivity: active marketing site, lead-gen, content-driven. Plan a rehearsal in staging, cut over off-hours, monitor for 48 hours.
  • High traffic, high sensitivity: revenue-generating, regulated, or 5,000+ daily users. Plan a full dress rehearsal, cutover with a rollback plan, on-call for the first week.

The tier table

Score each driver. Sum. The total tells you the rough tier.

Driver0 points1 point2 points3 points
Contrib count< 1212 to 2021 to 3030+
Custom count0 to 12 to 45 to 910+ (this row also gets a +1)
Integrations0 to 23 to 45+
Trafficlowmediumhigh

Sum the points:

  • 0 to 2 points: small migration. $500 to $1,000 fixed price. 4 to 6 weeks delivery.
  • 3 to 6 points: medium migration. $1,500 to $2,500 fixed price. 8 to 12 weeks delivery.
  • 7+ points: large or complex migration. $3,000 to $6,000+. 12 to 20 weeks delivery. Audit needed before firm quote.

These are WebEvra tiers, anchored to the interactive risk calculator on the D7 EOL page. Other agencies will price differently. The pattern is the same: the four drivers determine the tier; everything else is detail.

What is not in this framework

This sizes the migration. It does not size:

  • The new theme. A D7 theme will not run on D11 regardless of what your migration scope says. If you also want a design refresh, that is a separate work stream — typically four to eight weeks of design plus implementation on top of the migration.
  • The post-migration support. The cutover is one day; the next twelve months are when latent bugs surface. Whether you cover that in-house, on a retainer, or under a care plan is a separate decision.
  • The hosting move. If you are also leaving Pantheon or Acquia, that is its own scope. The migration to D11 is independent of the host change; we recommend doing them together when budget allows because the rehearsal cost is mostly fixed.

Free 30 minute audit

If you ran the framework above and want a sanity check from a senior Drupal engineer, the audit is free and runs 30 minutes. We do not pitch on the call; we tell you which tier we think the migration is and why. The fixed-price quote comes after if you want one.

For the full pre-flight checklist (module audit, content mapping, URL preservation, cutover plan), the 9-phase migration checklist is downloadable as a PDF.

Want this on your site?

A 20 minute Drupal audit covers your codebase, hosting, patch posture, and what to do next.

Book a 20-min Drupal audit