Athletic Awards Database Pg_verifybackup Checklist: Physical Base Backup Verification Before Awards Season

Admin
Athletic Awards Database pg_verifybackup Checklist: Physical Base Backup Verification Before Awards Season

The Easiest Touchscreen Solution

All you need: Power Outlet Wifi or Ethernet
Wall Mounted Touchscreen Display
Wall Mounted
Enclosure Touchscreen Display
Enclosure
Custom Touchscreen Display
Floor Kisok
Kiosk Touchscreen Display
Custom

Live Example: Rocket Alumni Solutions Touchscreen Display

Interact with a live example (16:9 scaled 1920x1080 display). All content is automatically responsive to all screen sizes and orientations.

An athletic awards database pg_verifybackup checklist is a structured pre-season verification protocol for confirming that a physical base backup—created by PostgreSQL’s pg_basebackup utility—matches its accompanying backup_manifest file across four distinct stages: manifest integrity, file presence, data file checksums, and write-ahead log continuity. This process is categorically different from verifying a logical export restored with pg_restore, and it is distinct from a restore drill that proves a backup can be loaded into a working database. pg_verifybackup checks the structural fidelity of the backup against its specification. What it does not do is confirm that the backup contains the award records your school needs—or that the database can actually be recovered. Both limitations are explicit in the PostgreSQL documentation and have direct consequences for recognition programs.

This guide is for school athletic directors, recognition program coordinators, and the IT administrators who manage PostgreSQL-backed award databases powering digital hall of fame displays, season award leaderboards, and inductee archives. It provides a numbered acceptance checklist, a decision table for interpreting tool output, specific guidance on WAL verification scope and version requirements, and the isolated restore steps that must follow a successful pg_verifybackup run before a backup is considered ready for recognition season.

Physical base backups are structurally different from the logical exports managed by pg_dump and pg_restore. A logical export serializes the database’s visible data into SQL or a binary archive format. A physical base backup copies the actual data files, write-ahead log segments, and configuration files from the PostgreSQL data directory. Each type requires a different verification approach. pg_verifybackup is purpose-built for physical base backups created with pg_basebackup—it reads the backup_manifest file that pg_basebackup writes alongside the backup and uses it as the authoritative specification against which the actual backup files are measured. If your team uses pg_dump for award database exports, pg_verifybackup is not the right tool for those archives. This guide covers the physical base backup path only.

For school recognition programs, the stakes of base backup verification are concrete. A lobby kiosk displaying a school’s hall of fame inductees, a digital screen updating each season’s award leaders, a year-end recognition ceremony drawing data from the awards database—all of these depend on a database that can actually be recovered. The names of athletes who earned distinction, the records they set, the awards their coaches nominated them for: these are the records at risk when a base backup cannot be verified and an emergency recovery scenario arises.

School hallway athletic records display with black knights mural and digital screen showing athlete recognition data

Athletic recognition displays like this depend on a database that can be recovered from backup — a pg_verifybackup acceptance checklist run before each season confirms the physical base backup meets its manifest specification

What pg_verifybackup Checks in Four Stages

The PostgreSQL documentation for pg_verifybackup describes a four-stage verification process. Each stage is a necessary condition for the next, and a failure in any stage stops verification for the affected file or the entire run depending on whether --exit-on-error is specified.

Stage 1 — Manifest integrity. Before examining any backup file, the tool reads the backup_manifest and validates it against an internal checksum embedded in the manifest itself. If the manifest has been altered, truncated, or corrupted since the backup was created, the tool exits with an error before proceeding. It also confirms that the system identifier in the manifest matches the pg_control file in the backup directory, preventing cross-instance confusion where a manifest from one database cluster is accidentally paired with another cluster’s backup files.

Stage 2 — File presence. The tool compares the list of files in the manifest against the files actually present in the backup directory, identifying both missing files (in the manifest but absent from disk) and extra files (present on disk but absent from the manifest). This stage excludes several files by design: postgresql.auto.conf, standby.signal, recovery.signal, and the backup_manifest file itself are not evaluated because these are legitimately modified during backup processing. The pg_wal directory contents are also excluded from file-presence checks—WAL verification is handled separately in Stage 4. Directory presence and absence are not checked; only individual files are evaluated.

