Style the standard map types or create your own map
type

There are two ways to apply styles to a map:

Set the .styles property of the map's
MapOptions object. This approach changes the style of the
standard map types. Base imagery in terrain and satellite views is not
affected, but roads, labels, and other map components do respect the
styling rules. See how to change the
default map style.

Create a StyledMapType and apply it
to the map. This creates a new map type, which the user can select from the
map type control. See how to create a
styled map type.

Both approaches take an array of
MapTypeStyle
objects, each of which is composed of selectors
and stylers. See the section on style
syntax below.

For Google Maps APIs Premium Plan customers, the default map style has labels
turned off for map features in the poi.business category. You can
turn these labels back on by applying a custom style.

Style syntax

Styled maps use two concepts to apply colors and other style changes to a
map:

Selectors specify the geographic components that you can
style on the map. These include roads, parks, bodies of water, and
more, as well as their labels. The selectors include features
and elements, specified as featureType and
elementType properties.

Stylers are color and visibility properties that you can
apply to map elements. They define the displayed color through a
combination of hue, color, and lightness/gamma values.

To style your map, combine the selectors and stylers into a style
array, and pass it to the default map's
MapOptions
object, or to the
StyledMapType
constructor. The array takes the following form:

For a list of all available values for featureType,
elementType and stylers, see the
JSON style
reference.

Changing the default map style

To modify the styles of the default map types, set the style array in the
map's MapOptions either at time of construction or by calling
Map.setOptions. Changes to labels and roads affect all map types
(terrain, satellite and hybrid maps as well as the default roadmap type).

For a list of all available values for featureType,
elementType and stylers, see the
JSON style
reference.

Creating a styled map type

You can add a new map type to which to apply styles, by creating a
StyledMapType
and passing the selector and styler information to the constructor. This
approach does not affect the style of the default map types.

In the following example, notice the Styled Map control at
the top left of the map. This is the new map type created in the example code.