Home > Wireless LAN > Monitoring and Reporting > Location Analytics

Location Analytics


With the rapid adoption of mobile devices, many organizations can now leverage data to better understand foot traffic patterns and behavior in a brick-and-mortar environment. This location information, based predominantly on 802.11 wireless and bluetooth standards, can be used to engage users and optimize marketing strategies. For retail, this can help combat trends such as the erosion of in-store sales to online retailers, who for years have had access to similar data via the analytics produced by online tools (e.g., click-through conversion rates from online advertising).


Smartphones with WiFi can now be used as an indicator of customer presence thanks to a WiFi mechanism that is common across all such devices: probe requests. These 802.11 management frames are transmitted at regular intervals from WiFi devices. The frames contain information that can be used to identify presence, time spent, and repeat visits within range of a WiFi access point. These devices can be detected by WiFi access points irrespective of its WiFi association state meaning that even if a user does not connect his or her device to the wireless network, the device's presence can still be detected while the device is within range of the network and the device's WiFi antenna is turned on1.


Since smartphones now have greater than 50% penetration across the general population2, probe requests can be used to build and detect a statistically significant data set regarding the presence of WiFi enabled devices within range of a given access point. Meraki wireless Access Points and cloud infrastructure gathers this data and presents it in aggregate on the Meraki Dashboard. This is done through intuitive and customizable graphs that can be used to understand trends such as capture rate (passersby vs. visitors), user engagement (total time spent), and visitor loyalty (new vs. repeat visits). Meraki is able to provide these analytics to all organizations by leveraging the industry-leading cloud architecture that is behind all Cisco Meraki products. Additionally, Meraki Scanning API is capable of exporting raw data from the observed probe requests, which organizations can use to integrate directly with third-party data warehousing or analytics platforms. Not only can this facilitate a deeper integration with traditional customer relationship management (CRM) platforms, but, due to its real-time nature, it opens doors to next-generation customer engagement initiatives.


Viewed holistically, Meraki's built-in location analytics views and real-time location API complement the existing traffic analytics functionality and complete a 360-degree understanding of devices on- and within range of a Cisco Meraki network. This whitepaper explores Cisco Meraki's location functionality and offers insights into the technology behind these features and some of the use-cases that it can enable. These features are part of Cisco Meraki's MR series wireless access points.

1 The collection and use of location information has raised general privacy concerns. Meraki is sensitive to these issues and has designed location analytics with privacy in mind. Users concerned with having the presence of their device detected by these kinds of systems can avoid detection simply by turning off the WiFi antenna on the device.

2 https://www.comscore.com/Insights/Market-Rankings/comScore-Reports-October-2014-US-Smartphone-Subscriber-Market-Share

Location Data Collection

Cisco Meraki Access Points generate a presence signature from any WiFi-enabled device by detecting probe requests and 802.11 data frames, whether or not the device is associated to the network3. WiFi devices typically emit a probe request at regular intervals based on the device state (see Table 1). Smartphones send probe requests to discover surrounding wireless networks, so that they can make the networks available to the user.


Device State Probe Request Interval (smartphones)
Asleep (screen off) ~ once a minute
Standby (screen on) 10 - 15 times per minute
Associated varies, could require user to manually search for networks

Table 1

Probe request interval seen on smartphone OS vendors (iOS, Android, others) - varies greatly based on apps, device upgrades, and other factors4.


Data frames received from all connected WiFi devices and probe requests detected from all devices seen within range (typically up to 100 feet or more) generate "seen device" events on Meraki Access Points. Triple-radio APs have a dedicated scanning radio that listens for probe requests 24x7 on all channels. Dual-radio APs lacking the scanning radio can hear probe requests when WiFi devices probe across all channels. Seen device information is uploaded through the secure management tunnel between the access point and the Meraki cloud.


Meraki's secure management tunnel is highly optimized for sending and receiving configuration statistics and high volumes of information, and the added overhead from seen device data is close to negligible; the total bandwidth consumed by the management tunnel remains around 1 kbit/s.


