Description
Tillbrief sends you your store’s numbers instead of making you go and look for them. Pick daily, weekly or monthly, pick the hour, pick who gets it, and a sales brief lands in your inbox on schedule. It is the report you would otherwise open the Analytics screens for, except it arrives while you are having coffee and you can forward it to a partner or a bookkeeper without giving them a login.
Every brief leads with the figures that matter: gross sales, net sales, order count, average order value, total refunded and total coupon discount. Each one is printed next to the same figure for the period before it, with the percentage change, so you can see at a glance whether this week beat last week. Below that you get the best-selling products for the period with units and revenue, a breakdown of how many orders sat in processing, completed, on-hold, cancelled, failed and refunded, and a low-stock list so the brief doubles as a restock nudge.
The plugin is deliberately boring where it counts. It reads your orders through WooCommerce’s own wc_get_orders() API and declares High-Performance Order Storage compatibility, so the totals are right whether or not your store has moved to HPOS. It sends with wp_mail(), which means it uses whatever SMTP plugin you already trust. Tillbrief does not open a connection to anything and does not ask you to create an account.
Because a scheduled email that quietly stops is worse than no email at all, the settings page carries a delivery reliability panel: when the next run is due in your store’s timezone, what happened on the last run, how many recipients it went to, and whether wp_mail() accepted the message. If the scheduled event goes missing, the plugin notices on the next admin page load and puts it back. Deactivate the plugin and the schedule is cleared, so nothing keeps sending.
You can also see the brief before you commit to it. The Preview tab renders the exact email for any date range you choose, using the same template the scheduled job uses, without sending anything. And “Send test now” runs the real send path and reports the result, including the error message if your mail setup rejected it.
Tillbrief is free and GPL-licensed, and it creates no database tables. The brief is computed and sent entirely by your own site; the plugin contains no licensing code, no updater and no tracking.
A separate Pro version adds report profiles with their own schedules and recipients, category, customer and payment-method breakdowns, tax and shipping totals, year-over-year and rolling twelve-month comparisons, CSV and PDF attachments, Slack and webhook delivery, and a multi-store roll-up.
What is in the brief
- Gross sales, net sales, orders, average order value, refunded and coupon discount, each with the previous period beside it and the percentage change.
- The best-selling products of the period with units sold and revenue.
- An order-status breakdown: processing, completed, on-hold, cancelled, failed and refunded.
- A low-stock list built from each product’s own low-stock amount, with the store setting as the fallback.
- A legend that states how every figure is calculated, so the numbers are never ambiguous.
How it is configured
- Open WooCommerce > Sales Brief.
- Choose the frequency (daily, weekly or monthly) and the send hour in your store timezone. Weekly adds a weekday choice, monthly a day-of-month choice.
- Enter one or more recipients, separated by commas. A subject template supports the
{site},{period}and{date}placeholders. - Tick the order statuses that should count toward the sales figures. Completed and processing are ticked by default.
- Save, then press “Send test now” to see the real result of a send, or open the Preview tab to read the brief for any date range.
Hooks for developers
tillbrief_report_data— adjust or extend the computed figures.tillbrief_email_subject— change the subject line.tillbrief_email_html— change the HTML body.tillbrief_email_text— change the plain-text alternative.tillbrief_email_recipients— change the recipient list.tillbrief_order_page_size— orders loaded per page (200 by default).tillbrief_low_stock_scan_cap— maximum products scanned for the low-stock list (500 by default).tillbrief_email_html_after_headlineandtillbrief_email_html_before_footer— print extra sections in the HTML body.tillbrief_email_text_after_headlineandtillbrief_email_text_before_footer— add lines to the plain-text alternative.tillbrief_email_attachments— attach local files to the brief.tillbrief_email_sent— runs after every send with the wp_mail() result.tillbrief_admin_tabs— add a tab to the Sales Brief screen.
Upgrade to Pro
A Pro version is available with additional reporting and delivery features.
Screenshots




