Sales Trends and Forecast v.17

The tool to calculate sales trends and make predictions for future sales statistically


The tool does not require extra dependencies beside standard Odoo apps.
Current version:


If future sales are a black box for you, you might hardly make profitable decisions right now. How many items to purchase? Which products require aggressive advertising? Where are the best markets for us for the next year? Luckily, statistics might help if you have enough historical data. This Odoo tool lets you generate sales by periods and apply statistical methods to scientifically forecast further periods.

The scientific approach to forecasting

The app assumes applying statistical methods to calculate historical sales trends and make a forecast. Experiment with statistical models and parameters to achieve the most reliable prediction. Leverage the proven statsmodels methods

Innovative data analysis interface

The tool introduces a special interface to instantly calculate sales series. Flexibly switch between different reports and update settings in a few clicks. Control data in pivot, graph, or chart views. Export series as an Excel tabled

Focused analysis

Shrink considered order/quotation lines flexibly or analyze global company sales. Group data into various series

Topical data

Apply time frames for historical data and work with intervals that are of interest to your industry. Work with past and future periods.

Sales forecast report

Flexible report configuration

  • Introduce as many analytic reports as you need. Each report is based on Odoo's sales lines' data
  • Keep reports to re-use them, instantly switch between reports, or experiment with real-time changes without saving those
  • Show historical and forecast series as a table, line graph, or bar chart, or export data as an Excel table
  • Apply as many and as different statistical models as you want to check. Each stats model will peer its own data series and prediction if the latter is possible. See also the section "Statistical models"
  • Define the data periods under analysis by entering a start and end. Only sales within this interval will be included in the series
  • Split data series into years, quarters, months, weeks, and days depending on seasons assumed in your industry or business area
  • Select an unlimited number of periods to predict future periods or check hypotheses
  • Grant the right to forecast tools for any salesperson (the group Sales > Sales Forecast)
  • Filter sales data by product categories, product templates, product variants, sales teams, salespersons, countries, industries, specific customers, and companies (for multi-company regimes). Introduce your own criteria based on Odoo's dynamic domain constructor, so shrink analysis by any sale line storable fields
  • Analyze a sales total, an untaxed total, an untaxed total to invoice, gross weight, or volume
  • Introduce a few data series simultaneously with grouping by a product category, a product template, a product variant, an order state, a team, a salesperson, a country, an industry, a customer, or a company
  • Hide/show general statistical measurement of series: count, mean, standard deviation, minimum, maximum, 25%, 50%, and 75% factors
  • Optionally compare predicted values to real historical data if any. See also the section "Hypothesis Testing"
  • Make figures human readable (e.g. 192,217 as 200k) or show them precisely.
Bar graph of the sales forecast
Sales report settings
Sales forecast: xlsx

Statistical models

  • The tool allows calculating sales trends based on predefined statistical models introduced by the Python package statsmodels
  • Methods have different complexity, and their own unique parameters, and might be suitable for a definite market or a specific business. The final choice of the model and related statistical parameters is only up to you. Nobody except you can better understand tendencies in your company sales, and hence which methods and factors should be applied
  • Available statistical models are Autoregression (AutoReg), Autoregressive Distributed Lag (ARDR), Autoregressive Integrated Moving Average (ARIMA), Seasonal Autoregressive Integrated Moving-Average (SARIMAX), Holt Winter's Exponential Smoothing (HWES), Simple Exponential Smoothing (SES)
  • For deep details about what each stats model means and which parameters might be applied, look through the tab "Help" on the stats model form
  • Keep and use an unlimited number of stats models with various parameters. Check, compare, and update those flexibly through the forecast manager interface
  • Often models with specific parameters will not result in any prediction or the prediction will be unrealistic. This is normal, only a deep understating of trends and much experimenting might give a viable forecast for your specific case.
Statsmodel settings
Statsmodel settings
Stats model: SARIMAX example

Hypothesis Testing

  • To get a proper prediction, it is usually needed to experiment a lot with statistical models and introduced parameters. To check the results, the app allows compare forecast data with real values
  • To check a certain assumption with historical values, you may make an analysis and prediction for some past periods, and turn on the setting "Hypothesis testing"
  • For example, you have sales orders from 2017 to 2022. Then, you can get report historical data for 2017-2021, and make the forecast for 12 months of 2022. In this way, you will get the prediction for the interval for which you already have actual values. By comparing forecast and actual values, you can decide whether a chosen model and factors are good enough
  • The app allows checking the hypotheses for a few stats models simultaneously. In this way, it is possible to reveal what is actually the most appropriate, or whether experimenting should be continued.
Statsmodels: test assumptions
Sales demand: line chart

Usage requirements

  • To reveal trends, there should be enough historical sales data. It is senseless to make a forecast based on the last 5 days of sales since no trend cannot be retrieved. Take into account that data should be enough for the chosen filters and for each grouped series
  • There should be not only enough sales lines but also there should be some actual trends. Chaotic data will not result in reliable predictions. To use the app, you should understand which assumptions (e.g. seasonal changes) you check
  • To use the app, you either should have a clear understanding of how statistics works or a will to understand that. Regretfully, there is no way to make a "general" analysis, each specific case is unique and requires its own elaboration.

Configuration and Installation Tips for Sales Trends and Forecast Odoo v.17

Python dependencies

To guarantee the tool works correctly, a number of Python libraries are required: pandas, numpy, statsmodels, scipy, xlsxwriter. To install those packages execute the command:

