Akali has a powerful early game with her Q and Passive. She will look to harass you whenever you go for CS. Avoid letting her get free harass on you by keeping your distance and staying at max range at all times. If she does use her Q and it hits, do not walk forward for some time.
Akali has no built-in sustain and she has poor base stats. She is also melee. Use this to your advantage to trade with her early on and harassing her whenever she goes for CS. A good time to trade with her is when she has used/missed her Q.
Akali’s W is important for trading and her survivability, but it has a long cooldown. Trade and harass her whenever it's down.
In team fights, Akali will look to dive the backline and take out the squishiest champions first. As soon as she engages, try to lock her down with CC/ peel her away from yourself and your allies. CC is your biggest friend when it comes to beating her.
If Akali engages and is hidden inside her W, back away from the Shroud W until it’s disappeared. This will make it much harder for her to fight and survive if she cannot hide within it.
In the later stages of the game, try and stay as a team and try not to wonder the map alone. Akali has a ton of burst and can easily assassinate squishy targets that walk alone.
Akali becomes a monster after finishing Gunblade as this gives her healing, AD and AP and a powerful active.
Akali is capable of all-inning squishy champions at level 6 as she gets tons of mobility and damage thanks to her Ultimate R. If she hasn't been playing aggressive before level 6, expect her to do so once she gets the level up.
Try not to give Akali kills in the early game. She is a snowball heavy champion and once she has some gold under her belt, she can easily take over the map.