Installation
- Install and activate the plugin, with WooCommerce active.
- Go to WooCommerce > Sales Brief.
- Set the frequency, the send hour and the recipients, then save.
- Optionally press “Send test now” to confirm that mail leaves your site.
FAQ
-
Where can I get support?
-
Email nabbe.j82@gmail.com for support.
-
Does this work with High-Performance Order Storage (HPOS)?
-
Yes. The plugin declares HPOS compatibility and reads orders only through
wc_get_orders(), never through direct post or postmeta queries, so the figures are correct on both legacy and HPOS stores. -
My report did not arrive. What do I check?
-
Open WooCommerce > Sales Brief and read the delivery reliability panel. It shows the next scheduled run, when the last run happened, how many recipients it went to and whether
wp_mail()accepted the message, with the error text if it did not. Then press “Send test now”, which runs the same send path and reports the result. Ifwp_mail()is failing, the problem is in the mail configuration of the site rather than in the report itself; an SMTP plugin fixes that and Tillbrief uses it automatically. -
Does it need WP-Cron, and what if my site has little traffic?
-
It uses one WP-Cron event. WordPress fires WP-Cron on page visits, so a very quiet site can send its brief late. If exact timing matters, point a real server cron job at wp-cron.php and set
DISABLE_WP_CRONto true, which is a standard WordPress setup that this plugin needs no configuration for. -
What does “weekly” cover?
-
The seven complete days ending yesterday, not a calendar week, because you choose the weekday the brief is sent on. A monthly brief covers the previous calendar month, and a daily brief the previous day.
-
Which orders count toward the sales figures?
-
Completed and processing by default. You can change that on the settings page to any set of WooCommerce order statuses, so the totals match how you book revenue. The order-status breakdown always counts every status regardless of that setting.
-
How is “net sales” calculated?
-
Net sales are gross sales minus refunds, tax and shipping. Gross sales are the order totals as the customer was charged them. Both definitions are printed as a legend in the email, so you never have to guess.
-
Can I send different reports to different people?
-
Every recipient on the list receives the same brief.
-
Does the plugin send my data anywhere?
-
No. Every figure is computed on your own server from your own orders and delivered by your own mail setup, and the plugin makes no external HTTP requests. The Pro version handles its licence through the Freemius SDK, with a skippable opt-in, and its Slack, webhook and multi-store roll-up connections contact only the addresses you enter.
-
Will it slow down my store?
-
The report runs once per scheduled period in the background, not on front-end page loads, and it creates no database tables. Orders are read in pages of 200 and the low-stock scan is capped, so a large catalogue cannot turn the brief into a long request.
-
What happens when I deactivate or delete the plugin?
-
Deactivating clears the scheduled event and keeps your settings. Deleting the plugin removes its options, its cached preview and the scheduled event.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Tillbrief Sales Report Emails for WooCommerce” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Tillbrief Sales Report Emails for WooCommerce” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.1.7
- Added: a Pro tab on the Sales Brief screen with the available Pro features, price and product-page link.
- Added: one contextual Pro hint beside the attachment option on the settings screen.
- Changed: the one-time review request now appears after ten successful scheduled briefs.
1.1.6
- Fixed: translation text domains and the review link now match the confirmed WordPress.org slug, tillbrief-sales-report-emails.
1.1.4
- Removed: the optional Plugin URI header pending confirmation of the publishing URL.
- Fixed: the Pro SDK bootstrap now initializes and announces its instance within the function guard and handles a second edition without repeating initialization.
- Changed: anonymous SDK mode is limited to factory tests; customer sites retain the skippable opt-in.
- Updated: the neutral Pro information link and support contact.
1.1.3
- Added: the Plugin URI header, pointing at the plugin’s own page.
- Changed: the translatable strings now use the text domain that matches the plugin’s page on WordPress.org, so the translations published there are applied.
- Fixed: the “Leave a review” link in the review notice used the wrong permalink and led nowhere.
- Changed: the optional Pro version loads its licensing library only when that library is not loaded yet, so a second copy of it on the site cannot cause a fatal error.
1.1.2
- Changed: the free plugin no longer bundles the Freemius SDK. Licensing now lives in the Pro version only, so the free plugin contains no updater and no opt-in screen.
- Changed: deleting the free plugin removes its options, cached preview and scheduled events through the WordPress uninstall hook.
1.1.1
- Changed: the plugin now declares WooCommerce as a required plugin, so WordPress checks that WooCommerce is installed and active before Tillbrief can be activated.
- Changed: the “WooCommerce is required” notice is shown on the Plugins screen only, with a link to install or activate WooCommerce, instead of on every admin page.
- Removed: the Plugin URI header.
1.1.0
- Added: licensing for the optional Pro version through the bundled Freemius SDK, with a skippable opt-in. The free plugin keeps every feature it had.
- Added: developer hooks for extra email sections, plain-text lines, attachments, an after-send action and extra admin tabs.
- Changed: deactivation and uninstall also remove the scheduled events and options of Pro report profiles, so nothing is left behind when a licence ends.
1.0.0
- First release.
- Daily, weekly and monthly scheduling with a send hour, weekday and day-of-month in the site timezone.
- Headline figures with the previous period beside them and the percentage change.
- Top products, order-status breakdown and a low-stock list based on each product’s own low-stock amount.
- Comma-separated recipients, a subject template with
{site},{period}and{date}, and an optional from name. - Delivery status panel with the next run, the last run and a self-heal for a lost cron event.
- Preview tab that renders the exact email for any date range without sending.
- Multipart email with a text/plain alternative, and HPOS compatibility declared.
