Unreal separates settings into two parts: Project Settings and Editor Preferences. Project Settings are shared between everyone working on the project, and Editor Preferences are per-machine.

Editor Settings have a lot of less-known useful settings, even after 4 years of working with Unreal I'm still discovering new things that help my workflow!

Thanks to everyone on Twitter that suggested stuff!

Enable Live Coding

General > Live Coding > General > Enable Live Coding

This might be obvious for some but a lot of new programmers coming to Unreal don't know about it. It's possible to recompile while keeping the editor running by using Live Coding. Trust me, it's amazingly useful.

Always Open In Tabs, Not Windows

General > Appearance > User Interface > Asset Editor Open Location

Unreal's default behaviour when the user opens an asset is to sometimes open it in a docked tab, sometimes to open it in a separate window. There's some logic to it but it's beyond mortal comprehension.

I am not very smart, so I prefer to make sure all new assets are opened as new tabs in the main window.

To enable this, change General > Appearance > User Interface > Asset Editor Open Location to Main Window

Open Last Level on Startup

General > Loading & Saving > Startup > Load Level at Startup

By default, Unreal will open up the "Editor Startup Map" set in Project Settings. Those settings are shared between everyone on the project, so it's rare that this gets changed during the project.

I find it useful to change "Load Level at Startup" to Last Opened so when I restart the editor over and over it re-loads the level I was working on.

Stop Escape from Closing Play In Editor

General > Keyboard Shortcuts > Play World > Stop

Pressing the Escape key stops the current play-in-editor session, but this can be frustrating because Escape is often used to open pause menus in games.

I like to rebind stop simulation to to Shift+Escape instead.

Add Properties to Favorites

This isn't an editor setting as far as I can tell, but there is a kind of hidden feature in that you can right-click properites and add them to a list of favorites.

Disable All Tutorials

General > Tutorials > Disable All Tutorial Alerts

The tutorial notification in the top-right is great at first, but its flashing can get annoying if you re-install Unreal and don't need it anymore.

Blueprint Save On Compile

Content Editors > Blueprint Editor > Compiler > Save on Compile

This is pretty self-explanatory, instead of having to hit two buttons, hit one!

Blueprint Default Pure Casts

Content Editors > Blueprint Editor > Experimental > Default to Using Pure Cast Nodes

In Blueprints it's possible to cast in a Pure way or an "Impure" way. The pure way produces a node with no Execution pin, similar to a function marked BlueprintPure. Impure is the standard way that has an execution node.

It's possible to convert between the two by right-clicking on the node and choosing

Blueprint Auto Cast Object Connections

Content Editors > Blueprint Editor > Workflow > Auto Cast Object Connections

When enabled, dragging between two unrelated pins will automatically create a cast node between them.

Break on Blueprint Exceptions

EDIT: I no longer recommend this. It gives false positives, breaking even in valid situations. For example when building a network game, the Blueprint would break on setting a parameter for a particle system as if it was null when it was valid.

General > Experimental > Blueprints > Blueprint Break on Exceptions

By default Blueprint will print Error messages to the log when trying to access nullptr pointers. This setting changes that to stop the game and open up the offending blueprint on these kinds of errors.

My Settings

I save this in MyProject/Config/DefaultEditorPerProjectUserSettings.ini because I want to inflict them on other people. And want to make sure that I have the same settings by default every time I clone the repo on a new machine.