Understand disk space, compression, and FFmpeg
A detailed guide to what Hindsight stores locally, why storage changes over time, how compression works, and what to do when usage looks high.
Why Hindsight uses disk space
Hindsight builds a searchable local timeline from the things it captures on your Mac. That timeline needs disk space because Hindsight is not only saving text. It also keeps enough visual history to let you open a result and understand what was on screen at that moment.
The exact amount of storage is different for every Mac. It depends on display resolution, how often your screen changes, how many hours Hindsight records, whether audio transcription is enabled, which transcription model you download, and how long you keep local history.
Hindsight’s Storage settings show Current Disk Space Used for local history. That number includes the local timeline data Hindsight manages, not every byte on your Mac that might be related to the app. The app itself also takes space because it includes the tools needed to run and compress history locally.
What Hindsight stores locally
Hindsight stores local history in a private Application Support folder for the app. The storage area is organized around a Memory directory with several parts.
index.dbstores timeline metadata, OCR text, search indexes, frame references, and audio transcript records.Thumbnailsstores encrypted thumbnail files used when the timeline needs a still image preview.Segmentsstores encrypted compressed video segments that preserve the visual timeline more efficiently than keeping every screenshot as a standalone image..encodingis temporary working space used while Hindsight is building a compressed segment.- Transcription models are downloaded separately when you enable audio search.
The database uses SQLCipher encryption. Thumbnail and video files are also written as encrypted files. This protects stored history on disk, but it does not make the files free. Encrypted data still occupies normal disk space.
Why storage usage is not a simple minutes-to-gigabytes number
Two people can run Hindsight for the same amount of time and see different storage usage. The largest factors are content, resolution, and retention.
A mostly static screen compresses well. A screen with video playback, animations, screen sharing, design work, or constant motion uses more space because each captured moment contains more visual change. Larger displays can also use more space because there are more pixels to represent, even though Hindsight caps stored visual dimensions before writing thumbnails and video frames.
Hindsight also skips duplicate visual frames. If the screen has not meaningfully changed, Hindsight does not need to save the same moment again. This is why an idle workday can use much less space than a day full of meetings, video, dashboards, and browser tabs changing every few seconds.
How often Hindsight captures
By default, Hindsight checks the screen every 2 seconds. A check does not always become a stored frame. Hindsight fingerprints the screenshot and compares it with the previous captured frame. If the new image is close enough to the previous one, it is treated as a duplicate and skipped.
That means storage is affected by both time and activity:
- More active screen changes usually create more saved frames.
- Repeated or still screens usually create fewer saved frames.
- Recording for more hours creates more opportunities for frames.
- A shorter retention period removes old frames sooner.
This is also why storage can grow quickly during visually busy work, then grow more slowly while you read or leave the same window open.
How thumbnails are stored
For each saved visual frame, Hindsight creates a thumbnail for fast timeline previews. Thumbnails are capped to a maximum dimension of 1440 pixels and saved as JPEG data before being encrypted on disk.
Thumbnails are useful because they let the timeline load previews quickly without reopening a full compressed segment every time. They also make search results feel responsive.
Thumbnails are only one part of local history. If you see disk usage grow, it is usually a mix of metadata, thumbnails, compressed visual segments, and audio transcription data.
How compressed visual segments work
Hindsight does not keep every captured screenshot forever as an individual full-size image. Instead, it groups visual frames into MP4 segments.
Each segment can contain up to 150 saved frames. Hindsight treats each frame as representing 2 seconds of timeline time, so a full segment represents about 5 minutes of saved visual moments. Real elapsed time can be longer when duplicate frames are skipped, because skipped frames do not need to be written into the segment.
Before compression, Hindsight writes temporary JPEG frame files into .encoding. Once a segment is ready, Hindsight runs FFmpeg to encode those frames into an MP4 file, encrypts the finished segment, moves it into Segments, and removes the temporary working directory.
This is why disk usage can briefly spike. During compression, the temporary JPEGs and the finished video can exist at the same time. After the segment closes successfully, Hindsight cleans up the temporary files.
What FFmpeg does
FFmpeg is the media tool Hindsight uses to turn many captured visual frames into compact MP4 video segments. You usually do not need to install FFmpeg yourself. Hindsight bundles its own signed FFmpeg copy inside the app so compression can work out of the box.
The bundled FFmpeg payload lives inside the app at Hindsight.app/Contents/Resources/ffmpeg. Hindsight also checks common system paths as a fallback, but the normal path is to use the bundled copy.
When Hindsight closes a segment, it runs FFmpeg with settings designed for local history:
- The input frame rate is
1/2, which means one visual frame every 2 seconds. - The video codec is
libx264, which produces H.264 video. - The preset is
veryfast, which keeps encoding responsive. - The CRF value is
34, which favors small files over pristine video quality. - The pixel format is
yuv420p, which keeps MP4 playback broadly compatible. - The output is prepared with
+faststart, which makes the segment easier to open quickly.
These settings are intentionally different from settings you would use for a movie export. Hindsight’s goal is not cinematic quality. The goal is a readable, searchable visual memory that uses far less disk space than raw screenshots.
What happens if FFmpeg is unavailable
If Hindsight cannot find an executable FFmpeg, it cannot compress local history segments. In that case, the app reports that FFmpeg is required to compress local history.
This should be rare in normal customer installs because FFmpeg is bundled with Hindsight. If it happens, the most likely causes are a damaged app bundle, an incomplete update, or a modified app copy. Reinstalling the latest Hindsight build usually restores the bundled FFmpeg files.
You should not replace files inside the Hindsight app bundle manually. A modified app bundle can break code signing, updates, notarization, and local compression.
Why the app bundle is larger than a simple menu bar app
Hindsight includes more than the visible menu bar interface. The app bundle contains the app code, update support, local processing code, and the bundled FFmpeg binary with its required libraries and licenses.
That bundle size is separate from your local history size. Deleting history can reduce the storage used by captured timeline data, but it does not make the app bundle itself smaller. The bundled compression tools remain installed because Hindsight needs them for future captures.
How audio search affects storage
Audio search has two storage parts.
First, Hindsight downloads a local transcription model. Models run on your Mac and download once. The default English Base model is about 145 MB. The Multilingual Base model is also about 145 MB. Larger multilingual models use more space, with Small around 480 MB, Medium around 1.5 GB, and Large v3 around 3 GB.
Second, Hindsight stores transcript records so audio can appear in search. The transcript text is much smaller than visual history, but it still contributes to the local database and search index.
If you do not need audio search, disabling audio capture and removing unused downloaded models can reduce total app-related storage.
How retention controls disk usage
Retention is the main long-term control for local history size. Hindsight can keep history for 1 week, 1 month, 3 months, 6 months, 1 year, or forever. The default is 3 months.
When you reduce retention, Hindsight removes frames and audio chunks older than the selected cutoff. It also purges deleted frame data and removes a compressed segment when no remaining live frames reference that segment.
Reducing retention saves disk space, but it also limits how far back you can search. Choose the shortest period that still matches how you use Hindsight.
Why disk usage can stay high after changing retention
After retention changes, Hindsight deletes old database rows, thumbnail files, audio chunks, and unused compressed segments. If a segment still contains at least one frame that is inside your retention window, Hindsight keeps that segment because the remaining frame still points to it.
This is normal. Storage may drop in steps rather than perfectly matching the new retention period immediately. It can also take a moment for the storage number to refresh.
If usage still looks unexpectedly high, open Settings again and check the displayed local history size after Hindsight has had a chance to apply retention.
What to do when disk usage looks too high
Start with the controls inside Hindsight rather than deleting files in Finder.
- Open Hindsight Settings.
- Go to Storage.
- Check Current Disk Space Used.
- Reduce the retention period if you do not need older history.
- Keep Hindsight open long enough for retention cleanup to run.
- Go to Audio settings and remove transcription models you do not use.
- Review excluded apps if specific apps create noisy or unnecessary history.
- Consider disabling recording on battery if you do not want Hindsight capturing during mobile use.
If a particular workflow uses a lot of space, it is usually because the screen changes frequently. Video calls, video playback, live dashboards, design canvases, development tools with constant output, and screen recordings all create more unique frames.
What not to delete manually
Avoid manually deleting index.db, Thumbnails, Segments, or .encoding while Hindsight is running. Those files reference each other. Removing only one part can leave the database pointing at missing files, or leave files that the app can no longer account for cleanly.
Use Hindsight’s Storage settings when you want to reduce local history. If you need to remove all local app data for troubleshooting, quit Hindsight first and make sure you understand that this removes searchable history from the Mac.
How to think about compression quality
The compressed segments are meant for recall, not archival recording. Hindsight compresses frames aggressively because the important job is to recover context: which app was open, what text appeared, what page you were on, and what was happening around a search result.
Text, app layout, and broad visual context should remain useful. Fine details can be softer than the original screen because Hindsight scales stored frames and uses high-compression H.264 settings. That tradeoff is what keeps a long-running local timeline practical.
When to contact support
Contact support if Hindsight shows a compression error, reports that FFmpeg is missing, or storage keeps growing even after you shorten retention and let cleanup run.
Include these details:
- Your macOS version.
- Your Hindsight version.
- The retention period selected in Settings.
- The local history size shown in Storage settings.
- Whether audio search and transcription models are enabled.
- Whether the issue started after an update, reinstall, migration, or crash.
- The exact error message if Hindsight shows one.
Those details make it much easier to separate normal local history growth from a compression, retention, or installation problem.