Police say officers responded to the unnamed hotel at 4:20 a.m. on Thursday after a complaint of a sexual assault in the 900 block of Rideau Street, which is near the Rideau River.
The accused and a 14-year-old had travelled to Ottawa to attend a function, police said.
During the hotel stay, the 47-year-old man allegedly touched the teenage girl inappropriately.
The man has been charged with sexual assault, sexual interference and forcible confinement. He was scheduled to appear in court on Friday.
Police are concerned there could be other victims.
Anyone with information about this incident, or other incidents, is asked to call Ottawa police at 613-236-1222, ext. 5944, or Crime Stoppers at 613-233-8477.