What’s the cycles cost of an async function call to a canister?

I’m making a Method for updating user transaction history as the block chain grows. I’ll be implementing the heartBeat() method which I hear is already expensive (3_000_000 cycles per block is what I’m aware of). I’m wanting to make a call to each user’s canister to update their canister history. The cost for doing so will inform the strategy I use. So what is the cost for making an asynchronous call to a canister?