Meraki Access Points also detect the signal strength of data frames and probe requests, which can be used to estimate the physical position of the WiFi devices. 



Figure 1: Typical probe request from an iOS device - 60 second packet capture taken from Meraki AP, opened using Wireshark.


Location data is largely captured per device using that device's media access control (MAC) address as a unique identifier. As part of a privacy technique, some mobile operating systems have added functionality that attempts to randomize the WLAN MAC address a device uses, making it more difficult to track by solutions such as Meraki Location Analytics. As the number of mobile devices that implement randomization increases, solutions to detect and locate devices have changed. Meraki provides additional capabilities such as bluetooth information via the Meraki Scanning API, enabling Meraki customers to anonymously include wearable devices as part of their location analytics dataset.

4 Based on empirical evidence from Meraki's own experiments and those of our analytics partners. This behavior tends to vary greatly based on the operating system and which apps are installed on the phone for example, if a certain app is very active, it could cause a device that is asleep to probe several times a minute.

Data Aggregation and Display

Once received by the Meraki cloud, presence signatures from all of the APs in a network are aggregated. After aggregation, data from each observed client device undergoes a series of computations to categorize it for later presentation. For example, retailers need to understand capture rate, which is the ratio of people passing by the store versus actually coming inside. To determine capture rate, the Meraki cloud analyzes the signal strength of each client device, along with the time spent within that location (a high signal strength on its own may not indicate a visitor if they are simply passing by the storefront quickly). 



There are a number of different client states that are created and stored in Cisco Meraki's databases, computed using a variety of techniques. The list of categories and the underlying logic is shown in Table 2.


Parameter Definition Computation
Capture Rate Percentage of passersby who become visitors. A passerby is any device that was seen, while a visitor is a device seen for more than a certain time with high signal strength. This graph shows all devices that were seen, and whether they were considered a passerby or a visitor. The ratio of visitors to total clients seen denotes the capture rate percentage.

1. Classifying passersby: any device seen at least once

2. Classifying visitors: a device is seen for more than five minutes in a twenty minute period. An RSSI of 15 or more opens up a session, and an RSSI of 10 or more maintains it

Engagement A value in minutes showing the amount of time visitors spent within the range of the wireless network. Viewing timestamps of presence signatures from clients to compute how long someone was within the wireless network range.
Loyalty Percentage of new vs. repeat visitors. An additional database entry per visitor detects number of repeat visits for a given time period. For example, if a client is seen 4 times within a month, they would be classified as a weekly visitor. At least 5 visits within 8 days would classify them as a daily visitor.

4 RSSI - 95 = signal strength in dBm

Location Analytics

While the Meraki cloud runs the above computations in real time to calculate the various client states, the Meraki Dashboard displays it via intuitive graphs that visualize capture rate, engagement, and loyalty. These graphs can be toggled between simple and complex views. A calendar function allows the user to zoom in or -out of a given time period to see views as granular as one day (which can show how foot traffic varies and peaks during a certain day) or as wide as several months (which can show seasonal fluctuations).


A time calendar function is available to let you select specific time periods for viewing; this lets you adjust the x-axis of the above graphs to view the data for a specific time period, e.g. how the number of visitors changed over the course of a specific day or week. 

Note: Location analytics data has 1 year retention for daily analytics, 3 months retention for hourly analytics.


Proximity Graph

'Capture rate' is the % of passersby who become visitors.

'Visitors' are wireless devices that "visited" your network. A visit is initiated when a Meraki AP detects a probe with RSSI of 15 or greater. Visitors are devices which continue to send probes with RSSI of 10 or greater for 5 minutes within a 20 minute period.

'Passersby' are probing wireless devices detected by a Meraki AP, whose probes and dwell time did not meet the requirements to be considered a visitor.


'Visitors' counted on the proximity graph are only counted once for their respective session. For example, if a device becomes classified as a visitor at 12 p.m., and maintains its session until 8 p.m., that device will only be counted as a 'visitor' for the 12 p.m. timeframe, along with an 'Engagement' value of 6+ hours. This allows for customers to determine how many visitors enter a location at a given time, and how long they stay.

