UX prototyping: Invision vs Adobe XD vs Sketch

A while back we used Invision to demo and send prototypes to clients, but we've recently cancelled our membership as we just don't seem to use it anymore. Recently I tried out Adobe XD to demo some wireframes to an overseas client. It went really well. Being able to go through the wireframes click by click with the client during a Skype call was invaluable. However, Adobe XD is still in it's early stages so I'm interested in exploring what else is out there.

I'm looking into the 3 big players; Invision, Adobe XD and Sketch to see what each one has to offer and establish which one works best for me.

Prototyping

I've spent some time with Adobe XD and Invision (although I still need to push them a little further) and whittled my thoughts down to the follwing pros and cons for each.

Adobe XD

Pros:
• Quick and easy to copy and paste designs from Illustrator. A programme I'm very familiar with for wireframing.
• Prototyping view - You can create interactions / user flows quickly and easily with drag and drop between artboards.
• It's a desktop app. It's super fast and everything feels really easy and smooth to use.
• It's an Adobe app, so in time it's likely to work very well with other Adobe apps.

Cons:
• It's tricky to update the designs (when brought in from Illustrator). When you replace the design, it clears the interactions for that page.
• Interactions are limited. Although looking at the feedback forum, I'm guessing they will be releasing micro interactions fairly soon; side scrolling elements, opening / closing menus, fixed headers etc.
• You can't copy interactions across from one artboard to another.


Invision App

Pros:
• You can sync files (jpg, png, pdf, gif) either by uploading to the site or if you install the Invision sync desktop app, you can sync files direct from a folder everytime you save the file.
• Various interaction features - fixed headers, overlays, animated gifs which can be triggered by different user gestures. This makes the prototype almost seem real.
• New integrations with Photoshop allow you to save out layers as separate screens, all from one file. I haven't tried this feature yet, nor am I that keen on it as PSD file sizes could become unmanageable.
• From what I've read it integrates well with Sketch too, but I'm yet to try Sketch out.

Cons:
• You have to create interactions on a page by page basis. It would be nice to see a user flow overview between the artboards. Invision have just acquired SilverFlows, so perhaps this is on it's way.
• It's an online app, which makes it feel a little clunky at times. It would be great if it could be installed as a desktop app.