Build multi-page report templates with automatic page breaks, headers, footers and page numbers. Fill them manually or automate via API.
Multi-page reports are where most document tools fall apart. Canva doesn't handle flowing content across pages. Word breaks layouts. InDesign is overkill. And PDF APIs expect you to manage pagination yourself in HTML.
Quaterio's pagination engine automatically flows your content across pages. Add headers, footers, page numbers, your logo and any page size. Build the template visually, then export or generate reports via the API with variable data.
Available on Business plan and above.
Multi page reports are where most document tools break. Pagination, headers, charts, tables that flow across pages, branded styling: here is how Quaterio handles each part.
Quaterio renders HTML and does not run JavaScript. Chart libraries like Chart.js, D3 or Recharts that render in the browser will not appear in the exported PDF. The correct path is to render charts server side as static SVG or PNG and embed them as images in the report.
Server side chart rendering is well supported: Node libraries like chartjs node canvas, vega lite's server SVG output, or Python's matplotlib all work. Generate the chart image, host it (or pass as a base64 data URI), and reference it in your template variable.
Every report needs a consistent header with logo and report title, a footer with the date and a confidentiality notice, and page numbers in the right place. Quaterio handles all three as document level settings; they apply to every page automatically, with no per page configuration.
Logos can be positioned on a 9 point grid (corners, edges or center). Page numbers support custom positioning, format ("Page 3 of 12" vs "3"), and can be hidden on cover pages or appendices.
Quaterio does not auto generate a TOC from heading levels; you build the TOC as content. For reports with stable section structure (most have 5 to 10 fixed sections), this is a one time setup: list the sections as a numbered list, and the PDF preserves internal anchor links for navigation.
For dynamic content where the TOC changes per report, pass the section list as an HTML variable. Your generator emits both the TOC block and the section content from the same source data.
Long tables (financial reports with hundreds of line items, metric breakdowns by month, and so on) need to break cleanly between pages without orphaning headers or splitting rows mid cell. Quaterio's pagination engine handles this: headers repeat on each page automatically, rows do not split, and column widths stay consistent.
For tables you want to keep on a single page (executive summary tables, comparison charts), the page break inside hint forces the table to stay together. If it does not fit, it starts on the next page.
The executive summary block is usually two column or three column, with each column highlighting a key metric (revenue, growth rate, customer count) in large display type. Quaterio's multi column blocks support this layout without custom CSS.
For period over period comparisons (Q2 vs Q1, year over year), pass both values as variables and let the template format the comparison with up or down arrows and color coding. The visual delta cells in the HTML to PDF demo template show the pattern.
Reports usually source data from somewhere: a BI tool, a database, an analytics platform, a CMS. The Business plan adds 13 ready made CMS connectors (WordPress, Contentful, Strapi, Sanity, Notion, Airtable, Ghost, Directus, Storyblok, Prismic, Shopify, HubSpot and Google Sheets) plus a generic REST connector for anything else. For BI tools or databases, the API path is straightforward: query your data warehouse, format as variables, call Quaterio.
For periodic reports (monthly, quarterly), schedule the data pull and PDF generation as a cron job. The webhook system on Business plans notifies you when the PDF is ready for distribution.
When the same report needs to ship in 50 versions (per region, per team, per customer), the batch API generates up to 1000 reports in a single call on Enterprise (100 on Business). Each row in the batch can have different variable values, so the regional manager sees their numbers while the customer sees only their own data.
Concurrency is configurable per call (default 5, max 20). Larger batches take longer; runtime scales roughly linearly with row count once you saturate concurrency.
Organization brand kit settings (fonts per heading level, color palette, default header and footer) apply automatically to every new report. Teams that publish a lot of reports get a single source of truth: change the brand color once and every future report uses it.
For external facing reports that need exact CMYK color matching (annual reports, investor decks for print), the Business plan adds print ready export with CMYK color conversion, outlined fonts and trim marks at the corners.
Accessible PDFs (those with logical reading order, alt text on images, and proper heading semantics) are increasingly required for government and enterprise reports. Quaterio renders structurally tagged HTML, which Gotenberg (the PDF engine) translates to tagged PDF output.
Full PDF/UA compliance (the formal accessibility standard) requires additional verification beyond default tagging: alt text on every image, language metadata, structure tree validation. For PDF/UA conformant output, treat the Quaterio export as a starting point and run it through a verifier like PAC 3 before final distribution.
Recurring delivery (weekly status reports, monthly financials, quarterly board packets) is a workflow concern Quaterio does not own. The typical pattern is a scheduled job (cron, GitHub Actions, n8n) that pulls the data, calls the Quaterio API, retrieves the PDF URL, and forwards it via email or to a shared drive.
For workflows that need delivery confirmation, the webhook system fires when the PDF is generated; chain that to your downstream notification system.
Start for free. No credit card required.