Project Google Maps
See your entire project portfolio on a map — status-colored markers show which projects are on track, at risk, or off track at a glance. Drill down to individual task locations, assign site addresses to both projects and tasks, and confirm any location with an embedded satellite map right on the form.
Product Overview
Project Google Maps extends Odoo's Project application with geographic map views for both projects and tasks. Each project can be linked to a site address, and its marker on the map is automatically color-coded by health status — green for on track, orange for at risk, red for off track, cyan for on hold, purple for done, and gray when no status has been set. From the Projects list, switching to the Map view gives a portfolio-level geographic overview with health status at a glance. A "View Tasks" button in each project's marker opens the task list for that project directly from the map.
Tasks within a project each have their own site location and custom marker color. The task Map view shows all tasks plotted at their individual site addresses — useful for construction teams, field service operations, and any project where work items are spread across multiple physical locations. Both the project form and the task form include an embedded satellite map widget that renders the selected site location inline, so teams can verify the exact site without leaving the record. A dedicated "Site" partner type keeps site address contacts organized separately from regular customers and vendors.
Who It's For
Project Managers Overseeing Multiple Sites
Managers running several concurrent projects across different physical locations who need a portfolio-level health view with geographic context. The Projects map shows every project as a status-colored marker — on track, at risk, off track — so a manager can assess the entire portfolio spatially, identify which struggling projects are in the same region, and plan site visits accordingly without building a custom dashboard.
Construction, Engineering & Infrastructure Teams
Teams where each project is a physical construction or infrastructure site with a precise location. Assigning a site address to each project and its tasks brings the geographic reality of the work into Odoo — project managers can see which sites are nearby, which tasks within a site need attention, and confirm site locations with the embedded satellite map before a first visit.
Field Service & Multi-Location Operations
Operations teams dispatching technicians, inspectors, or installers across multiple sites. The task Map view shows where individual work items are located within a project, making it straightforward to group nearby tasks, optimize visit sequences, and understand the geographic spread of open work without exporting to a separate scheduling tool.
Program Managers & Portfolio Analysts
Stakeholders who need to understand the geographic distribution of active projects — which regions have the most activity, which areas have at-risk or off-track projects, and how project density correlates with business priorities. The Projects map view, combined with Odoo's standard group-by and filter options, provides that geographic lens directly inside the tool the project teams already use.
The Problem It Solves
No Geographic View of the Project Portfolio
Odoo's standard Projects list shows project names, statuses, and deadlines — but no spatial context. For companies running projects across multiple cities, regions, or sites, the list view gives no indication of which projects are near each other, how activity is distributed geographically, or which at-risk projects might benefit from shared resources in the same area. The Projects map view surfaces that context without building a custom report.
Project Health Status Is Buried in List Rows
Spotting which projects are on track versus at risk versus off track requires reading status columns across a list. On the map, status is encoded in marker color — a single glance across the map reveals the health distribution of the entire portfolio. A cluster of red and orange markers in one region signals a problem that a column-sorted list takes much longer to surface.
Task Locations Are Not Tracked Inside Odoo
In project-based businesses where tasks happen at physical sites — construction, inspection, installation, maintenance — task locations are typically tracked in spreadsheets, field apps, or separate systems alongside Odoo. Assigning site addresses to individual tasks brings those locations into Odoo natively, enabling a geographic task view that coordinates field teams without requiring any external tool.
Site Addresses Aren't Distinguishable from Regular Contacts
Without a dedicated partner type, site locations are stored as regular contact or company records, making them hard to filter when selecting a site for a project or task. The "Site" partner type keeps site addresses in their own category — easily found in dropdowns, visually distinct with a dedicated icon, and separate from customer and vendor contacts in lists.
What's Inside
Two shared foundation modules, one embedded map widget module, and one Project-specific application module — delivering map views for projects and tasks, embedded satellite maps on forms, and a dedicated Site partner type.
Foundation Layer — Shared Infrastructure
Base Google Map
The root module for the entire suite. Centralises Google Maps API key and configuration in Settings, provides the shared Google Maps JavaScript API loader with retry logic and library caching, and supplies the base OWL component library — including error handling, offline detection, resize awareness, and accessibility support — used by every Google Maps module in this suite.
Why It Exists
Without a single configuration point, every module would manage its own API key and loader, causing conflicts and inconsistent error handling. This module ensures the Google Maps API is loaded once, correctly, with a single key, for every module in the suite.
Web View Google Map
Registers the google_map view type in the Odoo web client alongside standard list, kanban, and form views. Provides the full map view implementation: clustered marker rendering using AdvancedMarkerElement and MarkerClusterer, a collapsible sidebar panel for record navigation, overlapping marker spreading, multi-selection with Alt/Cmd + drag, in-map place search, geolocation button, nearby record search, and dark mode support. Any model with latitude and longitude fields can gain a map view by adding a view definition.
Why It Exists
This module provides the shared map view infrastructure — marker rendering, clustering, sidebar, multi-select, and all map interactions — so that project_google_map only needs to define which model and fields to display, without reimplementing the underlying map view behaviour.
Web Widget Google Map
Provides the google_map form widget that embeds a Google Maps preview directly inside any Odoo form view. An edit button opens an interactive dialog where users can drag a marker to any position or use a place search to set precise coordinates. Saving the dialog writes the updated latitude and longitude back to the record. In read-only contexts, the embedded map is shown without the edit button. Used by project_google_map to display embedded satellite maps on the project and task forms.
Why It Exists
The map view shows records as markers on a full-screen map. This widget fills a different need: embedding a smaller, form-level map preview that lets users verify or fine-tune a record's location without leaving the form. The two components are complementary — the view for portfolio-level navigation, the widget for record-level location confirmation.
Application Layer — Project Integration
Project Google Map
Extends the Project application with site location support for both projects and tasks, map views at both levels, and a dedicated Site partner type. Projects gain a "Site" tab on the form for linking a site address and displaying an embedded satellite map, and a Map view on the Projects list with markers automatically color-coded by health status. Tasks gain a "Site Information" section in the Extra Info tab with a site address field, coordinate display, embedded satellite map, and a custom marker color picker. The task Map view within a project shows individual tasks at their site locations with custom marker colors. A "View Tasks" button in the project marker and sidebar navigates directly to the task list for that project.
Why It Exists
The foundation modules provide a generic map view infrastructure and form widget. This module provides all the Project-specific configuration: the site address fields on project and task models, the status-to-color mapping for project markers, the custom color picker for task markers, the "View Tasks" navigation button, and the Site partner type with its dedicated icon — none of which belong in a general-purpose foundation module.
How It Works
Site locations flow from partner records into projects and tasks, then appear on map views with status-coded and custom-colored markers.
- Create site address records. In Contacts, create partner records for each physical site and set their type to "Site". The Site type gives them a dedicated icon and keeps them separate from regular customer and vendor contacts in dropdowns and lists.
- Assign a site to a project. Open a project and go to the Site tab. Select the site address partner — the tab immediately shows an embedded satellite map of the selected location for visual confirmation. Latitude and longitude are read automatically from the site partner's geolocation data.
- View the project portfolio on a map. From the Projects list, switch to the Map view. Each project with a site address appears as a colored marker — green for on track, orange for at risk, red for off track, cyan for on hold, purple for done, and gray for no status. Click a marker to see project details and use the "View Tasks" button to drill into the task list.
- Assign site locations to tasks. Open a task and go to Extra Info → Site Information. Select a site address for the task and optionally choose a custom marker color from the color picker. The embedded satellite map updates to show the task's site location.
- View task locations within a project. From a project's task list, switch to the Map view. Tasks with site addresses appear as markers in their custom colors, positioned at their site locations. The sidebar lists task names and customer information for quick navigation.
- Use Odoo's standard filters and search on both the project and task map views — filter by stage, responsible person, deadline, or any custom field, and the map updates to show only the matching records.
Key Features
Map views at both the project portfolio level and the individual task level — with status-based colors, custom task colors, embedded satellite maps, and a dedicated Site partner type.
Project Map & Status Colors
- Status-coded project markers — Each project marker is automatically colored by health status: green (on track), orange (at risk), red (off track), cyan (on hold), purple (done), gray (no status). No configuration needed — color is computed from the project's last update status.
- Project map view with sidebar — The Projects list gains a Map view showing all projects with site addresses. The sidebar lists all projects alongside the map; clicking an entry pans the map to that project's marker.
- "View Tasks" shortcut — A button in the project marker info window and in the sidebar navigates directly to the filtered task list for that project without leaving the map context.
- Site tab on project form — A dedicated Site tab allows linking a site address (Site-type partner) to each project. The tab displays an embedded satellite map of the selected location for immediate visual confirmation.
Task Map & Site Locations
- Task map view within a project — The task list within a project gains a Map view showing each task at its individual site address, with the sidebar displaying task name and customer.
- Custom marker color per task — A color picker field on the task form lets teams assign an individual marker color to each task — useful for categorizing tasks by type, priority, team, or stage directly on the map.
- Site Information section on task form — The Extra Info tab gains a "Site Information" section with a site address field, coordinate display, and an embedded satellite map of the task's location.
- Independent task and project site addresses — Tasks can have site locations different from their parent project's site, enabling precise location tracking for each work item in a multi-site project.
Site Partner Management & Map Toolkit
- Dedicated "Site" partner type — Partners can be typed as "Site" locations, giving them a distinct icon and keeping them easy to find in site address dropdowns — separate from customer and vendor contacts.
- Embedded satellite map widget — Both the project Site tab and the task Site Information section display a Google Maps satellite preview of the selected location directly on the form — no separate map tab or browser lookup needed.
- Interactive location edit dialog — An edit button on the embedded map widget opens a dialog with a draggable marker and place search, allowing coordinates to be set or refined without leaving the form.
- Full map view toolkit — Both project and task map views include marker clustering, multi-selection (Alt/Cmd + drag), in-map place search, geolocation button, nearby record search, and full compatibility with Odoo's standard filters.
Use Cases & Benefits
Portfolio Health Visible on a Map
Project managers overseeing ten or more concurrent projects can scan the entire portfolio in one map view — the color of each marker immediately communicates whether the project is on track, at risk, or off track, with no need to scan a list or open individual project records.
At-Risk Projects Identified by Region
Clusters of orange and red markers in a geographic area indicate regional problems — shared resource constraints, weather, logistics — that a list sorted by status cannot reveal. The map view adds the spatial dimension needed to understand why multiple projects in the same area are struggling.
Field Teams Know Exactly Where Each Task Is
Assigning site addresses to tasks gives field teams a precise, verifiable location for each work item — confirmed with a satellite map on the task form and visible on the project's task map view without any external scheduling or dispatch tool.
Site Visits Planned Without Leaving Odoo
Clicking a project marker's info window provides direct links to navigate to the site in Google Maps. Project managers planning site visits can assess which projects are near each other on the portfolio map and generate navigation links to each site — entirely within Odoo.
Site Addresses Organized and Findable
The "Site" partner type keeps physical site locations in their own category — distinct from customers and vendors in dropdowns, with a dedicated icon, and easy to filter or search when assigning sites to new projects and tasks.
Task Grouping by Location for Field Dispatch
The task map view with multi-selection allows operations teams to select a group of geographically adjacent tasks and act on them together — assigning them to the same technician or scheduling them in sequence — without building a separate routing tool.
What's in the Bundle
Four modules — two shared map view foundation modules, one embedded map widget module, and one Project application module — delivering geographic map views for projects and tasks, embedded satellite maps on forms, and a dedicated Site partner type.
Foundation
base_google_map— Google Maps API loader, OWL component library, centralised API key and configurationweb_view_google_map—google_mapview type implementation, marker rendering, clustering, sidebar, multi-selection, in-map place search, nearby search, and dark mode supportweb_widget_google_map— Embedded Google Map form widget with draggable marker edit dialog, read-only map preview, and place search in the edit dialog
Application · Project
project_google_map— Map view for projects with status-colored markers; map view for tasks with custom marker colors; Site tab and embedded satellite map on project form; Site Information section and embedded satellite map on task form; "View Tasks" navigation; Site partner type