Stage 3 — Checksum verification. For each file that passed Stage 2, the tool computes the file’s checksum and compares it to the corresponding value in the manifest. Files that failed or were skipped in Stage 2 are not rechecked here. This stage can be skipped with the --skip-checksums flag, which reduces verification time at the cost of eliminating detection for bit-level corruption in backup files—a tradeoff that is generally not appropriate for a pre-season acceptance run.

Stage 4 — WAL verification. For plain-format backups, the tool uses pg_waldump internally to parse the WAL records required for recovery and detect obvious problems: missing WAL files, checksum mismatches in WAL segments, and gaps in the sequence of records needed to bring the backup to a consistent state. This stage is not available for tar-format backups; when verifying a tar backup, the --no-parse-wal flag must be specified. WAL verification also carries a version constraint described in detail below.

The Pre-Verification Acceptance Checklist

Before running pg_verifybackup against an athletic awards base backup, confirm every item in this checklist. Items marked as blockers must be resolved before the tool is run; items marked as warnings require documentation but do not prevent the run from starting.

#Checklist ItemResponsiblePriority
1pg_basebackup version used to create the backup is documentedIT / DBABlocker
2pg_verifybackup binary version matches the documented backup PostgreSQL version (required for WAL parsing)ITBlocker
3backup_manifest file is present in the backup root directoryIT / DBABlocker
4Sufficient disk space available on verification host (at least 1.5× compressed backup size)ITBlocker
5Backup format identified: plain (-Fp) or tar (-Ft), with compression type if applicableIT / DBABlocker
6If tar format: --no-parse-wal flag will be added (WAL verification is unsupported for tar)ITBlocker
7WAL archive location confirmed if backup uses --wal-method=fetch and WAL is in a separate directoryITBlocker
8System identifier from manifest documented and confirmed to match production cluster’s pg_controlIT / DBABlocker
9List of any files legitimately added to the backup directory after creation is prepared (for --ignore flags)IT / DBAWarning
10Isolated restore environment is scheduled to follow a successful pg_verifybackup runIT / Athletic DirectorWarning
11Post-restore award record verification queries are prepared (row counts, most recent season, photo linkages)IT / Athletic DirectorWarning
12Drill outcome documentation template is ready to record verification date, version, exit code, and any error messagesAthletic DirectorWarning

Running pg_verifybackup: Step-by-Step Procedure

These steps apply to a plain-format physical base backup. Substitute flags as noted for tar-format backups.

  1. Confirm the backup_manifest file exists at the backup root:
ls -lh /path/to/backup_directory/backup_manifest

The file should be present and non-empty. If it is absent, pg_basebackup was either run on a PostgreSQL version prior to 13 (which did not generate manifests) or the manifest was deleted from the directory. A backup without a manifest cannot be verified with pg_verifybackup.

  1. Record the system identifier from the manifest and confirm it matches pg_control:
head -5 /path/to/backup_directory/backup_manifest
pg_controldata /path/to/backup_directory/global/pg_control | grep "Database system identifier"

A mismatch between the manifest’s recorded system identifier and the value in pg_control means the manifest does not belong to this backup. Do not proceed.

  1. Run the verification for a plain-format backup:
pg_verifybackup /path/to/backup_directory

For a tar-format backup, add --no-parse-wal and specify the format:

pg_verifybackup --format=tar --no-parse-wal /path/to/backup_directory

To stop on the first error rather than continuing through remaining files:

pg_verifybackup --exit-on-error /path/to/backup_directory
  1. Review the exit code and all output lines. A zero exit code with no output indicates the backup passed all applicable checks. A non-zero exit code or any output lines indicate failures. Record every error message verbatim in the drill log, including the full file path reported for any missing, extra, or checksum-mismatched file.

  2. Investigate extra files before suppressing them. Extra files (present in the backup directory but absent from the manifest) may be legitimate if they were added after pg_basebackup completed. For each extra file, confirm its origin and document why it is expected. Use --ignore only for confirmed-legitimate extras:

pg_verifybackup --ignore=extra_notes.txt /path/to/backup_directory

Do not add --ignore flags to suppress unexpected extra files without first identifying what they are.

  1. Treat missing files as blockers. A base backup with missing files cannot be restored to a complete state. Document the specific file paths and escalate to the database administrator before the backup is used or discarded.

  2. Document the full outcome. Record the verification date, tool version, PostgreSQL version, backup format, exit code, error messages, any --ignore flags used and the justification for each, and who ran the verification. A verification run with no documentation is indistinguishable from no verification run at all—particularly when a recognition event surfaces questions about the most recently confirmed backup.

