Mottie Author 6 Sep data: URI's could pose a DMCA risk. Almost all userstyles are below 100KB (ref) and therefore limit their use of URI encoded images due to the restrictions set by USO. You could impose a no-URI restriction if it is that much of a concern. putting CSS directly into a tag and injecting in via a .user.js is fairly simple in a .user.js and very clean There are a few reasons it is better to use a style-specific addon versus adding the style through a userscript Even though you can run a userscript at document-start there may still be a FOUC. We've encountered this problem with our GitHub-Dark Script userscript, but we've never had a problem with our GitHub-Dark userstyle. Stylesheets injected using GM_addStyle are appended to the <head> and even styles using an !important flag may be overridden by the default style if it also uses the flag. Stylus manages this problem by immediately adding the style, then moving the style after the closing body tag once the document has completed loading.