Canelo and it's not even close.
Now, before you go grab another pint of Guinness, let me explain:
Canelo's PPV numbers are more significant for two reasons. The first being that he didn't have any support on his undercard. It was just him and Cotto. The other fighters on the undercard had no name value whatsoever (Yes, sadly, that includes my boy Rigo who had been out for almost a year). Compare that to McGregor who had Lawler and MacDonald on his undercard (for the WW title) and then Weidman and Rockhold (MW title) for UFC 194. Also, the promotion for Canelo-Cotto was not as good. The Fight was signed in August and they only had 3 months to really hype up the fight. They only had two episodes of 24/7, as opposed to the 3 or 4 that Mayweather or Pacquiao fights generally get. They barely went on any tours to hype up the fight. Did very few interviews with major sports networks.
Compare that to McGregor and Aldo. The promotion of their fight started in March and they went on a world wide tour for months, appeared on TV shows, did interviews with almost every major sports network. You name it. The UFC has heavily invested in this fight. The UFC treated this promotion like it was their Mayweather-Pacquiao basically.
Second, is that McGregor fights for the UFC, which is the biggest, and really the only significant organization that can put on PPV's in MMA world. The brand alone contributes to guaranteed PPV numbers.
Yet, despite the fact that Canelo-Cotto had way less promotion, way less undercard support, that they fought on a Network that has serious competition (PBC and Showtime) and still came out with 900K buys makes Canelo the bigger star.
If HBO was the only place to watch boxing, if he had Golovkin on his undercard, If they had a multi-city tour, with interviews on all the major sports networks, he could easily do well over 2M buys. He had less to work with yet still put up insane PPV numbers, the 2nd biggest of the year.
That makes Canelo the bigger star.