---
title: Make Spreadsheet
description: Turn a list of records into a downloadable CSV in an Edgaze workflow, ready for Excel, Google Sheets, QuickBooks or Xero.
source: https://www.edgaze.ai/docs/builder/nodes/spreadsheet
section: builder
---
# Make Spreadsheet

> Turn a list of records into a downloadable CSV in an Edgaze workflow, ready for Excel, Google Sheets, QuickBooks or Xero.

**Audience: Workflow creators.**

## Overview

Turn a list of records into a table people can download as a CSV.

Use this block when its responsibility is clear in the graph. Give it a name that describes the work it performs, then test it with representative input before publishing.

## Working examples

These are complete starting points, not decorative diagrams. Every graph is also available in the main template library and is checked by the workflow compiler.

### 1. Turn a statement into a CSV

**You will build:** Extract a transactions list with date, description, amount and category..

Gives the person rows they can import into their accounting software. Columns are fixed in the step, so every download has the same layout.

```docsgraph
block-spreadsheet-turn-a-statement-into-a-csv
```

[Open this template](/templates/block-spreadsheet-turn-a-statement-into-a-csv) and adapt the labels, prompts, or credentials to your own workflow.

### 2. Export a contact list

**You will build:** Extract a contacts list with name, company, email and phone..

Turns messy pasted text into a clean list for a CRM import. Missing fields stay empty instead of being invented.

```docsgraph
block-spreadsheet-export-a-contact-list
```

[Open this template](/templates/block-spreadsheet-export-a-contact-list) and adapt the labels, prompts, or credentials to your own workflow.

### 3. Tabulate survey answers

**You will build:** Extract a responses list with respondent, rating and main_theme..

Makes free-text answers sortable and filterable. Every response becomes exactly one row.

```docsgraph
block-spreadsheet-tabulate-survey-answers
```

[Open this template](/templates/block-spreadsheet-tabulate-survey-answers) and adapt the labels, prompts, or credentials to your own workflow.

## What the person running it gets

Connect Make Spreadsheet to a Result. The run page shows the rows as a table with a **Download CSV** button, and Copy puts the CSV on the clipboard. Through the API the result is a table object with `columns` and `rows`.

## Choosing rows and columns

Connect a step that returns a list, such as Generate Text with **Return data as fields** and a list like `transactions`. Make Spreadsheet picks the list for you; change it under **Rows** if the data has more than one.

Under **Columns**, every field of the list is shown with its type. Untick the ones you do not want, type over a header to rename it, and use the arrows to reorder. The preview shows the first rows as they will download: from your last test run when there is one, otherwise from example values.

Text that would run as a formula when the file is opened, such as text starting with `=`, is made safe automatically.

## Ports

- **Input: Records** (`input`): `any`, required, single.
- **Output: Spreadsheet** (`out`): `object`, optional, single.

## Inspector

- **List to use (optional):** key `list`; text; default: `""`; Leave empty to use the first list of records in the data..
- **Columns (optional, one per line):** key `columns`; textarea; default: `""`; Write field: Header. Leave empty to include every field..
- **File name:** key `filename`; text; default: `"results"`; Example: results.
- **spreadsheet editor:** manages `list`, `columns`, `filename` with edit, preview support.

## Behavior

- **Input requirement:** Required input ports: `input`.
- **Execution:** Handled by the handler using `spreadsheet`.
- **Timeout:** No node-level timeout is defined.

## Cost

Uses workflow compute and may contribute to the run's compute cost.

## Security

- No credentials are used.
- The node has no external side effects.

## Retry

The runtime may retry this node according to the compiled execution policy.

## Production checklist

- Test the happy path and one malformed or empty input.
- Keep credentials out of prompts and published graph configuration.
- Set a timeout that matches the operation's side effects.
- Name the final result so a runner can tell what success looks like.
