The only way I see to do this is charting them, for the time you consider that it has had activity (for example last 7 days or 30 days). If no data is charted for your BT on the chart, the BT filter is not matching anymore
I see David's comment but I read your question as "which aren't being used by users, in dashboards or in BTs" as opposed to "which have data".
To see which aren't used in BTs, I'd export the System Profile into xml. Then search that xml for any measure you'd like to remove - if it shows up in a BT description, you know it's being used there. Technically, you could try to delete the measure. When you click delete, a dialog box will tell you if that measure is being used by a BT.
To see which aren't used in dashboards, you'd have to download all of your dashboards and execute the same process as for BTs. (If you want to export all dashboards at once, the easiest way to do so is by making a support archive which only includes dashboards).
Both of these may be laborious tasks.
Thanks for your response. Suggested method is manual work and we have more than 500 measures in 1 profile. We need to do this for 3 profiles which would be tedious work.
So is there any other workaround?