FAQ

Questions developers actually ask.

Twelve answers — quoted verbatim by the JSON-LD FAQPage that Google rich results consume.

/01

How fast does gPdf render a PDF?

p50 is 3 ms and p99 is 8 ms on a single A4 page measured over 1K invocations. Total edge wall time, including network, is typically 8 to 15 ms.

/02

What input format does the API accept?

A JSON DocumentRequest body. Pages, elements, layers, watermarks, headers, footers and tables are all expressed structurally — no HTML, no Markdown, no browser layout pass.

/03

How does gPdf compare to Puppeteer or headless Chrome?

Headless Chromium runs at 200 to 800 ms per render and needs an 800 MB container. gPdf renders the same A4 page in 3 ms inside a 1 MB V8 isolate, with no cold start. The trade-off is input format: gPdf takes a JSON DocumentRequest, not raw HTML.

/04

What are the gPdf API endpoints?

Three: /api/v1/pdf/render takes a full DocumentRequest for pixel-level control. /api/v1/template-render takes template_id plus a data array for systems with a published template. /api/v1/e-invoice/render produces Factur-X / ZUGFeRD hybrid invoices (PDF/A-3 + embedded XML). All three share the same engine, rate limits, and error code surface.

/05

Do I need to install fonts on my server for Chinese, Japanese, or Korean?

No. NotoSans CJK is embedded and an automatic font fallback chain handles missing glyphs. You will never see tofu boxes, and you do not need apt install fonts-noto-cjk on your runtime.

/06

Which barcodes can I render?

Over 30 symbologies including QR, GS1-128, PDF417, DataMatrix, Aztec, MaxiCode and Code 128. All vector. Overall barcode length lands within 0.1 mm of the requested size — tight enough for GS1- and ITF-14-spec'd label widths.

/07

Does gPdf produce PDF/A or e-invoice compliant output?

Yes. PDF/A-1b, 2b, 3b and 4 are selectable per request. Factur-X and ZUGFeRD attachment streams are supported for e-invoice scenarios.

/08

Can gPdf produce Factur-X, ZUGFeRD or EN 16931 e-invoices?

Yes. Set settings.profile to pdfa-3b and attach the structured XML payload as a file stream. Factur-X and ZUGFeRD ride on PDF/A-3 — required for the German e-invoicing mandate already in force, and the French B2B mandate from September 2026.

/09

Where does gPdf actually run?

Inside Cloudflare Workers V8 isolates. There is no Chromium container, no Lambda warming, and no document persistence after the request.

/10

Does gPdf store my PDFs or input data?

No. The renderer is stateless. Your DocumentRequest lives in a V8 isolate for the few milliseconds of the render, then it is gone. gPdf has no caching layer and no document store — statelessness is the contract, not an opt-in toggle.

/11

Is there a free tier?

Yes. The Free Trial gives 100 pages per day, no credit card. It auto-resets daily and stops at the quota — no surprise bill. Paid tiers start at $5 per month for 100,000 pages.

/12

How do I start using gPdf?

Open the playground above, edit the DocumentRequest, then click Generate PDF — the live edge worker returns a real PDF. Copy the curl snippet into your terminal to call it from anywhere. The playground requires no install and no credit card; an account is needed only to issue your own API key.