I am debating whether to use an existing framework such as Bootstrap which has a decent chance of being cached vs custom CSS which has zero chance of being cached.
Which is better from a UX point of view and an SEO point of view?
From the SEO point of view, the only thing that matters is the final loading speed of your site and related with this, the amount of files you load.
If you are right saying that Bootstrap might be cached, is also true that you can load it from CDN's like MaxCDN and thus getting you one different source of loading when asynchronous sources are important in the overall loading speed. I like this method.
If you want to have total control of your files, and even addressing @Martijn reply above, you can use the Less version of Bootstrap and compile it with Gruntjs. This is absolutely amazing as Grunt validates your code, minifies it and compress in an unique file, making you have less files to load, smaller and optimized files.
As I said in one of my comments, you should go with what you feel better while developing and after that, optimize it to be small and fast.
No effect on SEO AFAIK (assuming they're about comparable in size, caching and parsespeed). About the rest, you need pro's and cons and decide based on that:
- PRO: There is a chance it's cached, granting a quicker load
- PRO: Can save development time with predefined classes and possibilities
- PRO: Can be accessed via exernal load, helping with the pageload
- CON: Takes time to learn
- CON: Has a lot of overhead, it's not specific for you, there will be code you never use
Using custom CSS:
- PRO: You can do whatever you like
- PRO: You made it, so you understand it better
- PRO: Can be made efficient, ie more lightweigth (but this takes some skill)
- CON: Takes more time to set up you own basic code
- CON: Takes 1 download before it's cached (this isnt a con IMO, only the first visit first load).
It's really a personal choice. I don't like bootstrap because it limits the things I think of ('everything' has to fit Bootstrap).
To reply to you comment below, I made my seo conclusion on the fact that they're about the same, the source doesnt affect your SEO-value (or very very minimal, never say never). You also asked wether Google checks if you cache.
I think they do, they tool PageSpeed tests for caching, but this would not matter either, because if you've done this properly for your
custom.css, it's cached in both situations (thus, rendering the difference nill (apart from 1st load)).