What is Echo?
Echo presents a single interface for multiple analytics and event reporting systems. By providing a layer of abstraction it is possible for a product to report data to multiple vendors without the need to integrate directly with multiple different libraries. Echo also consistently applies various rules and business logic eg to ensure event property values are consistent etc.
Echo covers both simple web page views, and the more complex interactions found in media player applications, and games. You simply include the relevant library in your code, and call the appropriate reporting methods where required.
Table of contents
Reporting services
Echo currently supports the following services:
Service | Description | Page Load | Other Events | Audio and Video | Enabled by default | Documentation |
---|---|---|---|---|---|---|
AT Internet | The BBC’s primary analytics service | Yes | Yes | Yes | Yes | link |
Comscore | The BBC’s former analytics service, still in use for some applications | Yes | No | No | Yes (mobile only) | link |
BARB | AV reporting for BARB (audience figures) | No | No | Yes (video only) | No | link |
Echo does not support all analytics services used within the BBC. In some cases there are alternative means of reporting data to a service that is supported by Echo. As an example, on most BBC web pages, page impressions are reported to AT Internet using the ‘Reverb’ library rather than Echo.
Supported platforms
Echo is currently supported on the following platforms:
Name | Language | Releases (via Github) |
---|---|---|
Echo JS | Javascript | Echo JS on GitHub |
Echo iOS | Swift | Echo iOS on GitHub |
Echo Android | Java | Echo Android on GitHub |
The Echo repositories are visible to the members of the BBC Github organisation. If you are not a member of that organisation and need to request access please email the Analytics Services Team or contact us on the #help-echo Slack channel, however in most cases you will not need access to the repos.
See the getting started section for details on how to integrate Echo into your product.