Yes. A Raspberry Pi can poll ESPN’s publicly reachable scoreboard JSON without an API key and turn the response into a live ticker on an HDMI screen or an RGB LED matrix. The practical method is free to access, but it is not an official, documented ESPN developer service: the endpoints have no published quota, uptime commitment or redistribution licence. Build for changing responses, temporary errors and visibly stale data rather than treating the feed as guaranteed infrastructure.
What the free scoreboard setup actually uses
The commonly used feed follows this pattern:
https://site.api.espn.com/apis/site/v2/sports/{sport}/{league}/scoreboard
As an Amazon Associate I earn from qualifying purchases.
Replace {sport} and {league} with the competition you need. Examples documented by a current endpoint reference include football/nfl, basketball/nba, baseball/mlb, hockey/nhl and soccer league paths. A response includes events, competitors, team names, scores and status information that a ticker can format as a short line such as “Team A 24–17 Team B, 3rd quarter.”
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchPC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11ESPN no longer issues public API keys for these endpoints and does not publish formal endpoint documentation or rate limits. That makes this a useful hobbyist technique, not a supported service-level agreement. A response format, URL path or access policy can change without notice.
#1 Best Overall
- Includes Raspberry Pi 5 with 2.4Ghz 64-bit quad-core CPU (8GB RAM)
- Includes 128GB Micro SD Card pre-loaded with 64-bit Raspberry Pi OS, USB MicroSD Card Reader
- CanaKit Turbine Black Case for the Raspberry Pi 5
- CanaKit Low Noise Bearing System Fan
- Mega Heat Sink - Black Anodized
Choose the display before writing software
Both a conventional monitor and a marquee-style LED sign work. The display determines the enclosure, power budget, readability and software driver you will need.
HDMI monitor or television
HDMI is the shortest path to a readable scoreboard. Raspberry Pi OS can render a browser kiosk, Python GUI or full-screen web page, and you avoid the electrical and timing details of matrix panels. A normal monitor is generally the better first build, especially when you want team logos, several games, standings or a large “data unavailable” message.
Raspberry Pi’s display documentation lists these model capabilities under its documented conditions:
Recommended Free Tools
| Raspberry Pi models | Maximum documented display capability |
|---|---|
| Pi 4, Pi 400 and CM4 | Up to two 4K displays at 30 Hz |
| Pi 5, Pi 500 and CM5 | Up to two 4K displays at 60 Hz |
A ticker does not need 4K or a high refresh rate. A 1080p panel is usually easier to read at a distance and puts less load on the graphics stack. Use a Pi-compatible micro-HDMI adapter or cable for models that require one, and configure the screen to stay awake if the sign must run continuously.
Rank #2
- Includes Raspberry Pi 4 4GB Model B with 1.5GHz 64-bit quad-core CPU (4GB RAM)
- Includes Pre-Loaded 32GB EVO+ Micro SD Card (Class 10), USB MicroSD Card Reader
- CanaKit Premium High-Gloss Raspberry Pi 4 Case with Integrated Fan Mount, CanaKit Low Noise Bearing System Fan
- CanaKit 3.5A USB-C Raspberry Pi 4 Power Supply (US Plug) with Noise Filter, Set of Heat Sinks, Display Cable - 6 foot (Supports up to 4K60p)
- CanaKit USB-C PiSwitch (On/Off Power Switch for Raspberry Pi 4)
RGB/HUB75 LED matrix
An RGB matrix gives the classic single-line or stretched-bar sign appearance. You need the panel, a suitable driver or bonnet, a correctly rated power supply, wiring and level shifting where required. The open-source Raspberry Pi scoreboard project demonstrates the software pattern with the rpi-rgb-led-matrix library: retrieve games, select the events to show, then draw text on the matrix.
LED matrices are bright and visually distinctive, but they introduce constraints a monitor does not: panel scan rate, color depth, cable length, power spikes and physical ventilation. Design the enclosure and power distribution before choosing a panel size. A small panel can display a compact score; a long bar is better for scrolling several games without reducing the font to unreadable size.
Hardware baseline and operating system
PiBarTicker, a Raspberry Pi kiosk project for stretched bar displays, lists Raspberry Pi 4 or 5, Raspberry Pi OS Desktop (Bookworm preferred) and network access for ESPN data as requirements. That is a practical baseline for a dedicated ticker because Desktop provides an easy kiosk path, while Pi 4 and Pi 5 have enough capacity for polling, formatting and display output.
- Controller: Raspberry Pi 4 or 5 is the sensible starting point for either HDMI or matrix output.
- Storage: Use a reliable microSD card or another supported boot device and keep a recovery image; a scoreboard is unattended, so a corrupted card should not require rebuilding from memory.
- Network: The Pi needs outbound internet access to request the scoreboard endpoint. Ethernet is preferable for a permanently mounted sign, although Wi-Fi works where signal quality is stable.
- Power: Size the Pi supply and the matrix supply independently when appropriate. A matrix can draw substantially more current than the controller, particularly at high brightness.
- Cooling and enclosure: Leave airflow around the Pi and any matrix power components. A kiosk that throttles or reboots is indistinguishable from a software failure to viewers.
How to build the data loop
The reliable architecture is a small polling process between the network and the renderer. Keep fetching separate from drawing so a slow request cannot freeze the display.
Rank #3
- 【What you Get】You will get 1*Pi 5 8GB Single Board,1*RasTech Case,1*Active Cooler,1*Screwdriver,1*Installation instructions,12-month free warranty, lifetime service, 24-hour prompt and friendly response.
- 【More Connectors】There are two USB 3.0 ports(5Gbps simultaneously) and two USB 2.0 ports, which triple total bandwidth ,support any combination of up to two cameras or displays. Peak SD card performance is doubled through support for the SDR104 high-speed mode. It provides a smooth desktop experience for you. Offer Gigabit Ethernet and a PCIe interface, along with dual-band Wi-Fi and Bluetooth 5.0/BLE wireless capability. The RasTech Pi 5 Kit use the new 27W 5.1V 5A USB-C power connector.
- 【 Support Dual 4Kp60 Display 】Each of the two microHDMI sockets can control a 4K display at 60 Hertz, now support HDR, offering super HD video for media streaming projects. RPi 5 is the first RPi model that comes with a PCI Express port (PCIe 2.0 x1 with 500 MB/s) to attach SSDs (requires separate M.2 HAT).
- 【 Excellent Chips And Applications】Pi 5 is a full-size Pi computer using silicon built in-house at Pi. The RP1 “southbridge” provides the bulk of the I/O capabilities for Pi 5. Pi 5 is more friendly and convenient in the development of Internet of Things, Web development, machine identification, automatic control and other electronic equipment applications and network.
- 【 Faster CPU, Better GPU 】 Pi 5 features a Broadcom BCM2712 64-bit quad-core Arm Cortex-A76 processor running at 2.4GHz, it delivers a 2–3× increase in CPU performance relative to RaspberryPi 4. The 800MHz VideoCore VII GPU is compatible to OpenGL ES 3.1 and Vulkan 1.2, substantial uplift in graphics performance. Pi 5 Offers lightning-fast CPU speed, a PCI Express interface, a Real Time Clock (RTC) and a power button and runs significantly cooler than Pi 4.
- Select one league path. Start with a narrow scoreboard URL such as the football/NFL or basketball/NBA path rather than downloading standings, injuries or other large payloads. A ticker normally needs event status, teams, score and clock or period.
- Request the JSON over HTTPS. Set a finite connection and read timeout. Treat non-200 HTTP responses, DNS failures and malformed JSON as expected runtime conditions, not as reasons to terminate the kiosk.
- Parse only the fields you display. Walk the returned events, then each event’s competitors and status fields. Because the endpoint is undocumented, keep this parser tolerant: check that a field exists before converting it to text and retain a fallback label when a clock or period is absent.
- Filter the slate. Decide whether to show live games only, live games followed by scheduled games, or final games for a post-game summary. The open-source scoreboard example supports NFL, NBA and NCAA basketball modes and uses this filtering approach.
- Format short lines. Combine abbreviated team names, scores and status into a fixed-width line for a matrix or a larger card for HDMI. Rotate multiple events instead of allowing one long line to run off the edge.
- Render the last known state. Keep the most recent successful result in memory. If the next request fails, leave that result visible and add a timestamp or “data unavailable” indicator rather than silently presenting it as current.
- Log the failure and retry conservatively. Record the HTTP status or exception locally, wait for the next interval and continue. A watchdog can restart a genuinely stuck process, but it should not create a tight retry loop.
A minimal request for testing
From a terminal on the Pi, substitute a real sport and league in the documented template:
curl --fail --silent --show-error --max-time 10
"https://site.api.espn.com/apis/site/v2/sports/football/nfl/scoreboard"
Use the output only to inspect the current response. Do not assume every sport returns identical optional fields; undocumented feeds can add, rename or omit values.
Polling interval that will not punish the feed
The endpoint reference reports observed scoreboard cache lifetimes of roughly one to eight seconds and recommends polling every 10–30 seconds during live games. Those figures are engineering guidance from a third-party reference, not an ESPN guarantee. A 15- or 20-second interval is a reasonable starting point; increase it when no games are live and avoid parallel requests for the same league.
Responses observed in that reference ranged from about 14 KB to 262 KB depending on the league and slate. They are examples, not fixed limits. Requesting only the scoreboard endpoint reduces bandwidth and parsing work.
Rank #4
- Broadcom BCM2711, Quad core Cortex-A72 (ARM v8) 64-bit SoC @ 1.5GHz
- 1GB, 2GB, 4GB or 8GB LPDDR4-3200 SDRAM (depending on model)
- 2.4 GHz and 5.0 GHz IEEE 802.11ac wireless, Bluetooth 5.0, BLE Gigabit Ethernet
- 2 USB 3.0 ports; 2 USB 2.0 ports.
- Raspberry Pi standard 40 pin GPIO header (fully backwards compatible with previous boards)
Design for stale data and endpoint changes
Because no official quota, uptime target or latency guarantee is published, resilience is part of the feature set.
Show freshness, not false precision
Store the time of the last successful response. During a short outage, keep the last score and display “updated 20:15 UTC” or a similar age marker. After a threshold you choose, replace the score with “data unavailable” rather than implying that an old score is live. The threshold should be visible in configuration so an operator can adjust it without changing parsing code.
Handle common failures
- HTTP errors: Preserve the previous display, log the status and retry at the normal interval.
- Timeouts or DNS failures: Show the stale-age marker and verify the Pi’s network connection before changing application code.
- Empty event list: This can mean no games are scheduled, not a failed request. Render a clear “no games” state with the date or league name.
- Parser exception: Keep the renderer alive, capture the raw response for diagnosis if storage permits, and fall back to a generic event label.
- Changed field names: Isolate parsing in one module so a response change does not require rewriting the display driver.
Consider a small proxy or cache
Direct polling from the Pi is simplest and has fewer moving parts. A small proxy or cache can centralize retries, serve several displays from one fetch and shield the Pi from transient network failures. It also becomes another system to secure, monitor and maintain. For one home ticker, direct polling is usually sufficient; for multiple screens, a proxy gives better operational control.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Free feed versus a documented provider
The choice is not only about price. It is about how much uncertainty your installation can tolerate.
Best Value
- Raspberry Pi 5 with 8GB RAM: Model SC1112 featuring a quad-core ARM Cortex-A76 processor running at 2.4GHz. Enhanced Connectivity: Includes dual 4K micro HDMI ports, USB-C power input, and high-speed USB 3.0 ports. PCIe Expansion Support: FPC connector enables M.2 NVMe SSDs when using compatible adapters. Fast Storage Options: Works with microSD cards for booting, or optional NVMe storage for advanced projects. Built for Projects & Learning: Ideal for programming, home labs, DIY electronics, automation, and Linux-based development.
| Approach | Strength | Trade-off |
|---|---|---|
| Undocumented ESPN scoreboard feed | No API key or subscription is needed for the described requests. | No published documentation, rate limits, uptime commitment or guaranteed schema. |
| Documented commercial sports-data provider | Potentially clearer quotas, support and redistribution terms. | Requires checking current pricing, coverage and licence conditions. |
| Local proxy/cache in front of the feed | Centralized retries, caching and control for multiple displays. | Adds a server, monitoring and another failure point. |
A documented provider is the safer direction when a venue, public installation or paid product depends on uninterrupted updates. Verify that the provider expressly permits the way you will display or redistribute the data; a general “free tier” does not automatically grant public-display rights.
Legal, licensing and branding limits
The endpoint method should be described as a hobbyist implementation. No authoritative ESPN terms establishing redistribution rights for these undocumented endpoints were identified. Before putting the ticker in a bar, shop, event venue or monetized product, review the provider’s current terms and obtain permission where required. The technical fact that a URL responds does not settle whether you may republish its contents.
Raspberry Pi trademark guidance also cautions against branding that implies an official relationship. Describe the hardware accurately and avoid presenting an independently built ticker as an official Raspberry Pi or ESPN product.
A practical build plan
- Prototype on an HDMI monitor. Install Raspberry Pi OS Desktop (Bookworm is the version named by PiBarTicker), connect the Pi to the network and confirm that the scoreboard request returns JSON.
- Implement the fetcher first. Add timeout, HTTP-status checking, JSON validation, a 10–30 second interval and a last-success timestamp before adding animation.
- Test empty and finished slates. Verify separate screens for live, final, scheduled and no-game states. Check that a failed request does not clear a valid previous score.
- Add kiosk startup. Launch the renderer automatically after boot, disable screen blanking for an HDMI sign and keep logs somewhere you can inspect after a restart.
- Move to the matrix only after the logic is stable. Install the appropriate HUB75 driver, power supply and level shifting, then adapt the renderer to the matrix library.
- Run an outage drill. Disconnect the network, confirm the stale-data message appears, reconnect and verify that the display recovers without manual intervention.
When this approach is a good fit
- A home scoreboard, maker project or private office display where occasional feed changes are acceptable.
- A single league or a small set of leagues refreshed every 10–30 seconds.
- An installation with a clear stale-data indicator and someone able to update the parser if the undocumented response changes.
Choose a documented, licensed data service instead when the display is public-facing, revenue-generating, contractually important or expected to run unattended with guaranteed support. The Pi can remain the display controller; the data-source decision is separate from the hardware decision.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

