Warehouse Occupancy Report
How many slots are free, not how many units
Walks a warehouse's locations and returns what percentage is occupied, how many slots are free and which ones. It answers the question Odoo doesn't: will the incoming shipment fit?
How you get it
Every development works in all three Odoo environments. The only thing that changes is how we deliver it.
Odoo Online (SaaS)
You do not need the ability to install modules. A Millora consultant comes in with temporary access that you authorize and implements it with Odoo Studio. When they are done, you revoke the access.
Odoo.sh or your own server
You receive the module and the installation guide by email as soon as payment clears. Install it yourself, or we install it with you.
Installation · shell
# 1 · copia el módulo a tu addons_path
cp -r millora_reporte_de_ocupacion_de_almacenes /mnt/extra-addons/
# 2 · reinicia y actualiza la lista de apps
odoo-bin -u all -d tu_base --stop-after-init
# 3 · instala desde Apps
# busca "Warehouse Occupancy Report"What it solves
The problem
Odoo knows how many units you have and where. It does not know how much room you have left.
And when you have to decide whether Thursday's shipment fits, the question is not about units: it is about slots. How many openings are free on the rack. Today that gets answered by walking the warehouse, or by opening locations one at a time to see which hold stock. With several hundred slots nobody does it twice — it gets answered from memory, and memory answers badly.
How it works
You pick the root location — a whole warehouse, an aisle, a zone — and the report walks every internal location beneath it.
It marks each slot free or occupied based on whether it holds stock, and applies a rule that comes from the floor rather than the system: if a slot is occupied, its subdivisions count as occupied too. Physically nothing else fits there, even if Odoo holds no stock against each half.
It returns a summary with the total number of slots, how many are occupied, how many are free, and the occupancy percentage, colour-coded: green below 50%, amber up to 80, red above. Underneath, the detail location by location, free ones first — which is exactly what you want when you are holding something and need somewhere to put it.
That detail groups by status or by location type, and searches by name.
You can also exclude locations from the calculation: docks, transit areas, quarantine. Anything that is not storage space and would only muddy the percentage.
What it doesn't do
Worth saying, because it defines who this is for. Occupancy is binary: a slot with one box counts the same as one filled to the ceiling. It measures neither volume nor weight, so it will not tell you how much more fits where something already sits — it tells you how many slots are still untouched.
And it keeps no history: each run replaces the previous result. It is for knowing how the warehouse stands right now, not for charting how the month went.
What changes
The receiving conversation stops being "I think it fits" and becomes a number with a date on it. You know before the truck leaves, not once it is at the dock. And whoever puts stock away stops walking aisles looking for a gap: they open the list of free slots and go straight there.
What's included
- Works out the occupancy percentage of a warehouse, an aisle or a zone
- Counts free and occupied slots, not product units
- Colour-codes how full it is: green, amber or red
- Lists the detail location by location, free ones first
- Propagates a slot's occupancy to its subdivisions
- Excludes the locations you tell it to: docks, transit, quarantine
- Groups the detail by status or by location type
- Lives under Inventory → Reporting, where the warehouse already works
Requirements
- Inventory module active, with storage locations configured
- Internal locations organised in a hierarchy: warehouse, aisle, slot
- A suffix on subdivision names that tells them apart from the slot containing them
You might also need
Fulfillment Restock Calculator
How many units to ship to the marketplace warehouse, with numbers
Inventory & warehouse
Fulfilment Appointments
So the appointment doesn't fall through over something already known
Inventory & warehouse
Containers
You know what each unit cost you before the ship docks
Inventory & warehouse

