/snap directory is, by default, where the files and folders from installed snap packages appear on your system.
It has the following structure:
/snap/bin - Symlinks to snap applications /snap/<snapname>/<revision> - Mountpoint for snap content /snap/<snapname>/current - Symlink to current revision, if enabled
A file manager, or the output from some storage-related commands, will show the files and directories within /snap taking up space:
$ du -hs /snap/vlc 766M /snap/vlc
However, these files and folders are mounted from the heavily compressed data that’s stored within the original snap, located in /var/lib/snapd/snaps. These snaps take far less space on your system than their mount points imply:
$ mount | grep vlc /var/lib/snapd/snaps/vlc_555.snap on /snap/vlc/555 type squashfs (ro,nodev,relatime,x-gdu.hide) $ df -h Filesystem Size Used Avail Use% Mounted on /dev/loop12 196M 196M 0 100% /snap/vlc/555 [...]
For a detailed overview of how snaps are constructed, see The snap format documentation.