When comparing BrowserStack vs CrossBrowserTesting, the Slant community recommends BrowserStack for most people. In the question“What are the best cloud-based cross-browser testing services?” BrowserStack is ranked 1st while CrossBrowserTesting is ranked 2nd. The most important reason people chose BrowserStack is:
IE, FF, Safari, Chrome and Opera come with additional web development browser extensions installed, such as Firebug or YSlow.
Ranked in these QuestionsQuestion Ranking
Pros

Pro Good selection of developer tools
IE, FF, Safari, Chrome and Opera come with additional web development browser extensions installed, such as Firebug or YSlow.
Pro Easy to use UI
Pro Huge variety of OSs, browsers and devices
There are over 200 desktop/mobile/tablet browser-platform combinations possible.
Pro Integration with CI services
Pro Get screenshots across many devices
Can request screenshots from many devices for comparison.
Pro I can easily test websites on my local development

Pro Free JS unit tests for open-source projects
Developers are advised to use the contact form. The JavaScript API is free for open source projects. Unclear whether automated testing with Selenium is also free - apparently not?

Pro Selenium automation integration

Pro Run concurrent tests in parallel
Open source project accounts are limited to at most two concurrent VMs.

Pro Might be able to test on real iOS devices
It's not very clear if real iOS devices are available for automated testing.
On one hand, https://www.browserstack.com/mobile-browser-emulator is all about emulators for both Android and iOS.
On the other, https://www.browserstack.com/automate says
"Test across real iOS devices and Android mobile emulators"
Then again, https://www.browserstack.com/list-of-browsers-and-platforms?product=automate lists "real iOS devices".

Pro Automate browser *extension* testing
Can automate tests for Chrome and Firefox extensions using Selenium.

Pro Free manual testing for CodePen projects
Put your code on CodePen and you can manually test it with CBT from the "Choose a View menu".

Pro Uses real browsers, not emulators
CBT uses real, physical devices for live (manual tests). Check the pictures on their blog post.
Automated tests use real Android devices (Nexus, Galaxy) and iPad and iPhone simulators.

Pro Community / forum
Only 350 users, likely because the Forum isn't linked prominently in the top nav menu and because it uses a crappy engine.

Pro Record videos
Record videos of a URL in the browser/OS combination manually or automatically via the API.

Pro Screenshot comparisons
Automated screenshot comparisons report differences in layout. Manual side-by-side comparison also available.

Pro Selenium testing
Selenium automation for mobile and desktop browsers, using scripts easily recoded with Selenium Builder.
Cons

Con Sessions are rejected instead of queued up when all VMs are in use

Con Security incident in 2014

Con Real Apple devices are unreliable as of August 2015
Real Apple devices are a new feature that BrowserStack has introduced. At the moment (August 2015) there are unreliable. Excerpt from an email reply from BrowserStack support:
we provide real iOS devices (Beta) and iOS simulators for Selenium browser testing on Automate. Since these devices are in beta, you might encounter a few problems while running tests on them.
To avoid this issue, we would suggest you try running your tests on iOS simulators.

Con No Linux support

Con Uses Android emulators for mobile testing

Con May be unreliable
The same test may succeed for some users and fails for others. Apparently there are problems with the test client running on Windows.

Con No longer free for CodePen projects
Con Re-use of VMs across different customers
Con Slow and unstable

Con Not a sponsor of the Selenium project

Con Typos in the documentation
"relavent", "retreive"

Con Can't change physical iOS device orientation
All iOS devices are physical and arranged in portrait mode. Emulators/simulators and Android devices can change their orientation via a button or keyboard combination.

Con Very slightly misleading Selenium examples / documentation
The Selenium WebDriver script examples, by default, don't explain what to put in browser_api_name
and os_api_name
. This leads to an UnknownError: Invalid browser_api_name / os_api_name combination specified
error, if you just copy and paste the script.
Instead, first select an OS and browser combination, and the script wizard will fill in the '?'s for you.
Alternative Products
