Goodstay includes six built-in reports — Revenue, Forecast, Occupancy, Customers, Seasonal, and Regulatory — under Analytics in the sidebar. The historical reports include a period selector with previous-period comparisons (Revenue and Occupancy offer Week / Month / Quarter / Year / All Time; Customers starts at Month; Seasonal offers Quarter / Year / Last 2 Years / All Time). The Revenue Forecast looks ahead instead of behind.
Revenue Report
Go to Analytics → Revenue. Select a date range. The report shows:
- Headline cards: Total Revenue, Avg Invoice, Avg Stay Length, and Outstanding
- Revenue by Category — Revenue grouped by line-item category: Boarding, Board & Train, Daycare, Grooming, Add-ons, and Other
- A Revenue Over Time trend chart (granularity follows the selected period)
- Top customers by revenue
- Payment method breakdown (cash, check, credit/debit card, bank transfer, Stripe, Square, other)
- Payment processor breakdown — See which payments came through Stripe vs Square vs manual recording
- Daycare Revenue Section — Boarding vs. daycare revenue split, package vs. drop-in breakdown, revenue per daycare day, and average dogs per day
- Grooming Revenue Section — grooming revenue with a previous-period badge, average revenue per appointment, average appointments per day, top service, and a top-5 Revenue by Service ranking
Every service's headline figure is computed on the same basis as Revenue by Category (line items, excluding tax and add-ons), so the same service never shows two different totals in different parts of the report.
Picking a Past Quarter
When the Quarter period tab is active, a dropdown appears beside the period tabs listing the last 8 quarters (e.g., "Q1 2026 (Jan–Mar)"). Pick one to reload the report for that quarter. The current quarter runs quarter-to-date; a completed quarter covers its full three months, with the previous-period badges comparing against the quarter before it. The selection carries into the PDF and Print exports — built for pulling a finished quarter's numbers at filing time.
Sales Tax Collected
If you collect sales tax, the Revenue report includes a Sales Tax Collected section summarizing tax on paid invoices in the selected period:
- Total Sales Tax — with a previous-period comparison badge
- Total Taxable Sales — the sales base those tax dollars were collected on, so you can see how much of your activity was actually taxed (useful when some categories or services are exempt)
- Grooming Tax — the grooming slice, with its own base noted beneath it ("On $X taxable grooming sales")
- Taxable Sales & Tax by Category — each category's taxable sales base alongside the tax collected on it, across Boarding, Board & Train, Daycare, Grooming, Add-ons, and Other. A category appears here whenever it collected tax in the period, so the base always reconciles with the tax figures.
Tax figures follow your configured rate and taxable categories (Settings → Payments → Tax Settings — see Invoicing). Pre-stay deposit invoices are excluded, matching how the rest of the report recognizes revenue. Facilities that don't collect tax won't see this section. The PDF export mirrors all of this — including a Taxable Sales column in the category table — so your filing paperwork matches the screen.
Tip: Combine the past-quarter picker with this section to pull a completed quarter's sales tax for your filing.
Custom Date Ranges
Beside the Week / Month / Quarter / Year / All Time tabs there's a Custom tab. Pick a From and To date and click Run Report to run the Revenue report over any span — the whole final day counts, in your facility's time zone, so a payment taken at 4 PM on the last day is included. Quick ranges shortcuts (last month, the last quarter, year-to-date, last year) fill the pickers in one click. A backwards range is swapped for you, and an unreadable date falls back to the current month rather than erroring.
Cash vs. Accrual Basis
The Revenue report can run on either accounting basis — switch with the Cash / Accrual toggle next to the period tabs:
- Cash counts an invoice in the period its money landed (by paid date).
- Accrual counts it in the period it was billed (by invoice date).
The whole report moves together when you flip the basis — revenue, categories, the chart, and the tax section all read the same population, so the tax box always agrees with the totals above it. The period line under the header notes which basis is active ("by paid date (cash)" / "by invoice date (accrual)").
Accountant Summary
For handing numbers to your bookkeeper, switch the Detailed / Accountant view toggle to Accountant. Instead of charts, you get figures that tie out by construction:
- Summary — Taxable sales, Non-taxable sales, Sales, tax collected (or billed, on accrual), and Total. Sales + tax always equals Total.
- Sales by Category — each service's sales, taxable sales, and tax, with Discounts as its own (negative) row and an Uncategorized remainder when an invoice has no line items — so the category rows sum to Sales. Applied account credit is tender, not revenue, so it never appears as a category.
- Payments Received — counted on the date received, so this total won't always match Sales above.
- Invoices — every invoice in the period with its sales, tax, total, paid amount, and status.
The accountant view has its own PDF and CSV download buttons. The CSV always exports the accountant figures (one row per invoice plus a TOTAL row), whichever view is on screen, and accrual exports get -accrual in the filename so they never overwrite their cash twin.
Occupancy Report
Go to Analytics → Occupancy. Shows:
- Stat cards: Today's Occupancy, Avg Occupancy, Peak Occupancy, and Current Stays
- Per-space breakdown with utilization bars
- Date range comparison with previous-period badges
- Peak days ranked list
- Daycare Utilization Section — Average daycare utilization %, peak day detection, high-capacity day count, day-of-week utilization bar chart, and actionable recommendations. Color-coded gauges alert you when capacity is consistently high.
- Grooming Utilization Section — utilization against your grooming stations (5 slots each), peak day, total appointments, and busiest time-slot analysis
Customer Report
Go to Analytics → Customers. Shows:
- New clients added during the period
- Returning vs. new customers breakdown (donut chart)
- Your top clients by revenue
- Pets-per-customer and pet species breakdown
- Cumulative customer growth chart
- Daycare Customer Insights — Customer type split (recurring vs. drop-in), package utilization, top 5 customers by visit count, and churn alerts for inactive recurring customers
- No-Show Reporting — Total no-shows, no-show rate, service-type split, policy breakdown (charged/deducted/waived), and repeat offender table
- Grooming Customer Insights — Customers who only groom vs. customers who board + groom (cross-sell opportunity identification), grooming visit frequency, top grooming customers by revenue, and cross-sell opportunities for boarding customers who haven't tried grooming
Seasonal Report
Go to Analytics → Seasonal. Shows:
- Reservation volume by month (bar chart)
- Day-of-week heatmap grid
- Identifies your busiest periods (Peak Month, Busiest Day, Peak Weeks)
- Average stay length by month
- Peak weeks ranking
- Multi-series space-type seasonality chart across every space type you own (boarding types, daycare, grooming)
- Useful for planning staff schedules and marketing campaigns
Marketing
Go to Analytics → Marketing for outreach lists — who to get in touch with this month, and why. The first list is Birthdays: every pet with a birthday in the chosen month, in day-of-month order.
- Each row shows the pet (with a Today badge on the day itself), the birthday and the age they're Turning, and the owner's name, email and phone.
- Message opens a new conversation with that owner, ready for a birthday note or an offer.
- The arrows step to the previous or next month; Back to this month returns to your facility's current month.
- Only known birthdays are listed — a pet whose age was only estimated isn't — and archived and deceased pets are left out.
- Print gives a clean copy of the month's list.
Revenue Forecast
Go to Analytics → Forecast. The forecast projects income from every non-cancelled reservation overlapping the range and breaks it out by week. Use it to anticipate cash flow, plan staffing, and spot quiet weeks before they arrive.
- Range tabs: 2, 4, 8, or 12 weeks ahead.
- Summary cards: Total projected revenue, average per week, and reservation count for the selected range.
- Per-week cards: Each week shows a service-type badge breakdown (Boarding / Board & Train / Daycare / Grooming) and lists the individual reservations contributing to that week with pet name, dates, assigned space, and revenue contribution.
- The current week is highlighted with a teal ring and a Current badge.
Boarding stays that span multiple weeks are pro-rated by night, so revenue lands in the right week even for long stays.
Regulatory Reports
Go to Analytics → Regulatory — the hub for state compliance documents. Today it offers the PA Kennel Log (ADLEB-7): a per-day log of every animal housed, printable on screen and downloadable as a dated PDF via Download PDF. More state formats are planned — the page invites you to tell us what your state requires.
Printing Reports
Every report page except the Forecast includes a Print button in the top-right corner (the Revenue report also offers PDF and CSV downloads). Clicking Print opens a print-optimized layout:
- The sidebar and navigation are hidden
- Charts and tables are reformatted for paper
- A header with the facility name, report title, and print timestamp is added automatically
This is useful for posting weekly summaries in your break room, sharing with business partners, or filing paper records.
Tip: The Boarding Roster also has its own print button for daily printouts.