first thing to know is average growth of the data
doesn't make sense to decrease today and increase tomorrow
free space does not have a negative impact on performance
though some jobs like dbcc checkstorage will check the free space as well
if you are on 15.7 SP100 or later you can decrease the size of the database without drop & recreate
alter database off <data device> = <size>
alter database log offf <log device> = <size>