Athletics touchscreen kiosk in school trophy case displaying athletic award recognition records

Trophy case touchscreen displays draw from an award database that must be verifiable and recoverable — a pg_verifybackup acceptance checklist run before each season confirms the physical base backup meets its manifest specification

WAL Verification Scope and Version Requirements

WAL verification is pg_verifybackup’s most nuanced stage, and it carries constraints that athletic database administrators must understand before interpreting results.

Version constraint. The pg_verifybackup binary invokes pg_waldump internally to parse WAL records. Both utilities must be the same version as the PostgreSQL server that created the backup. Using a pg_verifybackup binary from a newer PostgreSQL installation to verify a backup created by an older version may succeed for the manifest and checksum stages but will produce incorrect or inconclusive results in the WAL stage because WAL record formats differ between major versions. Verify the exact version match before running WAL verification against any base backup. This constraint applies only to WAL parsing; the manifest and checksum stages work correctly regardless of version alignment.

Scope of what WAL checking confirms. Even when the version matches and the WAL stage completes without errors, the scope of what pg_verifybackup confirms is narrower than it may appear. The tool verifies that the WAL files required for recovery from the backup’s starting point to a consistent end state are present and pass their own checksums. It does not verify that those WAL records are semantically correct or that their actions are logically sound—a WAL file that contains valid checksums but records unexpected data operations would pass WAL verification. According to the PostgreSQL documentation, the tool cannot detect server bugs producing valid checksums with nonsensical actions.

What WAL verification does not cover. WAL verification checks only the WAL segments that pg_verifybackup determines are required for recovery. It does not check WAL files beyond that range, and it does not confirm that the backup’s WAL coverage extends through the most recent award import. The transaction coverage of the backup is determined by when pg_basebackup ran and which WAL segments were captured—a question answered by examining the backup’s start and stop LSN values in the manifest, not by the WAL verification result alone.

Tar-format backups. WAL verification is not available for tar-format backups. When pg_basebackup creates a tar archive, the WAL segments may be included in the archive but cannot be parsed by pg_waldump without first extracting them. For tar backups, the --no-parse-wal flag is required. A successful pg_verifybackup run on a tar backup with --no-parse-wal confirms manifest integrity, file presence, and checksums, but does not check WAL at all. Programs storing award databases in tar-format base backups should factor this reduced coverage into their recovery assurance planning.

Decision Table: Interpreting pg_verifybackup Output

OutcomeWhat It MeansAction
Zero exit code, no outputManifest, file presence, checksums, and WAL (if plain format) all passedProceed to isolated restore and award-data verification
Extra file reportedA file is present in the backup directory that was not in the manifest when the backup was createdInvestigate origin; add --ignore only if source is confirmed; document justification
Missing file errorA file recorded in the manifest is not present in the backup directoryBlocker — backup is incomplete; do not use; escalate to DBA; locate an earlier backup
Checksum mismatch errorA backup file’s content does not match the checksum recorded in the manifestBlocker — data corruption detected; do not use; retrieve an earlier backup
Manifest checksum mismatchThe manifest itself has been altered or corrupted since creationBlocker — manifest is not trustworthy; verification cannot proceed; escalate
System identifier does not matchThe manifest belongs to a different database cluster than the backup filesBlocker — wrong manifest or wrong backup directory; do not proceed; escalate
WAL error — missing segmentA WAL segment required for recovery is not present in the backupBlocker — full recovery to a consistent state may not be possible; escalate
WAL error — version mismatchpg_verifybackup version does not match the backup’s PostgreSQL versionRetry with the correct binary version; results are unreliable until corrected
No manifest foundbackup_manifest is absent from the backup root directoryCannot use pg_verifybackup; determine backup method; use logical restore verification for pg_dump exports

Missing and Extra File Exceptions

Athletic award database backups sometimes contain legitimately extra files: a recovery plan document placed in the backup directory for convenience, a post-backup configuration note, or a temporary file created during storage transfer. These are not corruption events or backup failures—they are files added after the backup completed, and pg_verifybackup will report them as extra files because they were absent from the manifest when pg_basebackup ran.

