diff --git a/var/spack/repos/builtin/packages/ceed/package.py b/var/spack/repos/builtin/packages/ceed/package.py
index b5ab233e944f3b360423d0c05be2e87fa6689c2c..f4cf410508acb3dea1b6cd1faceec8aed4bd4e61 100644
--- a/var/spack/repos/builtin/packages/ceed/package.py
+++ b/var/spack/repos/builtin/packages/ceed/package.py
@@ -92,6 +92,9 @@ class Ceed(BundlePackage):
     depends_on('petsc@3.13.0:3.13.99~hdf5~superlu-dist',
                when='@3.0.0+petsc+quickbuild')
     depends_on('petsc@3.13.0:3.13.99+mpi+double~int64', when='@3.0.0+petsc~mfem')
+    # Coax concretizer to use version of hypre required by transitive
+    # dependencies (mfem, petsc)
+    depends_on('hypre@:2.18.2', when='@3.0.0+mfem')
     # The mfem petsc examples need the petsc variants +hypre, +suite-sparse,
     # and +mumps:
     depends_on('petsc@3.13.0:3.13.99+mpi+hypre+suite-sparse+mumps+double~int64',