Hi, If report printing extra page please check below logic.
Body Width <= Page Width – (Left Margin + Right Margin)
Horizontal usable area:
X = Page.Width – (Left Margin + Right Margin + Column Spacing)
Vertical usable area:
Y = Page.Height – (Top Margin + Bottom Margin + Header Height + Footer Height)
Any time objects on your report (including the Body itself) extend past the usable area either because they are defined like that or because they grow at runtime, the physical page renderers have no choice but to break onto a new page.