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

# Categorizing Transactions

> Learn how to organize transactions with categories for better reporting

Categories help you organize transactions for accounting, tax reporting, and financial analysis. This guide covers everything from basic categorization to auto-categorization.

## Why Categorize?

Categorized transactions enable:

* **Better reports** - See spending by category
* **Tax preparation** - Group deductible expenses
* **Financial analysis** - Understand where money goes
* **Cleaner exports** - Professional CSV exports for accountants

## Setting Up Categories

Categories are managed from the **Transactions** page. New accounts start with no categories — create the ones that match your workflow.

<Steps>
  <Step title="Go to Transactions">
    Click **Transactions** in the sidebar.
  </Step>

  <Step title="Open the category manager">
    Click **New Category** in the toolbar.
  </Step>

  <Step title="Name your category">
    Enter a descriptive name:

    * "Client Revenue"
    * "Operating Expenses"
    * "DeFi Yield"

    <Tip>
      Be specific enough to be useful, but not so specific that you have dozens of rarely-used categories.
    </Tip>
  </Step>

  <Step title="Pick an icon">
    Choose an emoji icon for quick visual recognition in tables and charts.
  </Step>

  <Step title="Save">
    Click **Create** to add the category. Existing categories can be renamed or deleted from the same dialog.
  </Step>
</Steps>

### Recommended Categories

**For personal use:** Income, Bills, Shopping, Savings, Transfers

**For business use:** Revenue, Payroll, Software & Tools, Marketing, Operations, Equipment

Categories are a flat list — keep names broad and use transaction descriptions for the specifics.

## Manual Categorization

<Steps>
  <Step title="Open Transactions">
    Click **Transactions** in the sidebar.
  </Step>

  <Step title="Find the transaction">
    Use the search box or filters to find the transaction you want to categorize.
  </Step>

  <Step title="Select a category">
    Pick a category directly in the transaction's row, or open the transaction details and select it there.

    <Check>
      The category is saved immediately.
    </Check>
  </Step>
</Steps>

<Tip>
  Filter by **Uncategorized** in the filter drawer to work through everything that still needs a category.
</Tip>

## Categorizing Many Transactions at Once

Chainbook doesn't have checkbox-style bulk editing — instead, use **contacts with default categories**, which is faster and keeps working automatically:

1. Go to **Contacts** and create a contact for the address (e.g., "Client A")
2. Set the contact's **Category** field (e.g., "Revenue")
3. Enable **Auto-categorize** (see below)

All uncategorized transactions with that contact get the category, and future transactions are categorized as they arrive.

## Auto-Categorization

Auto-categorization assigns categories based on your contacts' default categories.

### How It Works

1. **Contacts** — each contact can have a default category
2. **Backfill** — when you enable auto-categorization, uncategorized transactions matching your contacts get the contact's default category
3. **Ongoing** — new transactions from those contacts are categorized automatically
4. **Manual wins** — categories you assigned by hand are never overwritten

### Enabling Auto-Categorization

<Steps>
  <Step title="Go to Settings → Preferences">
    Open **Settings** and switch to the **Preferences** tab.
  </Step>

  <Step title="Enable Auto-categorize">
    Turn on the **Auto-categorize** toggle. It's also available directly on the Transactions page.

    <Note>
      Auto-categorization only does something once your contacts have default categories set — set those up first.
    </Note>
  </Step>
</Steps>

### Disabling Auto-Categorization

Turn the toggle off in **Settings → Preferences**.

<Note>
  Disabling removes the categories that were auto-assigned. Manually assigned categories remain.
</Note>

## Category Workflows

### Weekly Review Workflow

Maintain clean data with a weekly review:

1. **Filter uncategorized** - Use the Uncategorized filter to find transactions without categories
2. **Add contacts** - Label new addresses and set default categories
3. **Categorize the rest** - Assign categories to one-off transactions

### Month-End Workflow

Prepare for reporting:

1. **Review all transactions** - Filter by last month
2. **Ensure all categorized** - The Uncategorized filter should come up empty
3. **Verify accuracy** - Check category assignments make sense
4. **Export** - Download categorized data for accounting

## Using Categories in Reports

### Dashboard Charts

The **By Categories** donut chart on the Dashboard shows how transactions distribute across your categories for the selected period. Click a segment to jump to those transactions.

### Filtered Views

Filter transactions by category:

1. Go to **Transactions**
2. Open the **Filters** drawer
3. Select one or more categories
4. View all matching transactions

### Exports

Categories appear in CSV exports:

| Date | Amount | From | To | Category |
| - | - | - | - | - |
| 15.01.26 10:30 | +1000.00 USDT | Client A | My Wallet | Revenue |
| 14.01.26 09:12 | -50.00 USDT | My Wallet | Vendor | Expenses |

Transactions without a category export as "Uncategorized".

## Troubleshooting

<AccordionGroup>
  <Accordion title="Auto-categorization isn't doing anything">
    Auto-categorization works from contact default categories:

    * Check that your contacts have a category set
    * Make sure the transaction's address matches a contact
    * Note that it never overwrites categories you assigned manually
  </Accordion>

  <Accordion title="I have too many categories">
    Consolidate by:

    * Using broader category names
    * Keeping 10-20 categories maximum
    * Using descriptions for specifics instead
  </Accordion>

  <Accordion title="How do I recategorize many transactions?">
    Set or change the default category on the relevant contact, then re-enable auto-categorization — it fills in uncategorized transactions. Transactions that already have a category need to be changed individually.
  </Accordion>

  <Accordion title="Categories aren't showing in export">
    Ensure:

    * Transactions have categories assigned
    * Your CSV viewer is displaying all columns
  </Accordion>
</AccordionGroup>

## Best Practices

<CardGroup cols={2}>
  <Card title="Be Consistent" icon="equals">
    Always use the same category for the same type of transaction.
  </Card>

  <Card title="Keep It Simple" icon="list">
    10-20 categories is usually enough. Too many creates confusion.
  </Card>

  <Card title="Lean on Contacts" icon="address-book">
    Contacts with default categories do the categorizing for you.
  </Card>

  <Card title="Use Descriptions" icon="pen">
    Add transaction descriptions for details that don't fit in categories.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.