> For the complete documentation index, see [llms.txt](https://help.modelreef.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.modelreef.io/help/quickbooks-integration/variable-auto-creation.md).

# Variable Auto Creation

This article describes how Model Reef automatically creates and manages variables based on your QuickBooks Chart of Accounts mappings, and how you can extend and customise those variables for forecasting.

You will learn:

* When variables are auto created from QuickBooks data.
* How their settings are chosen.
* How auto created variables work with manual modelling.
* How to override and enhance their behaviour safely.

***

## When variables are auto created

Variables are auto created when all of the following are true:

* The model is connected to a QuickBooks company.
* You have imported the COA and mapped accounts.
* You run an **Actuals Import** or **Refresh** and there is at least one mapped account that does not yet have a corresponding variable in the model.

For each such account, Model Reef automatically creates a new variable that points at the Data Library series holding the imported actuals.

If a variable already exists for a mapped account, Model Reef updates that variable’s historical series rather than creating a duplicate.

***

## How auto created variables are configured

For each newly created variable, Model Reef sets:

* Name
  * Typically derived from the QuickBooks account name and number, cleaned for readability.
  * You are free to rename the variable later without breaking the linkage.
* Variable type
  * Taken from your mapping for that account: Revenue, COGS, Opex, Staff, Asset, Liability, Equity, Tax or Dividend.
  * Drives accounting behaviour in P\&L, Balance Sheet and Cashflow.
* Category and subcategory
  * As defined in your mapping, used for reporting structure and drilldown.
* Branch
  * The branch assigned during COA mapping (entity, division, store, project, etc.).
  * Determines which branch level statements show the variable.
* Units and frequency
  * Based on the imported QuickBooks data, typically monthly and in base currency.

The goal is to give you a ready to use set of variables that reflect your ledger structure without manual construction.

***

## Extending auto created variables with forecasts

Once auto created, you can treat these variables like any other and:

* Attach **drivers** such as volumes, prices or growth rates.
* Use **preset formulas** for recurring, seasonal or ML based forecasts.
* Set **timing and delay** rules for cash collection and payment terms.
* Add **notes, tags and attachments** to document assumptions.

Common patterns include:

* Extending revenue lines with unit based forecasts.
* Extending expense lines using cost drivers or inflation.
* Turning imported loan balances into full loan schedules with amortisation and interest.

The imported actuals provide a baseline, while your modelling logic defines the future.

***

## Avoiding duplicate variables

To keep the model tidy:

* Avoid manually creating variables that are intended to represent the same QuickBooks account as an auto created variable.
* If you already have manual variables for certain accounts, align your mapping to those manually created variables or consolidate later.

Consistently relying on auto creation after COA mapping is usually simpler than mixing manual and auto created variables for the same ledger lines.

***

## Overriding auto created settings

You can override auto created settings at any time by editing the variable, for example:

* Rename the variable to follow your internal naming policy.
* Adjust the variable type if the initial mapping was not ideal.
* Move the variable to a different branch if you change your structure.
* Refine the category and subcategory for reporting purposes.
* Change timing, escalation or other behavioural settings.

These overrides persist across refreshes. When you next import actuals, Model Reef will update the underlying historical series without removing your custom configuration.

***

{% hint style="info" %}

### Practical tips

* After your first import and auto creation, review key variables for naming, type and category, then tidy them in bulk.
* Use tags to mark variables as QuickBooks sourced versus purely manual.
* Focus forecasting work on the handful of variables that materially drive results, letting less material lines remain ledger driven.
* If the Chart of Accounts changes significantly, review and update mappings before running large refreshes.
  {% endhint %}

***

## Related articles

* [Fleet Utilisation & Cost Modelling](/use-cases/logistics-transport-and-fleet/fleet-utilisation-and-cost-modelling.md)
* [Build a Forecast from Ticker Fundamentals](/how-tos/data-workflows-and-automation/build-a-forecast-from-ticker-fundamentals.md)
* [Variable Auto Creation](/help/xero-integration/variable-auto-creation.md)
* [Variable Type](/syntax/variables-syntax/variable-type.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.modelreef.io/help/quickbooks-integration/variable-auto-creation.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
