Skip to main content

Foxglove 2.51.0

🔍 Data Search: query recordings, events, and messages​

Build visual queries across messages, events, devices, recordings, and sessions with the new Search page, and stream results into a sortable table—no query syntax required. Search works across data hosted in Foxglove Cloud or on your self-managed primary site, with no separate data warehouse to set up or duplicate data to keep in sync. Read more about Data Search.

💰 New self-service pricing and unlimited Basic Seats​

The Team plan is now Pro and starts at $20/month for 1 TB of storage and 3 Developer Seats (down from $126/month for 3 seats — over $100/month in savings), and meters now have volume-based discounts as usage grows. Data Search is included on Free, Pro, Academic, and Enterprise plans; Pro and Enterprise also include unlimited Basic Seats at no extra cost. Customers migrated from Team to Pro will see updated prices on their next full billing cycle. Read more about our new self-service pricing, and try the cost calculator.

🪑 Basic Seats: free seats on Pro and Enterprise plans​

Pro and Enterprise plans now include unlimited Basic Seats at no extra cost—a new seat type for teammates who visualize Foxglove-hosted data with existing layouts, without authoring their own layouts or loading local files. Pair them with Developer Seats for full authoring access to bring ops, leadership, field teams, and contractors into your workspace without per-seat costs. Read more about Basic Seats.

Basic Seat members must use Foxglove 2.50 or later on desktop to sign in.

New & Improved
  • Event visualization: opening an event now pads the player with 5 seconds of context before and after the event time range so point events and short ranges are usable; URL start / end parameters still override the padded range when you adjust the timeline and share the link
  • Raw Messages panel: when multiple messages share the newest receiveTime, inline controls step through that group in stream order before falling back to the previous timestamp
  • Problems sidebar and Raw Messages panel show source-mapped stack traces for schema converter errors
  • Image panel: Show all and Hide all annotation topics in one click from the annotations settings
  • 3D panel: GridMap topics support a Flat elevation option that renders the grid as a flat plane without elevation displacement
  • Events: pick a custom hex color for an event type from the color picker's More colors option, in addition to the built-in palette
  • Billing: a new Usage tab embeds your live usage portal alongside the existing Plan tab
  • Storage, bandwidth, and usage figures throughout the app and billing reports now use SI units (MB, GB, TB) instead of mebibytes/gibibytes
  • Desktop: tab bar aligns with the navigation sidebar and removes the extra border under the active tab
  • Command palette: Improve translations (non-English locales), matching the existing user menu entry
  • User scripts: added eulerToQuaternion() to the built-in quaternion helpers (inverse of quaternionToEuler())
Performance
  • Improved playback performance for remote file data sources
API
  • Device property history is documented and publicly available in the API (internal gating removed)
  • Device tokens and device agent capabilities are now available on every plan in Settings, API key scopes, and the device token API
  • Self-managed primary sites must be on 0.0.100 or later to be considered searchable by Data Search; older sites show as incompatible. Foxglove-hosted sites are unaffected.
Fixes
  • Fixed arrow-key handling so panels that use their own keyboard navigation no longer also trigger global playback seek (capture-phase shortcut regression)
  • Tab panel: the entire tab header is wired to the panel drag handle again, so dragging a Tab panel by its header repositions it within the layout
  • Recordings page: selecting a row no longer shifts the table downward—the bulk-actions bar now overlays the header instead of pushing rows out of the way
  • Plot panel: supported message path functions in X-value path and the default X-axis path are no longer flagged as invalid in settings
  • Plot panel: floating legend no longer overlaps Y-axis tick labels (legend shifts horizontally based on the gutter width)
  • 3D panel: textures referenced from OBJ material libraries load correctly for package:// and file:// assets
  • 3D panel: image rendering no longer leaks GPU memory when an image topic switches between compressed video frames and raw image data
  • 3D panel: GridMap settings preserve the configured elevation layer while topic layers load, eliminating a brief "Layer does not exist" validation flicker
  • Color picker: incomplete hex values (e.g. #ab) no longer commit on each keystroke—values commit on blur, Enter, or wheel; the popover's Enter key now closes the picker as expected
  • Search: running a new query resets the timeline zoom so results render against the full time range (clears any prior visibleStart / visibleEnd)
  • Query builder: string-typed fields only offer string-relevant operators (no meaningless numeric comparisons on strings)
  • Query builder: changing the selected field preserves the value when types stay compatible; incompatible values show validation instead of silently clearing
  • Query builder: Message field paths with unknown types show the full operator list again (fixes over-restriction after string operator narrowing)
  • Search results: Manage columns stays right-aligned and the Event type column no longer stretches the header layout
  • Search query builder: removed a stray line under the active Execution details tab
  • Search results: header divider runs continuously across the scrollbar filler cell
Deprecated
  • The legacy Starter plan is no longer available to new customers. Existing Starter customers can stay on their current plan or upgrade to Pro for unlimited Basic Seats, Data Search, and the new volume discount tiers — see the pricing blog for details.

Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: x64 arm64 | Mac: Apple Silicon Intel