As I wrote, when you _create_ (take) a snapshot of your btrfs subvolume (which could be mounted to "/" for example) it's quite literally "instant". Only when you want copy/send this snapshot to another filesystem or disk it will take some time, even if you copy/send incrementally, so only the blocks changed since the reference snapshot.
Maybe you're not using a reference snapshot at all? In which case all data (not only the modified blocks) in the current snapshot would have to be transferred.
In any case, happy tinkering 👍
Login to reply