Viewing images direct in a terminal used to come at a serious disadvantage. The vast majority of terminal emulators display images using block-characters. Images can be displayed using half blocks or quarter blocks, the former offers the ability to display pixels with colour-accuracy. Whether half blocks or quarter blocks are used, pixelation is evident.
But you don’t need to suffer pixelation when viewing images, as the Kitty Graphics Protocol lets us display 24-bit color high definition images direct in your terminal.
Terminals that support the Kitty Graphics Protocol include Kitty, WezTerm, Konsole, and wayst. Unfortunately, the vast majority of terminal emulators do not support the protocol. Instead, these terminal emulators may only support Sixel (“six pixels”), a bitmap graphics format which consists of a pattern six pixels high and one wide, resulting in 64 possible patterns.
You’ll also need an image viewer that supports the protocol. This article selects the best free and open source image viewers that let you view 24-bit color high definition images in a terminal. Ranger is a file manager but supports high definition previews.
Here’s our verdict captured in a legendary LinuxLinks-style ratings chart. Only free and open source software is eligible for inclusion.

Let’s explore the 15 terminal based viewers. Click the links in the table below to learn more about each program.
| Terminal-Based Image Viewers | |
|---|---|
| timg | Image and video viewer with good range of features. Written in C++ |
| vv | Image viewer for sixel terminals |
| viu | Rust-based image viewer |
| Chafa | Character Art Facsimile |
| TIV | Tiny C++ program that displays images in a terminal |
| Ranger | Terminal-based file manager supporting high quality previews of image files |
| ucollage | Extensible command line image viewer |
| icat | Cat like utility can specify multiple image files and/or directories |
| pho | Lightweight image viewer |
| PTUI | Real-time image preview capabilities |
| imv | X11/Wayland image viewer |
| Foto | Simple image viewer |
| pxv | Instant feature rich terminal image viewer |
| iv | Image viewer using terminal graphics |
| catimg | Renders images in the terminal |
Graphical image viewers are covered in this separate roundup.
This article has been revamped in line with our recent announcement.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Know a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |


The grid display of timg is extremely useful.
I’ve always been happy with the default terminal emulator that comes with GNOME. It works well, reasonably fast, and not a memory hog. But it doesn’t support displaying high-resolution pictures. Time to move over to one that does maybe? Which is better, Kitty or WezTerm?
I love terminal-based apps. They are a boon to productivity and often amazingly lightweight on resources.