So there are two way of writing a site's page title:
Meow | Photo Magazine
Meow - Photo Magazine
Which one is better (for SEO and for users)?
It makes no difference to SEO. Just remember to put your keyword at the beginning of the title and the branding at the end. Search engines always place more importance at the beginning of a text block and you should always rank for your branded terms. Check out this resource of best practice for writing meta titles:
I would say that "-" is better for users. The minus/dash is a "regular" character they are more likely to have come across and know the location of the key.
Stack Exchange uses the "-" to separate the prepended tags from the actual title. This question is:
seo - Which symbol should I use in Meta Title: “|” or “-”? - Stack Exchange.
The Guardian uses "|" to separate the title from the name of the paper:
Latest news, sport and comment from the Guardian | The Guardian
Given that both sites rely on SEO it clearly doesn't matter which you use.
I would suggest you run searches for keywords related to your market see what others are doing. You'll most likely see a mix of "-" "|" and commas. Running a few competitive searches you'll see sites using all of the above so it doesn't matter to much as long as you don't stuff it with keywords, maybe throw in a long tail and keep it under 70 characters
Trust in most cases the separators in the title tags are used to distinct two separate names or titles (Organisation/Website/... FROM Subject/Title/Content/Example...). For this I trust the ':' symbol is also good option. Think this way have more natural look and reading.
Somebody: Something ...
I prefer to use "-" and "|" together whenever possible in the interest of "User Experience". What I mean by that, is I believe the variety of using 2 different separators adds context to the human subconscious. So I will use the "-" to seperate my keyword from a call to action or secondary keyword, and the "|" to further separate the brand or business name because it is slightly different content than the keywords/cta.
Example 1: A cool device - Fix your problem | MySite
Example 2: A cool device - Fix your problem - MySite
I believe that example 1 is easier to conceptualize. It differentiates the brand name from the rest of the title more efficiently. This does not directly affect SEO, but anything to do with the subconscious of the human mind will affect CTR and that in itself is important to SEO. Minor details here :)