# ShotCode

> Source: https://docs.barcoder.ai/docs/standards/shotcode
> research date 2026-06-03 · extracted at 2026-10-03
> Publisher: Barcoder — encyclopedia of QR, barcode and payment-code standards

Specifications:
- [ShotCode — Wikipedia](https://en.wikipedia.org/wiki/ShotCode)
- [The history of ShotCode by High Energy Magic Ltd](https://free-barcode.com/barcode/barcode-history/history-shotcode-high-energy-magic.asp)

## Overview

ShotCode is an obsolete circular ("bullseye") visual code designed in the early-to-mid 2000s for reading with ordinary mobile-phone cameras. Unlike matrix barcodes, it does not encode arbitrary data: it carries only a short lookup number that an app resolves against a server to obtain a URL <sup>[1][1]</sup>. It is notable as one of the first commercial attempts to turn a camera phone into a "physical hyperlink" reader, predating the mass adoption of QR codes in the West.

## History

ShotCode traces to research at the University of Cambridge that began in 1999 into a low-cost, vision-based method for tracking locations, which produced a system called TRIPCode. This was adapted into a circular barcode named SpotCode intended for camera-phone reading <sup>[1][1]</sup>. High Energy Magic Ltd was founded in 2003 to commercialise research from the University of Cambridge Computer Laboratory and Laboratory for Communications Engineering <sup>[1][1]</sup><sup>[2][2]</sup>. In 2005, High Energy Magic sold the SpotCode intellectual property to OP3, after which the technology was renamed ShotCode <sup>[1][1]</sup>.

## Technical specification

A ShotCode is a "dartboard"-like circle with a bullseye at the centre surrounded by data circles. The decoder reads each data bit by measuring the angle and distance of each point relative to the central bullseye <sup>[1][1]</sup>. The circular geometry lets the reader recover the code's orientation and perspective from a single image taken by an unmodified camera.

Crucially, ShotCode does not store regular data the way a matrix barcode does. It encodes a lookup number of only 40 bits. That number must be resolved by a server holding the mapped URL, which the reading device then fetches <sup>[1][1]</sup>. The reading client (ShotReader) was lightweight, around 17 kB, and prompted the phone browser to open the resolved address <sup>[1][1]</sup>.

## Use cases

ShotCode targeted mobile "tagging": printing a code in an advertisement, on packaging, or on a poster so that a phone user could photograph it and be taken to a campaign web page. Heineken is cited as the first company to officially use the technology <sup>[1][1]</sup>.

## Implementations

ShotCode depended on a dedicated reader app and a back-end resolution server. No official ShotCode reader exists for modern Android or iOS smartphones, reflecting the technology's decline <sup>[1][1]</sup>. The format and its resolver infrastructure are defunct.

## Comparison

ShotCode's defining weakness versus QR Code and Data Matrix is that it is an indirect code: its 40-bit payload is merely a key that requires a live resolution server, so a code is useless once the operator's servers go away. QR and Data Matrix encode the payload (including full URLs) directly in the symbol, making them self-contained and resolver-independent. ShotCode also relied on a proprietary reader and back end controlled by a single vendor, whereas QR became an open, royalty-free ISO standard with countless free readers. As camera phones and open QR tooling proliferated in the late 2000s, ShotCode lost its niche <sup>[1][1]</sup>.

## Fun facts

The circular bullseye geometry made ShotCode visually distinctive among the square matrix codes of its era, more like a target than a grid <sup>[1][1]</sup>. Its lineage runs through three names — TRIPCode (research), SpotCode (commercial), and finally ShotCode after the 2005 OP3 acquisition <sup>[1][1]</sup>.

## Status

Defunct / historic. ShotCode is no longer maintained, has no current reader for modern smartphones, and its server-side lookup model made surviving codes non-functional once the infrastructure was retired <sup>[1][1]</sup>.

## Sources

[1] [ShotCode — Wikipedia](https://en.wikipedia.org/wiki/ShotCode) — Wikipedia, accessed 2026.
[2] [The history of ShotCode by High Energy Magic Ltd](https://free-barcode.com/barcode/barcode-history/history-shotcode-high-energy-magic.asp) — free-barcode.com.

[1]: https://en.wikipedia.org/wiki/ShotCode
[2]: https://free-barcode.com/barcode/barcode-history/history-shotcode-high-energy-magic.asp

## Deployments

_No country reports mention this standard by name._

## Regions / aggregations not mapped to a single country

- Universal
