Navigate

Features Brushes Journal Studio Contact

Journal Brushes not loading? Fix it in this order

Downloaded brushes that refuse to import almost always fail for one of six reasons, and five of them are fixed on your device in under a minute. In diagnostic order.

You paid for a pack, or downloaded a free one, and the app will not take it. No error worth reading, or an error that says “invalid file” and nothing else.

This is nearly always one of six things. They are in the order you should check them, which is not the order people usually try — most of the internet tells you to reinstall the app first, and that is the least likely fix and the most expensive one.

1. The file is still a .zip

By far the most common. Brush packs are ZIP archives with a custom extension — .brushset, .apexobrush, .abr and friends are all containers. Some browsers and most email clients “helpfully” recognise the ZIP inside and either rename it to .zip or unzip it for you on arrival.

An unzipped folder is not importable. Nor is a file renamed to .zip.

Fix: find the download and check the actual extension. If it ends .zip, rename it back to the extension the pack should have. If your browser extracted it into a folder, re-download and choose “Keep” or “Download linked file” rather than opening it.

On iOS Safari specifically: check the file in Files before importing. Safari has a long history of appending or stripping extensions on unfamiliar types, and the resulting file looks fine in the download list and fails at import.

2. It downloaded as a web page

If a server does not send the right headers, clicking a download link navigates to the file instead of saving it. What lands on disk is an HTML error page with a brush extension on it.

Tell: the file is tiny — a few kilobytes when it should be megabytes.

Fix: re-download with right-click → Save link as. If it is still small, the host is misconfigured; tell whoever sold it to you. (This is why our own downloads set Content-Disposition: attachment explicitly — it is the single most common brush-store bug and it is entirely the store’s fault, not yours.)

3. You hit the brush limit

Most apps cap the number of imported brushes, and most of them fail quietly when you cross it — the import appears to work and the brushes are simply not there.

Apex Olira caps imported brushes at 60 and tells you when you reach it, which is the behaviour you want but not the behaviour you should expect elsewhere.

Fix: uninstall a pack you are not using and try again. If the import suddenly succeeds, that was it.

4. The pack is for a different app

.abr is Photoshop. .brushset is Procreate. .sut is Clip Studio. .kpp and .bundle are Krita. .apexobrush is ours. None of them read each other’s, and no converter exists that meaningfully bridges them — we pulled several formats apart to show exactly why.

If the marketplace listing said “works in any app”, the listing was wrong. What is portable is the texture inside, and extracting it is a manual rebuild, not an import.

5. Storage or permissions

On Android, an app that has not been granted file access will show you a file picker that appears to work and then import nothing. On iOS, files sitting in iCloud Drive but not downloaded to the device show in Files with a cloud icon and fail to open.

Fix: tap the file in Files first and wait for it to download locally. On Android, check the app’s file permission in system settings.

Also: a genuinely full disk causes silent import failure in almost every app, because extraction needs somewhere to go.

6. The file is actually corrupt

Last, because it is the least likely, and because you cannot fix it — only identify it.

Test: copy the file, rename the copy to .zip, and try to open it with your system’s archive tool. A healthy pack opens and shows a manifest.json or similar plus a set of images. A corrupt one errors here too.

If it fails this test, the download was truncated. Re-download on a stable connection. If it fails twice, the file on the server is broken and it is a support ticket, not a you problem.

The order matters

Work down the list. Reinstalling the app is not on it, because it does not fix any of the six and it costs you your existing library — which is a particularly bad trade when the actual problem was a .zip extension.

One structural note

Every fix above except the last is a symptom of brush files being fragile containers passed between systems that were not designed to agree. That is not inevitable — it is what happens when each app invents its own opaque format and leaves the transport to chance.

A .apexobrush is a plain ZIP of readable files: a manifest.json you can open in any text editor plus the PNGs it references. When something goes wrong, you can look inside and see what. That does not make it magic, and it does not make it importable elsewhere. It does mean “invalid file” is a diagnosis you can make yourself in thirty seconds rather than a dead end.

Free packs to test your setup with →


Brushes that travel

Apex Olira uses one .apexobrush file across iPad, Mac and Android. Free packs need no account.

Browse the brush studio →

Something wrong here?

Formats change and vendors move things. If a step no longer matches what you see, tell us and we will fix the page.

Send a correction →