How to Create a Monthly Expense Report in Looker

Cody Schneider

Tracking your company’s monthly expenses shouldn't require messy CSV exports and convoluted pivot tables. A well-built expense report transforms raw spending data into clear, actionable insights, helping you spot trends, control costs, and make smarter budget decisions. This guide will walk you through creating an automated and insightful monthly expense report directly in Looker, from organizing your data to building a shareable dashboard.

Before You Ever Open Looker: Getting Your Data in Order

Every great report is built on a foundation of clean, reliable data. Before you start building visualizations, it's essential to understand and prepare the information your expense report will use. This simple step can save you hours of frustration later on.

Identify Your Data Source

First, where does your company’s spending data actually live? For most businesses, it’s spread across a few key places:

  • Accounting Software: Tools like QuickBooks, Xero, or Stripe are often the primary source of truth for all financial transactions.

  • Expense Management Tools: If your team uses platforms like Expensify, Ramp, or Divvy for travel and incidental expenses, this is a separate and crucial data source.

  • Spreadsheets: Many small teams or startups start by tracking expenses manually in Google Sheets or Excel. While less ideal, this data can still be used if it’s structured correctly.

For your expense report in Looker to be accurate, this data needs to be piped into your data warehouse (like BigQuery, Snowflake, or Redshift) where Looker can access it. This step is typically handled by a data engineer, but it's important for you to know which source system contains the expense data you need to analyze.

Key Data Fields for Your Report

To build a useful expense report, you need to ensure your data table contains a few core fields. When you talk to your data team, make sure these columns are available in your Looker "Explore":

  • Transaction Date: The exact date an expense occurred. This is fundamental for building a monthly report.

  • Amount: The total cost of the transaction in a single currency.

  • Category: A label that classifies the expense (e.g., "Software & Subscriptions," "Office Supplies," "Marketing & Advertising," "Travel"). Good categorization is the key to meaningful analysis.

  • Vendor/Payee: The name of the company or individual you paid (e.g., "Amazon Web Services," "Staples," "Delta Airlines").

  • Department or Team: If applicable, the internal team that incurred the cost (e.g., "Sales," "Marketing," "Engineering").

  • Employee Name: For tracking expenses submitted by individual team members.

If your data is messy or inconsistent (for example, "Zoom" and "Zoom Video Communications" are listed as separate vendors), it's best to clean it up in the data source or work with your data team to create a standardized version in your data warehouse. Clean data will make your Looker report infinitely more accurate and easier to manage.

Step 1: Start with a New Look

In Looker, a "Look" is a single data table or visualization - the basic building block of any dashboard. We'll start by creating a simple table that shows all expenses for the last month. This will serve as the foundation for our other charts.

  1. Navigate to an Explore: In Looker, an "Explore" is a curated starting point for analyzing a specific dataset. Your data team will have created these. Find the one related to financial data, likely named something like "Transactions," "Expenses," or "Financials."

  2. Select Your 'Dimensions' and 'Measures':

  • On the left-hand panel, you'll see a list of available data fields, separated into Dimensions (descriptive fields, like names and dates) and Measures (numeric calculations, like counts and sums).

  • Select the core dimensions you identified earlier: Transaction Date, Vendor, and Category.

  • Select the primary measure: Amount (this will likely be a "Sum of Amount" or "Total Spending" measure).

  1. Run the Query: Click the "Run" button. You should now see a data table with your raw expense data for the default timeframe.

Step 2: Filter for the Right Timeframe

Right now, your look is probably showing data from all time. We need to narrow this down to focus specifically on the last calendar month.

  1. Add a Date Filter: Find the "Filters" section at the top of the page. Select the Transaction Date dimension as the field to filter by.

  2. Set the Timeframe: The filtering options in Looker are incredibly flexible. For a standard monthly report, you have a couple of great choices:

  • Select "is in the past": Choose "1" and "complete months". This will always show you the previous full calendar month. For example, if you run the report in mid-October, it will show data for all of September. This is perfect for automated monthly reporting.

  • Select "is in month": Manually pick a specific month if you need to look at historical data.

  1. Filter Out Income (If Necessary): Sometimes, a transaction table will include both expenses and revenue/refunds. If so, add another filter on your Amount measure. Set it to "is greater than" and enter "0" to ensure you are only seeing money going out.

Run your query again. The data table should now be limited to only the expenses from the last complete month. Now we're ready to visualize this!

