Skip to content
Getting started

Importing your data

Bring in revenue, expenses, and clients with a CSV so your insights are accurate from day one.

The more history Dudley has, the smarter your insights and projections become. You can import existing data with a CSV, or enter it manually — whatever is easiest for you.

Bulk import is available for revenue, expenses, and clients. Inventory and hours are entered in their own sections (and inventory can also update as a side effect of revenue and expense imports). Importing is available to owners and admins.

Before you import

If you want expenses tied to stock purchases, or revenue line items that deduct inventory and calculate cost of sales, set up suppliers and inventory items first.

  1. Add your material providers (suppliers) under Inventory → Providers.
  2. Add your inventory items under Inventory → Items, optionally linking each to a provider and setting unit cost and starting quantity.

Without those records in place, imports can still create revenue and expense entries — but Dudley won’t be able to match them to inventory or track cost of goods. See managing inventory for the full setup.

Where to import

There isn’t a single Import page. Open Settings, then choose the matching tab:

  • Settings → Revenue → Import Revenue
  • Settings → Expenses → Import Expenses
  • Settings → Clients → Import Clients

The import flow

Every import follows the same pattern:

  1. Optionally download the CSV template so your columns match what Dudley expects.
  2. Upload your file.
  3. Review the preview — fix or remove rows that need attention.
  4. Confirm to create the records.

Rows with errors are skipped until you fix them. You can remove rows from the preview before confirming.

Expenses: structured or AI

Expense import offers two methods:

  • Structured Import — use Dudley’s template with the expected column names.
  • AI Import — upload any CSV and Dudley maps the columns for that upload. Matching to suppliers or inventory items is suggested when possible.

AI column mapping applies to that upload only; it isn’t saved for next time.

Revenue tips

  • Use one row per revenue event and leave external_id blank for a simple sale.
  • For events with multiple line items, repeat the same external_id across those rows.
  • Common header aliases (for example, amount or date) are recognized automatically.
  • Include inventory item columns when a sale should reduce stock and record cost of sales.

Clients tips

  • Required fields are first name and last name.
  • Email, phone, and custom ID must be unique. If a row conflicts with an existing client, that row is blocked rather than updating the existing record.
  • Extra rows with the same identity can attach per-item price overrides.

Enter data manually

Prefer to start fresh? Add entries by hand from Revenue, Expenses, Inventory, Hours, and Clients using each section’s Add button.

Tips for clean data

  • Import at least three months of history for meaningful trends.
  • Keep categories consistent so breakdowns stay tidy.
  • Re-uploading the same revenue or expense file creates new records — it does not de-duplicate. Double-check before confirming a second import.

Once your data is in, try asking Teddy AI about revenue, expenses, clients, or hours.