JavaScript Navigator vendor Property

Beginner
5 min read
Updated: Nov 2026
3 examples
Property

Definition

navigator.vendor is a read-only property that returns a short vendor string. Per MDN it is always one of "Google Inc.", "Apple Computer, Inc.", or (in Firefox) the empty string.

Read the notes below before you rely on this property. Prefer feature detection when support is limited.

Syntax

Use navigator.vendor. Start with this line.

JavaScript
navigator.vendor
CallWhat it does
navigator.vendorPrimary signature.

Built into the browser. Read navigator.vendor on Navigator — no import required.

Library declarations
JavaScript
navigator.vendor

Parameters

This member has no parameters beyond those shown in the signature.

Return Value

Return ValueDescription
*string

JavaScript Examples

Example 1 — Read vendor

Log the current vendor string (may be empty in Firefox).

JavaScript
console.log(navigator.vendor);
console.log(JSON.stringify(navigator.vendor)); // shows "" clearly
Try It Yourself

How It Works

  1. Read the property. No arguments — returns a string immediately.
  2. Empty is valid. Firefox returns "" per MDN.
  3. Use JSON.stringify. Makes empty strings visible in logs.
  4. Read-only. You cannot assign a new vendor from page script.

Example 2 — Map the Three MDN Values

Turn the closed set of vendor strings into a coarse display label.

JavaScript
function vendorLabel(v) {
  if (v === "Google Inc.") return "Chromium-family vendor string";
  if (v === "Apple Computer, Inc.") return "Apple vendor string";
  if (v === "") return "empty (Firefox per MDN)";
  return "unexpected: " + v;
}

console.log(vendorLabel(navigator.vendor));
Try It Yourself

How It Works

  1. Compare exactly. Match the full MDN strings, including punctuation.
  2. Group Chromium. One label covers Chrome, Edge, Opera, and similar.
  3. Handle empty. Treat "" as a first-class Firefox case.
  4. Display only. Do not unlock features from this label.

Example 3 — Feature Detection Instead of Vendor Sniffing

Ask for the capability you need — not the vendor string.

JavaScript
// Avoid: if (navigator.vendor === "Google Inc.") { … }

if ("serviceWorker" in navigator) {
  console.log("Service workers supported");
} else {
  console.log("Service workers not supported");
}

console.log("vendor (for logging only):", navigator.vendor || "(empty)");
Try It Yourself

How It Works

  1. Skip vendor branches. "Google Inc." is shared by many browsers.
  2. Detect the API. in / existence checks answer “can I use this?”
  3. Log vendor optionally. Fine for diagnostics, not for control flow.
  4. Keep a fallback. Progressive enhancement beats brittle sniff tables.

Browser Support

Navigator.vendor returns a string. MDN marks it Baseline Widely available (since July 2015). Values are limited to "Google Inc.", "Apple Computer, Inc.", or "" in Firefox.

✓ Baseline Widely available

Navigator.vendor

Supported in all modern browsers. Chromium → Google Inc.; Safari → Apple Computer, Inc.; Firefox → empty string.

Baseline Widely available
Google Chrome "Google Inc."
Yes
Microsoft Edge "Google Inc."
Yes
Mozilla Firefox "" (empty)
Yes
Apple Safari "Apple Computer, Inc."
Yes
Opera "Google Inc."
Yes
Internet Explorer Supported (legacy)
Yes
vendor Universal in browsers

Bottom line: Safe to read everywhere. See the MDN vendor reference. Do not use it as a feature gate.

Frequently Asked Questions

Per MDN, the value is always either "Google Inc.", "Apple Computer, Inc.", or (in Firefox) the empty string.
No. MDN marks it Baseline Widely available (since July 2015). It is not Deprecated, Experimental, or Non-standard.
Chrome, Edge, Opera, and other Chromium-based browsers typically return "Google Inc.".
Safari typically returns "Apple Computer, Inc.".
MDN documents that Firefox returns the empty string for navigator.vendor.
It is a weak signal. Prefer feature detection for capabilities. Edge also reports "Google Inc.", so vendor alone cannot identify a brand reliably.

Next: vendorSub

Learn how navigator.vendorSub behaves (usually an empty string).

vendorSub tutorial →

About the author

Mari Selvan M P
Mari Selvan M P 🔗

Developer, cloud engineer, and technical writer

  • Experience 12 years building web and cloud systems
  • Focus Full Stack Development, AWS, and Developer Education

I write practical tutorials so students and working developers can learn by doing—from databases and APIs to deployment on AWS.

14 people found this page helpful