Owl Developer
Server Media

Media Specifications

Sizes, formats and rules for server images, and why each one exists.

A server can provide up to four images. None is required. Each kind has its own size, because each one appears in a different place. The validator enforces every rule on this page. The build then writes a canonical version of each image.

The four kinds

KindAccepted filesAspectInput sizeInput dimensionsPublished as
iconicon.png1:1up to 64 KiBexactly 64×64PNG, 64×64
logologo.png, logo.webp1:1up to 512 KiB512×512 to 2048×2048PNG, 512×512
backgroundbackground.png, .jpg, .jpeg, .webp16:9up to 2 MiB1920×1080 to 4096×2304WebP, 1920×1080
bannerbanner.png, .jpg, .jpeg, .webp4:1up to 1 MiB1200×300 to 2400×600WebP, 1200×300

Why these sizes

  • Icon, 64×64 PNG. This is the format Minecraft uses for its server icon. The Owl Client already reads a connected server's 64×64 PNG and draws it in its HUD.
  • Logo, square. A mark for the server page. A minimum of 512 keeps it sharp on high-density screens.
  • Background, 16:9. A full-width backdrop. The minimum matches a common desktop resolution.
  • Banner, 4:1. A wide card in listings.
  • No tablist image in version 1. The Owl Client has no tablist consumer today. Adding one would mean a new kind and a new specification, so it is not reserved here.

Rules for every file

  • One file per kind. logo.png and logo.webp together are rejected.
  • The content decides the format. The file's signature (PNG, JPEG or WebP) must match its extension. A file named .png that contains SVG is rejected.
  • Only PNG, JPEG and WebP are accepted. SVG, GIF, HTML and every other format are refused. SVG is refused entirely, because safe sanitization is more risk than it is worth here.
  • Static images only. Animated WebP and multi-frame files are rejected.
  • The aspect ratio is exact. It is checked with integer arithmetic, so 1920×1081 is not 16:9.
  • Orientation is applied. An EXIF rotation counts toward the dimensions, and the build applies it.
  • Metadata is removed. Every image is re-encoded. EXIF, XMP, text chunks and colour profiles are not published.
  • A decoder limit. An input may not exceed 16,777,216 pixels in total, which stops decompression bombs.

Naming

Source files use the names in the table. Published files are named by their content: <kind>.<first 16 hex characters of sha256>.<extension>. A new image always has a new name, so a cached file is never replaced under the same URL. See API caching.

Transparency

Transparency is allowed in icon, logo and banner, and in background when the source has it. For logo, keep the important content inside the central 80%, because some interfaces crop the edges. This is guidance; the validator does not check it.

On this page