Factual error: The construction of Hadrian's Wall as shown at the end of the film is not historically accurate. A wooden wall was constructed first with a deep ditch on either side. One of the ditches should be visible as the characters approach the wall but it is not. The stone wall shown being constructed was not added until later and then it was constructed in sections. It did not become a continuous stone wall until some years later. In addition, the stone wall shown is not wide enough. Hadrian's Wall is around 2 meters wide at the top and even today you can comfortably walk on top of it.
Revealing mistake: When Dominic West is captured and chained in the Pict village, you can see a hearing device in his ear. (00:38:55 - 00:41:35)
Factual error: In multiple fights, roman soldiers were dying by arrows or small axes thrown at them and penetrating their armor. Historically the roman segmentata armor was proven to be highly protective against bows and short swords/small axes and were unable to generate enough force to pierce their body armor.
Factual error: Inchtuthil, the fort attacked at the beginning of the film, was abandoned by AD 87, thirty years before the film is set in AD 117. It was also a legionary fortress, with space for several thousand men, not a small outpost as depicted here.
Factual error: The film is set in AD 117. Agricola, depicted as Governor of Britain, died in AD 93.