With Google Universal Analytics you can send custom metric in two ways:
1) Attached to a specific hit
ga('send', 'pageview', {
'metric1': 1
});
2) Or you can set custom metric globally, so the custom metric will be send with all the hits on the page.
ga('set', 'metric1': 1);
In this second case, every hit of the page (eg: an event) will add a value 1 to the custom metric metric1.
In google Tag Manager you can set custom metric in the configuration panel, but this set a "global" custom metric: every hit on the page will increment the given metric (case 2).
Is there a way to send a single metric with a pageview in Google Tag Manager (like in case 1)?