diff --git a/Filters/HyperTree/Testing/Cxx/CMakeLists.txt b/Filters/HyperTree/Testing/Cxx/CMakeLists.txt
index ff45223668424c9eb4eac03b07d1d0f3eae1d05a..3cd0519b8b5eb5b36ad9dc5c6b7daed019745be5 100644
--- a/Filters/HyperTree/Testing/Cxx/CMakeLists.txt
+++ b/Filters/HyperTree/Testing/Cxx/CMakeLists.txt
@@ -38,6 +38,7 @@ set(test_sources
   TestHyperTreeGridBinaryClipPlanes.cxx
   TestHyperTreeGridBinaryEllipseMaterial.cxx
   TestHyperTreeGridBinaryHyperbolicParaboloidMaterial.cxx
+  TestHyperTreeGridGeometryPassCellIds.cxx
   TestHyperTreeGridTernary2D.cxx
   TestHyperTreeGridTernary2DBiMaterial.cxx
   TestHyperTreeGridTernary2DFullMaterialBits.cxx
diff --git a/Filters/HyperTree/Testing/Cxx/TestHyperTreeGridGeometryPassCellIds.cxx b/Filters/HyperTree/Testing/Cxx/TestHyperTreeGridGeometryPassCellIds.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..a7016669af6a8b195db90d0f4c27be8b54fdb742
--- /dev/null
+++ b/Filters/HyperTree/Testing/Cxx/TestHyperTreeGridGeometryPassCellIds.cxx
@@ -0,0 +1,84 @@
+/*=========================================================================
+
+  Program:   Visualization Toolkit
+  Module:    TestHyperTreeGridGeometryPassCellIds.cxx
+
+  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
+  All rights reserved.
+  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
+
+     This software is distributed WITHOUT ANY WARRANTY; without even
+     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+     PURPOSE.  See the above copyright notice for more information.
+
+=========================================================================*/
+// Funded by CEA, DAM, DIF, F-91297 Arpajon, France
+
+#include "vtkHyperTreeGrid.h"
+#include "vtkHyperTreeGridGeometry.h"
+#include "vtkHyperTreeGridPreConfiguredSource.h"
+
+#include "vtkActor.h"
+#include "vtkCamera.h"
+#include "vtkDataSet.h"
+#include "vtkLookupTable.h"
+#include "vtkNew.h"
+#include "vtkPolyDataMapper.h"
+#include "vtkProperty.h"
+#include "vtkRegressionTestImage.h"
+#include "vtkRenderWindow.h"
+#include "vtkRenderWindowInteractor.h"
+#include "vtkRenderer.h"
+
+int TestHyperTreeGridGeometryPassCellIds(int argc, char* argv[])
+{
+  vtkNew<vtkHyperTreeGridPreConfiguredSource> htgSource;
+  htgSource->SetHTGMode(vtkHyperTreeGridPreConfiguredSource::CUSTOM);
+  htgSource->SetCustomArchitecture(vtkHyperTreeGridPreConfiguredSource::UNBALANCED);
+  htgSource->SetCustomDim(3);
+  htgSource->SetCustomFactor(3);
+  htgSource->SetCustomDepth(4);
+  std::vector<unsigned int> subdivs = { 3, 3, 3 };
+  std::vector<double> extent = { -1, 1, -1, 1, -1, 1 };
+  htgSource->SetCustomSubdivisions(subdivs.data());
+  htgSource->SetCustomExtent(extent.data());
+
+  vtkNew<vtkHyperTreeGridGeometry> geom;
+  geom->SetPassThroughCellIds(true);
+  geom->SetInputConnection(htgSource->GetOutputPort());
+  geom->Update();
+
+  vtkNew<vtkPolyDataMapper> mapper;
+  mapper->SetInputConnection(geom->GetOutputPort());
+
+  auto ds = vtkDataSet::SafeDownCast(geom->GetOutput());
+
+  vtkNew<vtkLookupTable> lut;
+  lut->SetNumberOfTableValues(100);
+  lut->SetTableRange(0, ds->GetNumberOfCells());
+
+  mapper->ScalarVisibilityOn();
+  mapper->SetLookupTable(lut);
+  mapper->UseLookupTableScalarRangeOn();
+  mapper->SetScalarModeToUseCellFieldData();
+  mapper->ColorByArrayComponent("vtkOriginalCellIds", 0);
+  mapper->InterpolateScalarsBeforeMappingOn();
+
+  vtkNew<vtkActor> actor;
+  actor->SetMapper(mapper);
+  actor->GetProperty()->SetRepresentationToSurface();
+  actor->GetProperty()->EdgeVisibilityOn();
+
+  vtkNew<vtkRenderer> renderer;
+  renderer->AddActor(actor);
+
+  vtkNew<vtkRenderWindow> renWin;
+  renWin->AddRenderer(renderer.Get());
+
+  vtkCamera* camera = renderer->GetActiveCamera();
+  camera->SetPosition(-1.5, -1.5, -1.5);
+  renderer->ResetCamera();
+
+  renWin->Render();
+  return !vtkRegressionTester::Test(argc, argv, renWin, 10);
+}
diff --git a/Filters/HyperTree/Testing/Data/Baseline/TestHyperTreeGridGeometryPassCellIds.png.sha512 b/Filters/HyperTree/Testing/Data/Baseline/TestHyperTreeGridGeometryPassCellIds.png.sha512
new file mode 100644
index 0000000000000000000000000000000000000000..170e95c708b31abeed29f18699c93c76ffc17936
--- /dev/null
+++ b/Filters/HyperTree/Testing/Data/Baseline/TestHyperTreeGridGeometryPassCellIds.png.sha512
@@ -0,0 +1 @@
+6f4aadcc67f2a4af91c697d3650c346e34ec973df964f7410b6126047a4792fcca910ebfbf80fcb583426c13fc83bda46608521116e9a73a498a2a2e4ebd1663