Engagement Graph

A 'visitor' is a wireless devices that maintains high signal strength for longer than 5 minutes. This graph shows the amount of time visitors spent within range of the Wi-Fi network.

Loyalty Graph

This graph shows visitors based on how frequently they return. For example, a weekly visitor is someone who returned between 2 and 6 times in the last month

Running Comparisons

Cisco Meraki also has built a powerful comparative analysis tool that facilitates insights between networks within a given organization. By running a comparison, the Meraki Dashboard will overlay location data from the first data set on top of the second. Comparisons can be run to analyze different data sets, for example:


  1. Single site comparison between two different time periods (e.g., this week vs. last week)
  2. Multi-site comparisons between two different sites or sets of sites
  • Between two different sites (site A vs. site B)
  • Between one site and a batch of sites (site A vs. all sites, or site A vs. an average of sites A through D)
  • Between two different batches of sites (all sites vs. average of sites A through D)

Comparative analysis of two different time periods is easily done by expanding the time scale that is shown on the Analytics Page. 


Comparing to batches of sites leverages Cisco Meraki's network tagging functionality, which allows administrators to create hierarchical network structures by assigning one or more tags to different networks. In this fashion, a large number of comparisons can be run in a multi-site organization based on the reporting that is required, e.g., 'show me how this site compares to the nationwide average within my organization, or 'show me how the sites in the organization's East region compare to the sites in its West region.



The recommended methods for deploying Cisco Meraki wireless networks remain unchanged as a result of the new location analytics. There is no need to change AP placement, orientation, or add more APs. The heuristics described in the above sections automatically take data from existing deployments to analyze and provide data on foot traffic.


There are a number of general guidelines and factors to keep in mind when deploying a Cisco Meraki network optimized for location analytics, including:

  • Deploy physical access points as you normally would to provide wireless network coverage
  • In the Meraki Dashboard, structure your deployment in an Organization/Network topology with one network per location. Since the Location Analytics data is computed and displayed on a per-network basis, you probably want to create a network per location (as opposed to all locations within a single network). The Dashboard interface is designed to facilitate the management of hundreds of networks.
  • Tag different batches of networks on the Organization > Overview page. This lets you group sets of sites into batches, and the analytics data can be run in comparisons against tags.
  • If your networks are in different time-zones, ensure that each network has its time-zone configured correctly on the Configure > Network-wide settings page so that consistent comparisons can be run.
  • Allow time (several days) for Cisco Meraki's databases to populate with your network's information.


Value for Marketing and Business Intelligence Teams

The goal behind all of the data analytics and graphs presented is to provide a platform for both IT and non-IT departments to understand user presence. By understanding patterns such as foot traffic by time of day and how the capture rate varies across different sites, IT departments can gain a better understanding of network usage and trends, and non-IT departments, such as marketing and business intelligence teams, can gain insights and answer questions such as is my new marketing campaign at site A working based on the foot traffic numbers or do I need to staff more people at site B during peak hours. Some of the different use-cases for which Location Analytics could be useful are highlighted in the following table.



  • Detect total client visits
  • Analyze and optimize window conversion
  • Optimize staffing by time of day
  • Analyze visitor dwell-time and repeat frequency
  • Compare across sites or take averages for sets of sites to understand below or above-average store foot traffic, dwell-time and repeat frequency
  • Optimize and run A/B tests to see if changes in one variable affect outcome of measurable parameters (e.g. capture rate)
  • Analyze data and compare to external KPIs (e.g. average spend per site, average spend per user, average cost per store)
  • Prepare network for weekly or seasonal fluctuations by optimizing policies
  • Correlation of location analytics data with traffic analysis and device fingerprinting data for 360-degree view of user presence, devices and online behavior 

Location Heatmaps

Part of Meraki's location capabilities include the ability to visualize where people are spending time inside a particular location over the course of the day (regardless of whether or not their devices are associated to the wireless network). This data is overlaid on a floor plan or Google maps, and can give network administrators and marketing/operations teams information on guest foot traffic flows within certain parts of a store or building. 




