Depending upon your requirements dd can be useful but doesn’t produce a complete image as it is known dd omits OOB (out-of-band) metadata etc.
There are other trade off methods. One that might be useful to know, which I am aware that doesn’t require dd, such as using adb and overwriting the recovery partition with extract and harvesting software followed by a device reboot and directing the target device into recovery mode. Using this method and excuting the new software an image can be obtained plus the OOB metadata can be recovered too; but as said this method is at the expense of overwriting existing software in recovery partition. It is noted that very often there is no evidence in the recovery partition, which usually contains software that might be used for performing maintenance tasks…