The --ignore flag instructs pg_verifybackup to suppress evaluation of a specific file path (relative to the backup root). Use it carefully: every ignored path is a file the tool will not evaluate, so the justification must be documented alongside the verification record. An --ignore flag added without documentation is indistinguishable from a suppressed finding.

Files that should trigger investigation rather than suppression include any data files with .dat or .heap extensions not present in the manifest, new files in pg_wal not matching expected WAL segment name formats, and any file resembling a PostgreSQL system catalog. An extra system-level file that cannot be traced to a known, deliberate post-backup action warrants escalation before the backup is relied upon.

For programs managing award records across both physical and digital formats, the parallel concern of gradual data degradation in physical archives—where bit rot in scanned historical photos or digitized records creates structurally similar “what files are present versus what should be present” questions—is covered by the athletic archive bit rot detection and fixity checklist at digitalyearbook.org. The integrity verification approach differs in mechanism, but the checklist discipline is structurally the same.

A Successful Tool Exit Is Not Proof of Recoverability

This point appears directly in the PostgreSQL documentation and cannot be overstated for school athletic database contexts. The documentation for pg_verifybackup states explicitly that even after using the tool, administrators should still perform test restores and verify that the resulting databases work as expected and contain the correct data. A passing run confirms backup structure; it does not confirm recovery capability.

Specifically, a clean pg_verifybackup exit does not confirm:

  • That the backup covers the correct time window—that the most recent season’s award imports and inductee additions are captured
  • That the database will successfully start from the backup on the recovery host
  • That PostgreSQL extensions required by the award database are installed on the recovery host
  • That the restored database’s award records are complete, accurately linked to photos, categories, and athlete profiles
  • That applications connecting to the restored database can authenticate and query successfully
  • That any WAL records produced after the backup’s end LSN are available to continue recovery beyond the base backup’s captured state

A backup that passes every pg_verifybackup check can still fail to restore if the recovery host runs a different PostgreSQL version, lacks a required extension, or has an incompatible pg_hba.conf. A backup that restores without errors can still produce a database missing award records added during a bulk import that was in progress when the backup ran. Neither condition is detected by pg_verifybackup.

Touchscreen hall of fame kiosk displaying athlete portrait cards at a school recognition display

Athlete portraits and recognition records on a hall of fame display represent the data a verified backup must actually contain — confirmation requires an isolated restore and record-level verification, not only a clean pg_verifybackup exit

Required Isolated Restore and Award-Data Verification

A pg_verifybackup acceptance run must be followed by a scheduled isolated restore confirming the backup produces a functioning database with complete award records. The two procedures address different questions: pg_verifybackup asks whether the backup files match their specification; the restore test asks whether the backup produces a working database that contains what the recognition program depends on.

For the isolated restore, use a non-production environment that does not share storage or network access with the production award database. After restoring, work through these checks before the backup is accepted as ready for recognition season:

  1. Confirm the restored database starts and accepts connections from an application user with standard credentials.
  2. Run row count queries against core award tables—athletes, awards, categories, seasons, inductees, and media linkages—and compare to a baseline pulled from production before the backup ran.
  3. Verify the most recent award date or inductee entry date in the restored database matches the expected boundary for the backup window.
  4. Check for orphaned award records: entries referencing athletes or categories that did not restore correctly, identified by foreign key joins that return NULL for the referenced row.
  5. Confirm that required fields (athlete name, award category, season year) contain no unexpected NULL values across the core tables.
  6. Verify that all indexes are valid by querying pg_index for rows where indisvalid = false; invalid indexes require rebuilding before the database is used.
  7. If the award database includes photo or media linkages, confirm that the expected number of linked media records are present and that the foreign keys resolve correctly against athlete and award rows.

These seven checks convert a pg_verifybackup pass—which confirms backup structure—into a confirmed recovery capability: a backup shown to produce a working, complete award database when restored to an isolated environment.

For programs whose award databases include inductee announcements shared publicly after recognition events, the hall of fame press release announcement template at halloffame-online.com illustrates the downstream communication that depends on a complete, recoverable inductee record—a practical illustration of what is at stake when backup verification ends at the structural level and skips the content-level confirmation.

Connecting pg_verifybackup to the Broader Award Data Ecosystem

An athletic awards database pg_verifybackup checklist functions most effectively as one component of a broader data protection and recognition strategy. Several adjacent considerations inform how the checklist is scoped and when it runs.

