Iam making lag compensantion system correctly?

I Discovery about Lag Compensantion, so i started try do that, but i dont have Idea If iam doing that correctly. I send a time () when player fire a remote event to server.

    remoteEvent:FireServer(time())

So on server to get the delay i make:

remoteEvent.OnServerEvent:Connect(function(player,Time)
 local Delay = time() - Time
 print("Delay")

end)

So i use that Delay value to make the prediction (since iam making ALL the skill visual on client, and the damage on server, for that i fire a Ray cast).

Is that correctly? Also i have some quests too:

1-Should i get the Delay value and format? For example If delay os 0.1847493488383 should i format to 0.1 since 0.0184749 is a low delay so i shounldnt predict;
2-Should i make the prediction when server fire a remote event to players make the effects too?