Step 3: Choose Visualizations That Tell a Story

A table of numbers is a start, but charts make insights easy to spot at a glance. Let’s create a few key visualizations from our data. You can toggle between different chart types in the "Visualization" tab.

Chart 1: Spending by Category (Bar Chart)

This is arguably the most important chart for an expense report. It answers the question, "Where is our money going?" A bar chart is generally better than a pie chart here, as it's easier to compare values accurately.

  • Dimensions: Keep Category.

  • Measures: Keep Sum of Amount.

  • Visualization Type: Choose "Bar Chart".

  • Sort: In the data table, click on the "Amount" header to sort it from highest to lowest so your bar chart is ordered neatly.

  • Save Your Work: Save this chart as a new Look. Give it a clear name like "[Monthly Report] Spending by Category".

Chart 2: Top Vendors by Spend (Table)

This visualization helps you identify your biggest vendors, which is useful for budget planning and potential contract negotiations.

  • Change Dimensions: Remove Category and add Vendor.

  • Measure: Keep Sum of Amount.

  • Visualization Type: Choose "Table". This is perfectly fine for a simple ranking.

  • Set up the Table: Make sure the table columns are sorted by amount, descending. You can also head into the ‘Edit’ options for the visualization and set a 'Row Limit' to something like 20, to only show the top 20 vendors.

  • Save this Chart: Save this again as a new Look, titled "[Monthly Report] Top Vendors by Spend."

Chart 3: Daily Expense Trend (Line Chart)

A line chart can show you the cadence of spending throughout the month. Are there certain days when large bills are paid or teams are logging more expenses?

  • Dimension: Change your dimension from Vendor back to Transaction Date. By default, Looker will probably group this down by the specific date. This is what we want.

  • Measure: Keep Sum of Amount.

  • Visualization Type: Select "Line Chart".

  • Save this Chart: Save this look as "[Monthly Report] Daily Spending Trend."

Step 4: Combine Your Looks into a Dashboard

Now that you have your individual charts (as saved Looks), it’s time to assemble them into a cohesive dashboard. A dashboard provides a single, high-level view of your monthly expenses.

  1. Create a New Dashboard: Navigate to your folder, click "New," and select "Dashboard." Give it a clear title, like "Monthly Marketing Expense Report - [Month, Year]".

  2. Add Tiles to Your Dashboard: Click "Add Tile" and choose the option to "Add Look." Select the three Looks you just created ("Spending by Category," "Top Vendors by Spend," and "Daily Spending Trend"). Arrange them on the dashboard in a logical way, perhaps with the most important chart (Category Spend) at the top.

  3. Add a Total Expense Number: Let’s add a single value visualization for the most important number: total spending. Create one final Look with just the Sum of Amount measure and the date filter. In the visualization settings, select "Single Value." Save it and add it to your dashboard. Place this right at the top so it's the first thing people see!

Step 5: Automate and Share Your Report

The true power of using a tool like Looker is the ability to set it and forget it. You shouldn't have to manually recreate this report every month.

  1. Schedule Dashboard Delivery: On your dashboard, find the settings gear and select "Schedule delivery." Here, you can configure the report to automatically be sent out via email or Slack.

  2. Set the Cadence: Set the recurrence to "Monthly," select a specific day (like the 2nd of the month), and choose a time. This ensures your stakeholders will receive a snapshot of last month’s spending right in their inbox without you lifting a finger.

  3. Choose Recipients: Add the email addresses of your manager, the finance team, or any other stakeholders who need to see this report.

  4. Share a Live Link: For team members with Looker access, you can simply share the direct link to the dashboard. This allows them to interact with the data themselves, hover over charts for more details, and even dig deeper if they have questions.

Final Thoughts

Moving your monthly expense reporting from a spreadsheet into Looker shifts the process from a time-consuming manual task to a strategic, automated system. By organizing your data correctly and building clear visualizations, you empower your team with the financial insights needed to operate more efficiently and make data-informed decisions.

This process highlights the power of dedicated BI tools but also shows the learning curve - you still need to understand Explores, measures, and how to configure charts. This is exactly why we created Graphed. After easily connecting your data sources, you can ask for a report in plain English, like "Show me a dashboard of our expenses by category for last month." We instantly build the analysis for you, turning hours of navigating menus into a simple 30-second conversation that delivers a shareable, real-time dashboard.