Base backup versus logical export verification. Physical base backups created by pg_basebackup are point-in-time snapshots of the entire database directory. A base backup taken overnight captures that moment’s award database state. Logical exports created by pg_dump are verified through a different path—a pg_restore drill that tests restoration of the logical export to a working database and confirms award record completeness. Programs that use both backup methods should run both verification procedures; the methods are complementary, not redundant.

Relationship to WAL archiving. If the school uses WAL archiving for point-in-time recovery, the complete recovery capability extends from the base backup through the most recent archived WAL segment. But pg_verifybackup only checks the base backup itself. The WAL archive’s integrity requires separate monitoring. A passing pg_verifybackup run on a base backup from three weeks ago does not confirm that WAL segments from the intervening three weeks are intact and available for replay.

Man using hall of fame touchscreen kiosk with athlete profile cards in a school hallway

An administrator browsing hall of fame records through a touchscreen — isolated restore verification following a pg_verifybackup run confirms that the base backup will produce a database containing these records when recovery is needed

Relationship to the awards rubric. The records a base backup must protect include every data point used to determine recognition eligibility. The athletic awards rubric covering leadership, sportsmanship, stats, and display eligibility at awardsdisplay.com describes the dimensions of award criteria—each mapping to fields in the database that the backup must capture and the isolated restore must verify are intact. Acceptance checklists for backup verification and award eligibility verification address different problems; both are necessary.

Digital display dependency. Schools that have transitioned to interactive digital hall of fame displays face a direct visibility consequence when backup verification is incomplete. Physical trophies and plaques in traditional cases remain visible even when the database is unavailable. Why schools are making the switch to digital trophy cases at touchhalloffame.us describes the advantages and infrastructure dependencies of that transition—a verified, tested base backup is part of the infrastructure that digital recognition programs depend on.

Physical preservation parallel. Award databases often coexist with physical artifacts—trophies, jerseys, photographs, and documents stored alongside digital displays. Physical artifacts face preservation risks from environmental factors, and the award histories they represent may not be digitized. Trophy case humidity control for school awards, photos, jerseys, and documents at digital-trophy-case.com covers the physical preservation challenge—a reminder that comprehensive award program data protection addresses both the database backup and the physical record.

Static and manual recognition alternatives. For programs that have not yet implemented database-driven digital displays, recognition records are often maintained in spreadsheets, paper archives, or static web pages updated manually each season. These approaches do not face base backup verification challenges, but they also do not benefit from searchability, automated leaderboard updates, or remote access. When a school evaluates a platform-managed recognition system against maintaining its own records manually, backup verification complexity is one of the operational costs on the manual side of that comparison—a cost the platform absorbs.

Reader Questions

Before the next recognition season, use these questions to assess your program’s base backup verification posture:

  • Does your award database team know which backup method is in use—logical export with pg_dump or physical base backup with pg_basebackup—and is a backup_manifest being generated alongside the backup?
  • Is the pg_verifybackup binary version documented, and does it match the PostgreSQL major version of the backup being verified?
  • Has anyone run pg_verifybackup against the most recent base backup, reviewed its complete output, and recorded the result with date and version?
  • Is there a documented process for investigating and resolving extra-file or missing-file findings rather than suppressing them with --ignore by default?
  • After the most recent pg_verifybackup run, was an isolated restore performed to confirm the backup produces a complete, working award database?
  • Are the award records most important to your recognition program—inductee histories, season leaders, photo linkages—explicitly verified in the post-restore check, with row counts compared to a pre-backup production baseline?
  • Who receives the verification outcome documentation, and how long is it retained?

Frequently Asked Questions

What is the difference between pg_verifybackup and pg_restore for an athletic awards database?

pg_verifybackup checks physical base backups created by pg_basebackup against their backup_manifest file—verifying file presence, checksums, and WAL integrity without performing an actual restore. pg_restore is the tool for restoring logical exports created by pg_dump in custom, directory, or tar format. If your award database backup was created with pg_basebackup, use pg_verifybackup for structural verification and a subsequent isolated restore for content verification. If it was created with pg_dump, use pg_restore for restoration and a post-restore record count check for content verification. The two tools address different backup types and should not be confused.

Does a successful pg_verifybackup run mean the athletic awards database backup is ready to use in an emergency?

