Started with 50 MBps, went down to 20 MBps shortly after and is declining slowly since. Running for 7+ hours.
HDD is 5 years old, rare use but very well kept.
Edit: external 1.5 TB HDD connected over USB 3. Overwriting with zeroes while formatting using gnome-disks.
Update:
Stopped gnome-disks ~78% and continued writing zeros using dd
for the remaining sectors.
command used: sudo dd if=/dev/zero of=/dev/sda1 bs=1M seek=1001250 status=progress
(don’t copy without understanding), used seek here to skip already zeroed sectors.
write speed went up from ~14 MB/s to ~100 MB/s.
slow speed could be caused by multiple passes of overwrites by gnome-disks (not sure if it does that), or by “initializing the filesystem at the same time as zeroing” as mentioned by @ares35.
gradual speed decrement was observed in both methods, as mentioned by @Synthead.
Thanks to everyone for being so helpful.
initializing the filesystem at the same time as zeroing the drive is probably freaking the smr out and causing it to constantly rewrite tracks.
i would have separated the two operations. a sector-by-sector wipe via software which would run at the full sequential write speed the drive internals and interface supports (connecting internally would be faster), then partition and format the filesystem. being smr shouldn’t matter here when you’re writing sequentially, start-to-end.
alternatively for the wipe, use secure_erase (some usb don’t support it though), handled internally by the drive so it runs as fast as it can. still takes awhile with hdd, but can be faster than doing it via software and being limited by the interface speed.