pip3 install pandas numpy statsmodels scipy xlsxwriter

If you run Odoo on Python prior to or equal to version 3.7, please install the following versions of the packages pandas==1.3.5, statsmodels==0.13.1

Server memory limits

Running the statistical analysis and making the forecast is quite a resource-demanding operation. If users face the hanging interface, make sure that server memory limits and timeouts are enough. Otherwise, increase those settings.

Frequently Asked Questions about Sales Trends and Forecast Odoo v.17

According to the current Odoo Apps Store policies:

  • every module bought for version 12.0 and prior gives you access to all versions up to 12.0.
  • starting from version 13.0, every module version should be purchased separately.
  • disregarding the version, purchasing a tool grants you a right to all updates and bug fixes within a major version.

Take into account that the faOtools team does not control those policies. For all questions, please contact the Odoo Apps Store representatives directly.

The easiest approach is to use the Odoo store built-in workflow:

1. Open the module's page and click the button Deploy on

2. After that, you will be redirected to the GitHub page. Login to your account and click 'Create a new repo' or use the existing one. Please, make sure, that your repository is private. It is not permitted to publish the apps under the OPL-1 license. If necessary, create a new repo for your project

3. Then, go to and click on the deploy button, submit the decision in the pop-up window and click 'Continue'. The action will trigger the installation process.

These steps will install the app for your project production branch. If you want to deploy the apps for other branches or update the module, you should undertake the following actions:

1. Upload the source code for the app from the Odoo store

2. Commit the module to a required GitHub repository. Make sure that none of the app folders/files are ignored (included in the .gitignore of your repo). Repositories are automatically created by, which might add by default some crucial items there (e.g. /lib). You should upload all module directories, subdirectories, and files without exceptions

3. Deploy a target branch of the project or wait until it is automatically built if your settings assume that.

  1. Unzip the source code of the purchased tools in one of your Odoo add-ons' directories;

  2. Re-start the Odoo server;

  3. Turn on the developer mode (technical settings);

  4. Update the apps' list (the apps' menu);

  5. Find the app and push the button 'Install';

  6. Follow the guidelines on the app's page if those exist.

Yes, sure. Take into account that Odoo automatically adds all dependencies to a cart. You should exclude previously purchased tools.

A red/orange warning itself does not influence features of the app. Regretfully, sometimes our modules do not pass standard automatic tests, since the latter assumes behavior which is in conflict with our apps goals. For example, we change price calculation, while standard Odoo module tests compare final price to standard algorithm.

So, first of all, please check deployed database features. Does everything work correctly?

If you still assume that warning influences real features, please contact us and forward full installation logs and the full lists of deployed modules (including core and third party ones).

Regretfully, we do not have a technical possibility to provide individual prices.

No, third party apps can not be used on Odoo Online.

Yes, all modules marked in dependencies are absolutely required for a correct work of our tool. Take into account that price marked on the app page already includes all necessary dependencies.  

The price for our modules is set up in euros. The Odoo store converts prices in others currencies according to its internal exchange rate. Thus, the price in US Dollars may change, when exchange rate changes.

Odoo demonstration databases (live previews)

For this app, we might provide a free personalized demo database.

No phone number or credit card is required to contact us: only a short email sign up which does not take more than 30 seconds.

By your request, we will prepare an individual live preview database, where you would be able to apply any tests and check assumptions for 14 days.

Bug reporting

In case you have faced any bugs or inconsistent behavior, do not hesitate to contact us. We guarantee to provide fixes within 60 days after the purchase, while even after this period we are strongly interested to improve our tools.

No phone number or credit card is required to contact us: only a short email sign up which does not take more than 30 seconds.

Please include in your request as many details as possible: screenshots, Odoo server logs, a full description of how to reproduce your problem, and so on. Usually, it takes a few business days to prepare a working plan for an issue (if a bug is confirmed) or provide you with guidelines on what should be done (otherwise).

Public features requests and module ideas (free development)

We are strongly motivated to improve our tools and would be grateful for any sort of feedback. In case your requirements are of public use and might be efficiently implemented, the team would include those in our to-do list.

Such a to-do list is processed on a regular basis and does not assume extra fees. Although we cannot promise deadlines and final design, it might be a good way to get desired features without investments and risks.

No phone number or credit card is required to contact us: only a short email sign up which does not take more than 30 seconds.

You may also like the tools
Cloud Storage Solutions

The tool to flexibly structure Odoo attachments in folders and synchronize directories with cloud clients: Google Drive, OneDrive/SharePoint, Nextcloud/ownCloud, and Dropbox. DMS. File Manager. Document management system

245€ 220€
KnowSystem: Knowledge Base System

The tool to build a deep and structured knowledge base for internal and external use. Knowledge System. KMS. Wiki-like revisions.

OneDrive / SharePoint Odoo Integration

The tool to automatically synchronize Odoo attachments with OneDrive files in both ways

394€ 354€
Universal Appointments and Time Reservations

The tool for time-based service management from booking appointments to sales and reviews

398€ 358€
Google Drive Odoo Integration

The tool to automatically synchronize Odoo attachments with Google Drive files in both ways

394€ 354€
Low Sales Report

The tool to control poorly performing products

CRM Check List and Approval Process

The tool to make sure required jobs are carefully done on each CRM pipeline stage. CRM checklists

68€ 61€
CRM Duplicates Real Time Search

The tool for real-time control of customer and opportunity duplicates

Opportunities Contact Full Details

The tool to keep complete and easy-reach opportunities' contact information