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

# Pre-fetch dynamic data for your form

> Fetch information from Airtable, Notion or any service before your form loads. Display the data in your form or use it in your form logic.

## How it works

You can fetch information from a database or service and add it to your form. This is possible even if your form is connected to one table but needs to fetch data from another table.

This can be done using **pre-fetch**, which lets you:

* Pull in related record data
* Display external table values
* Use fetched data in logic or personalization

Even when a form is set to create new records, this can still be done as long as pre-fetch is set up.

<Info>
  This feature is available to **Business** and **Enterprise** users. For more details on pricing, click [**here**](https://www.fillout.com/pricing). However, you can still make update forms that pre-fetch information on the **Free** plan, with [this approach](/update-forms).
</Info>

## How to pull external information into your form

Fillout lets you get data from Airtable, Notion, Smartsuite and webhooks to use in your form.

<Steps>
  <Step title="Select your integration">
    Navigate to the `Integrate` page from the top menu and choose an integration. If your service isn't listed, select [Webhook](https://www.fillout.com/help/webhook#connect-your-form-to-a-webhook).
  </Step>

  <Step title="Add a pre-fetch record">
    Then, click `+ Add new` under **Pre-fetch pages**.

    <img src="https://mintcdn.com/fillout-005a867b/Dd1ZrEbxY35hkT5t/images/Screenshot2025-12-16at6.05.44PM.png?fit=max&auto=format&n=Dd1ZrEbxY35hkT5t&q=85&s=73d54383b312225415caad5bec2185be" alt="Screenshot 2025-12-16 at 6.05.44 PM.png" title="Screenshot 2025-12-16 at 6.05.44 PM.png" style={{ width:"78%" }} width="1312" height="290" data-path="images/Screenshot2025-12-16at6.05.44PM.png" />

    Enter a **name** for your record, then select a **base** and a **table**. Under **Filter by**, choose an Airtable field to match with a [URL parameter](/url-parameters), static text, or login fields (from the login page). In this example, we'll select email.

    <img src="https://mintcdn.com/fillout-005a867b/R7rMGlxIdHBwDsJR/images/Screenshot2025-02-14at11.40.20AM.png?fit=max&auto=format&n=R7rMGlxIdHBwDsJR&q=85&s=3ae7c119b48548f44d2d54c04fbf1f75" alt="Screenshot of the Fillout form creation page" width="1560" height="1408" data-path="images/Screenshot2025-02-14at11.40.20AM.png" />
  </Step>
</Steps>

## Use pre-fetched records in your form

Check out [this article](/answer-piping) to see how you can display pre-fetched records, use the data to show or hide questions, branch to different pages, and more.

<Check>
  You can fetch records from the same database you’re working in, or even an entirely separate one on your account!
</Check>

## **Related articles**

<CardGroup cols={3}>
  <Card title="URL Parameters" color="#FFC738" icon="brackets-curly" iconType="regular" href="/url-parameters">
    Pass information to a form to support pre-filling.
  </Card>

  <Card title="Answer piping" color="#FFC738" icon="wand-magic-sparkles" iconType="regular" href="/answer-piping">
    Insert previous answers into upcoming questions or fields.
  </Card>

  <Card title="Use dynamic data" color="#FFC738" icon="arrow-down-right" iconType="regular" href="/fetch-dynamic-data">
    Display content to hide, validate and pre-fill fields.
  </Card>
</CardGroup>
