@Crumbly WriterThis is where Chapters and Page Breaks is discussed in Calibre's documentation: https://manual.calibre-ebook.com/conversion.html
calibre has two sets of options for chapter detection and inserting page breaks. This can sometimes be slightly confusing, as by default, calibre will insert page breaks before detected chapters as well as the locations detected by the page breaks option.
So if it detects a chapter heading it should do the page break. But I've had situations where it didn't (I don't have the specifics).
And then it says:
By default, calibre uses the following expression for chapter detection:
//*[((name()='h1' or name()='h2') and re:test(., 'chapter|book|section|parts+', 'i')) or @class = 'chapter']
This expression is rather complex, because it tries to handle a number of common cases simultaneously. What it means is that calibre will assume chapters start at either < h1> or < h2> tags that have any of the words (chapter, book, section or part) in them or that have the class="chapter" attribute.
My chapter names start with "Chapter" (e.g., Chapter 1) so it finds the word "chapter." I remember one situation where it didn't do the page break (and maybe it was the only situation) when my chapter name was "Preview - Chapter 1" (it was some preview chapters of a different novel at the end of the current novel). It appeared in the Table of Contents but did not have a page break before it. So maybe it was that it started with the word "Preview" rather than "Chapter."