Functions on heatmaps page

Floorplans can be toggled for views on different floors, along with the ability to remove the APs from the display or display different metrics on the APs (e.g. model number, current client count, historic client count, etc). The heatmap page includes a "playback" function - by pressing the play button, it is possible to see how the client density changes throughout the course of the day. Dates can also be toggled to see client density on a specific day in the past. 


Underlying Metrics 

The heatmaps are calculating using two metrics - (a) the number of devices were detected during the time period, and (b) how long those devices dwelled in the area. The colors represent the areas on the map where there is the most "presence." The intensity is based both on how many devices were detected during the time period and how long those devices dwelled in the area. Areas may be dark red either because there were lots of devices detected, or because there were a few devices that all stayed in the area for the entire hour. 


Client Indicators

The heatmap will also plot the calculated location of clients within the wireless network. Grey circles are clients that are not associated to the wireless network that are just probing. Blue circles are clients that are connected to one of the SSIDs served by the wireless network.


Scanning API


Thanks to widely available 'smart devices equipped with WiFi and BLE, Cisco Meraki's wireless access points can detect and provide location analytics to report on user foot traffic behavior. This can be especially useful in multi-site retail or enterprise deployments where admins or departments beyond IT wish to learn more about trends and user engagement. Coupled with traditional reporting from the WiFi network on client devices, applications and websites, Cisco Meraki provides a holistic view of online and offline user traffic.

Leveraging our globally distributed datacenter architecture, Cisco Meraki has built an end-to-end system that can aggregate data from thousands of endpoints for effective collection, analysis, and presentation of this data on the Meraki Dashboard. Comparisons can be run between different sites and time periods, and Cisco Meraki's network tagging functionality allows for an unlimited variation of comparisons by creating batches of networks that can be grouped together based on district, region, or any other preference. In addition to the built-in location analytics view, the Scanning API enables Cisco Meraki customers to detect and aggregate real-time data for custom applications.

The Scanning API delivers data in real-time from the Meraki cloud and can be used to detect WiFi (associated and non-associated) and Bluetooth Low Energy (BLE) devices in real-time. The elements are exported via an HTTP POST of JSON data to a specified destination server. The raw data is aggregated from all access points within a network on the Meraki cloud, and sent directly from the cloud to an organization's data warehouse or business intelligence center. The JSON posts occur frequently, typically batched every minute for each AP.

Using the physical placement of the access points from the Map & Floorplan on the Dashboard, the Meraki cloud estimates the location of the client. The geo-location coordinates (latitude, longitude) and X,Y location data accuracy can vary based on a number of factors and should be considered a best effort estimate. AP placement, environmental conditions, and client device orientation can influence X,Y estimation. Adjusting the AP placement or adding additional access points can help improve the accuracy of results. It's common to filter the data points to selecting a minimum RSSI value, a maximum uncertainty value, or other data elements included in the API.

Scanning Data Elements

The Scanning API version 2.0 data architecture device classification and location information. Using the physical placement of the access points from the Map & Floorplan on the Dashboard, the cloud estimates the location of the client.


Data Elements

apMac string MAC address of the observing AP
apTags [string] JSON array of all tags applied to the AP in dashboard
apFloors [string] JSON array of all floorplan names on which this AP appears
clientMac string Device MAC
ipv4 string Client IPv4 address and hostname, in "hostname/address" format; only "/address" if no hostname, null if not available
ipv6 string Client IPv6 address and hostname, in "hostname/address" format; only "/address" if no hostname, null if not available
seenTime ISO 8601 date string Observation time in UTC; example: "1970-01-01T00:00:00Z"
seenEpoch integer Observation time in seconds since the UNIX epoch
ssid string Client SSID name; null if the device is not connected
rssi integer Device RSSI as seen by AP
manufacturer string Device manufacturer; null if manufacturer could not be determined
os string Device operating system; null if the OS could not be determined
location location Device geolocation; null if location could not be determined
lat decimal Device latitude in degrees N of the equator
lng decimal Device longitude in degrees E of the prime meridian
unc decimal Uncertainty in meters
x [decimal] JSON array of x offsets (in meters) from lower-left corner of each floorplan
y [decimal] JSON array of y offsets (in meteres) from lower-left corner of each floorplan