No. The PostgreSQL documentation for pg_verifybackup states explicitly that even after using the tool, administrators should still perform test restores and verify that the resulting databases work as expected and contain the correct data. A clean exit confirms the backup files match their manifest specification. It does not confirm that the backup covers the correct time window for award records, that the database will start successfully on the recovery host, that required extensions are available, or that the restored database contains the expected inductee and award records. An isolated restore with post-restore record verification is required to convert a pg_verifybackup pass into a confirmed recovery capability.

Why does pg_verifybackup's WAL verification require a version match with the backup's PostgreSQL version?

pg_verifybackup invokes pg_waldump internally to parse WAL records during WAL verification. WAL record formats differ between PostgreSQL major versions, so pg_waldump from a different version cannot reliably interpret WAL records from the backup's version—results may be incorrect or inconclusive. The manifest and checksum stages of pg_verifybackup work correctly regardless of version alignment because they only compare file checksums against manifest values without interpreting PostgreSQL-internal WAL structures. Confirm the exact version match before running WAL verification; for tar-format backups, the --no-parse-wal flag must be used regardless, removing the version constraint from WAL parsing.

What should an athletic director do if pg_verifybackup reports a missing file?

A missing-file report is a blocking finding. A file recorded in the backup_manifest is no longer present in the backup directory, which means the backup cannot produce a complete restore of the award database. Escalate immediately to the database administrator, document the specific missing file paths verbatim from the tool output, and do not use the backup for any restore attempt until the cause is understood. If the missing file resulted from accidental deletion during storage transfer or archive rotation, an earlier backup should be identified, verified, and confirmed against a production record count baseline before the next recognition event or seasonal import.

Can pg_verifybackup confirm that the most recent hall of fame inductee records are included in the backup?

No. pg_verifybackup confirms that the backup files match the specification captured in the backup_manifest when pg_basebackup ran. It has no knowledge of the database's logical content—it cannot verify which inductee records, award seasons, or athlete profiles are present in the backup, only that the data files containing that information are present and match their recorded checksums. Confirming that specific inductee records are present requires an isolated restore followed by SQL queries that compare row counts and the most recent record dates against a production baseline documented before the backup ran.

Conclusion: Structured Acceptance Before Recognition Season

An athletic awards database pg_verifybackup checklist establishes a clear, documented standard for accepting or rejecting a physical base backup before it is relied upon for recognition season. The four verification stages—manifest integrity, file presence, checksum verification, and WAL continuity—address structurally different failure modes, and each stage’s scope and limitations must be understood before its output is interpreted. A version mismatch in the WAL stage makes the stage unreliable. A tar-format backup requires the --no-parse-wal flag. An extra file needs investigation, not automatic suppression. A missing file is a blocker, not a warning.

Most importantly, a clean exit from pg_verifybackup is the beginning of acceptance, not its end. The isolated restore that follows—and the award-data verification queries that confirm inductee records, season results, and photo linkages are complete and accurate—converts a structural file check into a confirmed recovery capability. The names of athletes who earned their school’s highest recognition, the records that define what each award means, and the histories that hall of fame displays make visible to every student and visitor: these records deserve both the file-level verification that pg_verifybackup provides and the record-level confirmation that only an actual restore can supply.

Two school administrators reviewing a digital hall of fame display in a school hallway

Reviewing a hall of fame display with confidence requires knowing the backup behind it has been structurally verified and tested through an actual isolated restore — both steps, not just one

See Award Records Protected at the Platform Level

Rocket Alumni Solutions provides athletic directors and school recognition programs with a cloud-based platform where award record integrity, backup management, and display reliability are handled at the infrastructure level — so your team focuses on honoring athletes, not auditing base backup manifests. Request a demo to see how the platform protects your recognition program's data.

Request a Demo

Live Example: Rocket Alumni Solutions Touchscreen Display

Interact with a live example (16:9 scaled 1920x1080 display). All content is automatically responsive to all screen sizes and orientations.

Written by

Admin

The Rocket Alumni Solutions team specializes in digital recognition displays, interactive touchscreen kiosks, and alumni engagement platforms for schools, universities, and organizations nationwide.

  • Digital Recognition Display Experts
  • Interactive Touchscreen Solutions Provider
  • Serving 500+ Institutions Nationwide
View all posts →

1,000+ Installations - 50 States

Browse through our most recent halls of fame installations across various educational institutions