> ## Documentation Index
> Fetch the complete documentation index at: https://filla.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Generate PDF on submit

> Automatically generate a PDF document when a form is submitted.

## What this action does

The Generate PDF action creates a PDF document each time a form is submitted. You can save the generated PDF to an Airtable attachment field, email it to the respondent, or send it to an external system via webhook.

## Template sources

You choose how the PDF content is created:

| Source                | How it works                                                                                                                                                                               |
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Auto-generated**    | Zero setup. Filla renders every non-empty field from the submitted record as a clean two-column PDF.                                                                                       |
| **Document Template** | Inline rich text editor — design a formatted document with `@` mentions for any field on the submitted record. The template lives on the action itself; no separate extension is required. |
| **Fillable PDF**      | Upload an existing PDF (max 50 MB) and visually map your form fields to positions on the PDF. Filla fills in the mapped fields and generates the output.                                   |

## Configuring a Generate PDF action

<Steps>
  <Step title="Open the Automations tab">
    In the form editor, click the **Automations** tab.
  </Step>

  <Step title="Add an action">
    Create a new automation (or open an existing one) and click **Add action**. Select **Generate PDF**.
  </Step>

  <Step title="Choose a template source">
    Pick **Auto-generated**, **Document Template**, or **Fillable PDF** from the **Template source** dropdown.
  </Step>

  <Step title="Configure the template">
    For Auto-generated, no setup is needed. For Document Template, design the document inline and `@`-mention fields from the submitted record. For Fillable PDF, click **Upload PDF template** and use the visual field mapper.
  </Step>

  <Step title="Set the output filename">
    Use the **Output filename** field to create dynamic filenames with variable text. For example: `@{Name}-application-@{Date}` generates filenames like `Jane-Smith-application-2026-03-24`.
  </Step>

  <Step title="Choose delivery options">
    Toggle on one or more delivery destinations and configure each.
  </Step>
</Steps>

## Delivery options

The generated PDF can be delivered to one or more destinations:

| Destination          | Description                                                   |
| -------------------- | ------------------------------------------------------------- |
| **Save to Airtable** | Attach the PDF to an attachment field on the submitted record |
| **Email**            | Send the PDF as an attachment to an email address             |
| **Webhook**          | Send the PDF to an external URL                               |

## Freeform text boxes

In **Fillable PDF** mode, you can draw text boxes directly on the PDF canvas. Each box can contain static text or variable text referencing form field values. Use these for adding content to areas of the PDF that do not have pre-defined form fields.

## Conditional execution

Like all automation actions, Generate PDF supports an optional **"Only run if..."** condition. Set a filter to control when the PDF is generated. For example, only generate a PDF when the "Application type" field is "Full application".

## Related pages

<CardGroup cols={2}>
  <Card title="On-submit automations" icon="bolt" href="/docs/automations/overview">
    Learn how automations work and how actions are structured.
  </Card>

  <Card title="Variable text" icon="at" href="/docs/forms/variable-text">
    Use @ references in filenames and text content.
  </Card>
</CardGroup>
