docs / concepts
How rendering works
A template is a design we maintain, with a version and a list of fields. A render is one request to fill a template and produce one file.
Render lifecycle
queued → running → completed or failed. When you create a render, one render is reserved from your monthly allowance in the same database transaction. It is counted when the file is ready, and released if the render fails, whether because of your input or because of us.
Renders that fail because of us (a browser crash, a timeout) are retried automatically up to three attempts. Input problems such as an image that cannot be downloaded fail at once with a clear code.
Text fitting
Every text box has a maximum and a minimum size. Text shrinks until it fits. If it still does not fit, most fields are cut with an ellipsis and a text_clamped warning is attached to the render; fields such as prices fail with text_overflow instead, because a cut-off price would be wrong.
What the renderer will not do
Templates are written by us only. Your values are always inserted as text, never as HTML. The browser that draws the image cannot reach the network; images you link to are downloaded first by a separate guarded fetcher that refuses private and internal addresses.