HTTP POST body format

   "type":<event type>,
   "data":<event-specific data>


Event Specific Data Format

  "apMac": <string>,
  "apTags": [<string, ...],
  "apFloors": [<string>, ...],
  "observations": [
      "clientMac": <string>,
      "ipv4": <string>,
      "ipv6": <string>,
      "seenTime": <string>,
      "seenEpoch": <integer>,
      "ssid": <string>,
      "rssi": <integer>,
      "manufacturer": <string>,
      "os": <string>,
      "location": {
        "lat": <decimal>,
        "lng": <decimal>,
        "unc": <decimal>,
        "x": [<decimal>, ...],
        "y": [<decimal>, ...]


Enable Scanning API

The Scanning API is configured in the Meraki Dashboard on the Network Wide > General settings page in a few simple steps:

  1. Configure and host your HTTP server to receive JSON objects.
  2. Turn on the API by selecting Scanning API enabled in the dropdown box.

  3. Specify a post URL and the authentication secret (the secret is used by your HTTP server to validate that the JSON posts are coming from the Meraki cloud)
  4. Specify which Scanning API version your HTTP server is prepared to receive and process.
  5. Click the Validate button and, on successful validation, click Save button to save the page.
  6. Upon the first connection, the Meraki cloud will perform a single HTTP GET; the server must return the organization-specific validator string as a response, which will verify the organization's identity as the Cisco Meraki customer. The Meraki cloud will then begin performing JSON posts. 

While the Meraki Dashboard is capable of sending these requests using TLS, the initial GET to validate your server is performed over plaintext HTTP; please ensure that any HTTP to TLS redirection is disabled on your server until after the initial validation has been performed, as the request will fail if any sort of redirect is performed.




Protocol flow between Meraki cloud and third-party server:


Bluetooth Scanning API

Meraki APs with an integrated Bluetooth Low Energy (BLE) radio can detect and locate nearby Bluetooth Low Energy devices. This data is then provided via API to third party applications. Examples of such devices include smart watches, battery-based beacons, Apple iBeacons, fitness monitors, and remote sensors. 

Enable Bluetooth Scanning

Using the physical placement of the access points from the Map & Floorplan on the Dashboard, the Meraki cloud estimates the location of the client. The geo-location coordinates (latitude, longitude) and X,Y location data accuracy can vary based on a number of factors and should be considered a best effort estimate. AP placement, environmental conditions, and client device orientation can influence X,Y estimation; experimentation can help improve the accuracy of results or determine a maximum acceptable uncertainty for data points.


To enable BLE devices to be located, enable the BLE scanning radio on the access points. BLE Scanning is enabled in the Wireless >  Bluetooth Settings > Scanning settings page by selecting "On" in the Scanning section, as shown in Figure 3 below:


Screen Shot 2018-09-10 at 11.35.19 AM.png

Figure 3: Enabling BLE scanningBLE Scanning API


Bluetooth API Data Elements

apMac string MAC address of the observing AP
apTags [string] JSON array of all tags applied to the AP in dashboard
apFloors [string] JSON array of all floorplan names on which this AP appears
clientMac string Device MAC
seenTime ISO 8601 date string Observation time in UTC; example: "1970-01-01T00:00:00Z"
seenEpoch integer Observation time in seconds since the UNIX epoch
rssi integer Device RSSI as seen by AP
location location Device geolocation; null if location could not be determined
lat decimal Device latitude in degrees N of the equator
lng decimal Device longitude in degrees E of the prime meridian
unc decimal Uncertainty in meters
x [decimal] JSON array of x offsets (in meters) from lower-left corner of each floorplan
y [decimal] JSON array of y offsets (in meteres) from lower-left corner of each floorplan

Enable the Scanning API with BLE Scanning, and the data will include both WiFi and Bluetooth devices seen by the access points in a single data feed. The event type BluetoothDevicesSeen is used to identify the observations from the Bluetooth radio. Below are the JSON formats used by the Scanning API for Bluetooth devices.


HTTP POST body format

   "data":<event-specific data>


Location and Privacy

Meraki understands that some end users may be concerned about the collection and use of location information. In an effort to address these concerns, Meraki developed location services with privacy in mind, including a number of security mechanisms to eliminate uniquely identifiable elements from the data that it collects. Meraki also recommends that its customers and partners implement a number of privacy-friendly features. 


Meraki uses probe requests, data frames, and bluetooth beacon frames to locate and store client location. Because the location data contain raw MAC addresses, Meraki implemented a number of security mechanisms to anonymize the data in an irreversible fashion. Using a unique Meraki algorithm, the Meraki cloud hashes, salts and truncates MAC addresses so that they are not identifiable. The Meraki cloud then stores only that hashed, salted and truncated version of the MAC address. This anonymization process is described in more detail below.


The hash function is as follows:

hash(mac bytes, org secret) =

SHA1(mac bytes ++ org secret).takeRight(4)



++ indicates concatenation;

takeRight(4) returns the least significant 4 bytes of the SHA1; and

org secret is a per-customer salt.



client MAC is 11:22:33:44:55:66

org secret is t3lrdd


least significant 4 bytes of SHA1(112233445566t3Irdd) = 0x0e456406


SHA1 is a widely known one-way cryptographic function. Using SHA1 hashes in this manner is the current industry standard. In order to provide an additional layer of security beyond SHA1 hashing, Meraki's hash function truncates the hash to 4 bytes. This produces an information theoretic loss, as the domain of the function is larger than the range: a 6-byte MAC allows (2^48) possibilities whereas a 4-byte hash allows (2^32) possibilities. This results in 65,000 possible (org + MAC) combinations for each one 4-byte hashed MAC address. Therefore, given a MAC that has been salted, hashed, and truncated with the unique Meraki algorithm, it would be mathematically impossible to know with a reasonable degree of certainty what the original client MAC address was.


The hash function leads to information theoretic loss, and the original MAC address of client can never be recovered.


Cisco Meraki includes a customer-specific org-secret in the hash function. As a result, Cisco Meraki does not have any visibility into client behavior across our customers networks worldwide. And, of course, no Cisco Meraki customer can see the analytics of another customer's organization or where foot traffic goes after leaving the presence of its own WiFi / BLE network.


Finally, Cisco Meraki's website offers a global opt-out feature that allows users to submit the MAC addresses of their devices, after which the Meraki cloud will no longer detect their MAC addresses either for its built-in Location Analytics views or for real-time export via the Scanning API. Cisco Meraki also recommends that retailers and others using the Scanning API post notices on the availability of this global opt-out in prominent locations, preferably in the storefront or at building entrances where location detection is taking place. 


Data Privacy

Cisco Meraki's Scanning API, outlined above, exports raw MAC addresses to a specified third-party server. There are a number of privacy protection mechanisms that we have implemented, including:


No customer identity tie-in mechanisms

Cisco Meraki does not directly provide any way of tying MAC addresses to customer identity. These systems must be separately built and hosted by a customer, partner or service provider.


No customer contact mechanisms

Cisco Meraki does not provide any mechanism by which the API data can be used to contact customers in any way. For real-time user engagement, Cisco Meraki customers must build and maintain their own platform for contacting customers.


Recommended best practices

Cisco Meraki recommends a number of best practices for users of its API, including:

  • Opt-in Cisco Meraki customers should make it explicitly clear at the time of identity tie-in (e.g., via a splash page or through a mobile app) that user-provided information may be linked to a device's MAC address for more extensive engagement.
  • On-premise notification As with the use of the built-in Location Analytics, notice should be prominently displayed in areas using of the Location API data.
  • Opt-out In addition to providing an opt-in policy, Cisco Meraki customers should make their own customers aware of Cisco Meraki's global opt-out policy (allowing an opt-out by MAC address) and provide an intuitive means of accessing Cisco Meraki's opt-out page. Cisco Meraki's global opt-out is available at https://account.meraki.com/optout.


In this article, "endpoint" will refer to the server receiving the Scanning API POSTs. Depending on configuration, this may include a web engine such as Apache or Nginx in addition to a backend application such as a rails service.

Scanning API Data is not received

Issues with Scanning API data not arriving can be separated into two types. Either the endpoint sees incoming TCP connections from Dashboard, or it does not:

No Connections from Dashboard

In the event that the endpoint sees no communication from Dashboard, the first step is to ensure that there is basic network connectivity between the endpoint and Dashboard. Ensure that there is no filtering occurring by investigating logs from any and all firewalls that exist upstream of the endpoint. If there are no firewalls present, or the firewalls are relatively permissive, you should be able to telnet to the endpoint from an arbitrary external address.

A lack of data can also occur over short periods (15 to 20 minutes) if an endpoint's responses are slow, as outlined below. If endpoint logs do not indicate long responses, errors, connectivity to the endpoint can be confirmed from other sources, and no traffic filtering is occurring, please contact Cisco Meraki support for further assistance.

Connections from Dashboard

If TCP connections are seen from Dashboard but no Scanning API data is received, consider the following possible causes:

  • Considerations with HTTPS

When using HTTPS, the endpoint must have a valid certificate signed by a valid public Certificate Authority. If a certificate is not signed by a recognized CA, is expired, revoked or otherwise invalid, a session cannot be established to allow the incoming POST.

In some circumstances, a signed certificate can be valid but still unrecognized if signed by an intermediary CA unknown to Dashboard. For this reason, we recommend including the full CA chain when using HTTPS.

  • Endpoint is taking too long to respond

If an endpoint is taking an exceptionally long time - 500ms or longer - to respond to a POST, that endpoint's information will be dropped without being sent. It is recommended that applications separate processing of incoming Scanning API data from data routing for this reason.

Response times of endpoints are monitored in dashboard. On the Network-wide > Configure > General page under Location and scanning you will find a Status column on the table of your endpoints. Selecting the coloured dot will report the most recent response codes and times in ms.

slow response.PNG

This response time is the sum of the time it takes the packet to travel from dashboard to the endpoint, for the endpoint to process the POST and respond with a HTTP 200, and then for the response to travel back to dashboard.

  • Endpoint is returning an error

Check the application and service logs to ensure that the endpoint application is not reporting errors. Please refer to your endpoint application/service vendor for documentation and troubleshooting assistance.

  • URL fails to validate

During URL validation, the endpoint MUST return a 200 OK response with a body containing only the validator string. If the response is something other than a 200 OK, or the body is not an exact match to the validator string, validation will fail and the endpoint URI cannot be saved as an entry. Accessing the POST URL directly using a browser such as Google Chrome or Firefox, or generating a GET request with curl, are ways to check if the endpoint is responding correctly.

Malformed Data

Certain information is included if and only if a client associates to the network. This includes manufacturer, OS, SSID and IP addressing. Certain information, such as location values or AP tags, are included only if available. Other information should always be included and always have a value. If it does not, please contact Meraki Support.

Additional Resources

For more information on Location Analytics and API with Cisco Meraki, please refer to the following resources:

Last modified



This page has no classifications.

Other Languages

Explore the Product

Click to Learn More

Article ID

ID: 3965

Explore Meraki

You can find out more about Cisco Meraki on our main site, including information on products, contacting sales and finding a vendor.

Explore Meraki

Contact Support

Most questions can be answered by reviewing our documentation, but if you need more help, Cisco Meraki Support is ready to work with you.

Open a Case

Ask the Community

In the Meraki Community, you can keep track of the latest announcements, find answers provided by fellow Meraki users and ask questions of your own.

Visit the Community