---
title: "saveinstance"
description: "Writes a limited Luau representation of the current DataModel hierarchy."
---

```lua
saveinstance(filename: string? = "savefile.lua"): boolean
```

---

## Aliases

None.

---

## Arguments

<ParamField body="filename" type="string" default={"\"savefile.lua\""}>
  The output filename.
</ParamField>

---

## Returns

<ResponseField name="saved" type="boolean">
  True when the output file was opened and written; false if it could not be opened.
</ResponseField>

Also reads FileName from a second-argument options table, e.g. saveinstance(game, {FileName = "snapshot.lua"}). The first Instance argument is not used as a subtree root. This is not a full RBXL/RBXM exporter; inspect the serialization contract below.

**Related types:** [Instances types & behavior](/reference/instances/types).

---

## Example

```lua
print(saveinstance("docs-example-save.lua"))
```
