Skip to content
AZ Tools

PSD / PSB Inspector

Read a Photoshop .psd or .psb without Photoshop: canvas, colour mode, every layer with its blend, opacity, mask and group, plus the thumbnail.

How to use

  1. Drop a .psd or .psb onto the box. The file is read in the tab and never uploaded, so a client file can be examined without sending it anywhere.
  2. Read the overview first: canvas, colour mode, bit depth and the layer count. If the mode is CMYK or Lab, decide what to do about it before anything converts the pixels.
  3. Check whether a composite is present. If it says no, the document will open blank in every viewer that is not Photoshop, and that is a property of the file rather than of the viewer.
  4. Work down the layer table. The dots in front of a name are the folder depth; hidden layers are marked, and a clipped layer only paints where the one below it has pixels.
  5. Use the channel table when you need byte offsets — each row gives where a channel’s pixel data starts and how long it is, which is what you need to write a reader of your own.
  6. Read the findings last. They name the things that are unusual rather than working around them quietly: a negative layer count, a channel that runs past the end of the file, a name that two readers disagree on.

About this tool

Show

Someone hands you a PSD and the first question is whether you need a licence to answer anything about it. This page answers most of it without one. A Photoshop document is five length-prefixed sections in a fixed order, all big-endian: a 26-byte header, the colour mode data, the image resources, the layer and mask information, and the flattened composite. Each one is located and measured here, and the layer section — the part people actually want — is walked record by record. You get the canvas size and the colour mode by name, the bit depth and the channel count, how many layers there are and how many of them are hidden, the folder structure, and for every layer its bounding rectangle, its size and position, its blend mode, its opacity, whether it is clipped to the layer below, which channels it stores and where each one sits in the file. Several details in the format catch readers out and each is handled deliberately. The header stores the height before the width, which is the reverse of nearly every other raster format and only breaks on a canvas that is not square. Layer rectangles are stored top, left, bottom, right — not the left, top, right, bottom that most libraries hand back. The layer count is signed, and a negative one is not an error: it means the first alpha channel of the composite carries the transparency for the merged image. Layer groups are not a tree in the file at all but a flat stack of section-divider markers, with the folder header above its contents and a bounding marker below them, so the nesting has to be rebuilt from the stack; that is done here and shown as indentation. Each layer carries two names, a legacy Pascal string in MacRoman and a Unicode one in an additional-information block, and they can disagree — the Unicode name is preferred and the older one is shown alongside it when they differ. The visibility flag is bit 1 of the flags byte, which is why a naive reader lists layers Photoshop does not show. Two questions matter more than the rest for anyone about to pass the file on. The first is the colour mode: a CMYK or Lab document converted without the right profile is the usual reason a "the colours are wrong" complaint arrives later. The second is whether the file contains a composite at all — Photoshop can save without one, and then every viewer, every thumbnailer and every placed-file preview shows a blank image while Photoshop itself looks fine. That is named here rather than guessed at, along with what the layer data costs in bytes against the composite. Layer pixels are not decoded. Every channel is located and its length reported, and the bytes are left compressed exactly where they are; likewise the ICC profile, the EXIF block and the XMP packet are identified and sized but never opened. No browser has a PSD decoder, so nothing here renders the picture either — what is shown instead is the thumbnail image resource, which is a whole JPEG file most documents carry. Everything runs in the tab and nothing is uploaded.

Frequently asked questions

Why does this not show the actual layers as pictures?

Because no browser has a PSD decoder, and drawing a layer would mean far more than decompressing it. Each channel is stored separately, compressed with either PackBits or zip, and a layer only looks the way Photoshop draws it once its opacity, its blend mode, its mask, its clipping relationship to the layer below and its position in the group stack are all applied. Doing that faithfully is a rendering engine, not a parser. What this page does instead is report the structure exactly, and show the one picture the file already contains: the thumbnail image resource, which is a complete JPEG that Photoshop wrote when it last saved the document.

Why is the layer order upside down compared with the Layers panel?

Because the file stores layers bottom first, while the panel lists them top first. This is not merely cosmetic: layer groups are encoded as a stack of section-divider markers that only make sense in one direction. A folder record sits above its contents in the panel, which means after them in the file, and a bounding divider sits below the contents, which means before them. Reconstructing the folder tree therefore means walking the list from the top down, opening a group at each folder record and closing it at each bounding divider. That is what the indentation in the layer table comes from, and it is why a reader that treats the layer list as a flat sequence loses the structure entirely.

Another tool shows a different name for the same layer. Which one is right?

Both are in the file. Every layer record ends with a Pascal string holding the name in MacRoman, padded to a multiple of four bytes — that is the original 1990s field, and it cannot represent most of the world’s writing systems. Modern Photoshop still writes it, but the name it actually shows lives in an additional-information block keyed "luni", as a character count followed by UTF-16. A reader that stops at the Pascal string reports a mangled or truncated name and looks confidently correct while doing it. This page prefers the Unicode name and prints the MacRoman one underneath whenever the two disagree, so you can see which reader produced which.

The layer count is negative. Is the file broken?

No — it is a documented signal. The count is a signed 16-bit value, and a negative one means the first alpha channel of the merged image holds the transparency for that composite rather than being an ordinary extra channel. Photoshop writes it when the flattened image has real transparency to preserve. A reader that takes the absolute value gets the right number of layers, which is why the mistake usually goes unnoticed, but one that treats the value as unsigned reads a count of 65 534 and then tries to parse tens of thousands of layer records out of a few kilobytes.

What is the difference between a PSD and a PSB?

One number and its consequences. The version word in the header is 1 for PSD and 2 for PSB, the large document format. A PSB may be up to 300 000 pixels a side instead of 30 000, and to address that much data three lengths widen from four bytes to eight: the layer and mask section length, the layer info length, and every per-channel length inside a layer record. Nothing else about the layout moves. That is precisely what makes it dangerous — a reader that ignores the version word does not fail cleanly, it reads a plausible-looking but wrong length and then walks off into the middle of the pixel data.

My PSD opens as a blank image everywhere except Photoshop. Why?

Almost certainly because it was saved without a flattened composite. The fifth section of the file is a single merged picture that Photoshop writes for the benefit of everything that cannot read layers: operating-system thumbnails, other applications placing the file, most libraries. It is optional, and turning off "maximize compatibility" leaves it out. Photoshop itself does not care, because it rebuilds the image from the layers, so the file looks perfect to the person who made it and empty to everyone else. This page reports whether the composite is present, how many bytes it holds and how many an uncompressed one would need, so the diagnosis takes seconds instead of an afternoon.

Related tools