David Graves, 20, sent explicit messages to schoolgirls through social media but was caught after a victim's mother found topless images of her 12-year-old daughter. He admitted taking part in sex acts with the girl and another 14-year-old and told police: "I know what I did was wrong."
Graves, who had a stash of child pornography on a computer, was later found to have been in contact with a 13-year-old whom he also sexually molested.
The High Court in Edinburgh heard that he had also spoken to other males on the internet and exchanged information with a man in Norway on the sexual abuse of children.
A judge told Graves that for a period of just over a year he pursued a course of conduct involving the three girls.
Lord Boyd of Duncansby said: "You groomed them via social networking sites and committed the serious offences to which you have pled guilty. You knew it was wrong and you knew the ages of the children involved."
The judge told Graves that he would have sentenced him to seven years' detention, but for his guilty pleas.
He said: "I am satisfied there is no other method of dealing with you other than a custodial sentence."
The judge ordered that he be under supervision for a further three years when he can be returned to prison if he breaches licence conditions. Graves, formerly of Kirriemuir, in Angus was placed on the sex offenders' register indefinitely.