On July 5, 2012, Ouimette signed a professional contract with the Montreal Impact, making him the first Academy player to sign with the senior squad. A couple weeks after being signed, Ouimette made his professional soccer debut in a league match against the Houston Dynamo. Ouimette came on as a substitute for Zarek Valentin in the 26th minute. Montreal went on to lose the match 3–0. On October 19, 2013, Karl Ouimette scored his first MLS goal and game winner in a comeback 2–1 victory over the Philadelphia Union. The goal proved to be decisive to allow the Montreal Impact enter the MLS Cup playoffsfor the first time in the team history. Ouimette also started both legs of the 2014 Canadian Championship helping the club to its second straight Canadian title. On February 6, 2015 Ouimette was waived by Montreal, effectively ending his time with the Impact.
After an extended trial with MLS side New YorkRed Bulls, Ouimette was signed to a deal on March 4, 2015. The move reunited him with former Impact coach, Jesse Marsch. Ouimette's debut for the Red Bulls first team came against the New England Revolution on May 2, 2015. Ouimette was loaned to affiliate side New York Red Bulls II during the 2015 season and made his debut for the side as part of the starting eleven on April 4, 2015 in a 4–1 victory over Toronto FC II, the first victory in club history. On June 23, 2015 Ouimette was selected to the USL Team of the Week for his performance for NYRBII in a 2–0 victory over Louisville City FC. On September 26, 2015 Ouimette scored two goals in extra time to help New York Red Bulls II to a 4–2 victory over Pittsburgh Riverhounds, advancing New York in the 2015 USL Playoffs. Ouimette was released by the Red Bulls at the end of the 2016 season.
In January 2017, Ouimette signed with San Francisco Deltas of the NASL Ouimette would win the 2017 Soccer Bowl with the Deltas in their inaugural season. The Deltas would cease operations three days after winning the Soccer Bowl, leaving Ouimette to look for a new club.
Indy Eleven
On February 2, 2018, Ouimette signed with USL side Indy Eleven for the 2018 season. In 2018, Ouimette would make 32 starts for the club, playing the most minutes with 2842, and would score three goal. In 2019, he would make 29 starts for the club in 2019, and score three goals, including a playoff goal against New York Red Bulls II. He would re-sign for a third season with the club in 2020.