Don't use offset to compensate for visual/input lag.
One alternative (the most common for osu!standard players) is setting the offset so the music matches the hitsounds when you are hitting with perfect timing (according to the game), and learning to press everything earlier compared to the music (with practice this becomes automatic and players do not even realize they are hitting early, noticing it is counter-productive). The most reliable way to find the offset when using this method is recording gameplay audio and then analyzing the waveform of the recording in audio software (usually you want to match the peak of the hitsound with the visible peaks in the music from percussion sounds or similar). The offset when matching music and hitsounds is usually rather small (less that +/-15ms).
Other alternative would be muting hitsounds, and set the offset to a value where the player feels the keypresses match the music when hitting with perfect timing (according to the game). Depending on hardware and player perception, the offset when using this method could be much higher, up to around ~50ms. A similar alternative is recording gameplay with a mic (so it captures both speakers and keypresses), and adjusting the offset so they sound from the keypresses match the music.
Other alternative, valid if you get low UR when playing, is to maximize your accuracy in-game by adjusting offset according to the timing results information in your replays. For example, in a long enough map, if you you get -9ms +/- 5ms early/late average hit errors, and around ~80 UR, then you should adjust to about (5ms-9ms)*1.34 = -5.5ms (for beatmap offset, if you set it to universal, invert the sign) to maximize accuracy (formula valid if the offset to adjust is small, and the player hits sliders equally as well as circles with respect to timing). Adjusting universal offset with a map you can play with your eyes closed (for example the keyboard latency map extended to have more circles) is a good choice for this, since you eliminate the visual timing bias; after that, you could test maps without sound at all and apply a pure visual offset (as opposed to the regular offset, which is both audial and visual) accordingly (that would be done by changing the approach circle and/or the hitcircle sprites in osu!standard; though that is hard in this game mode, since the change in those sprites given a certain amount of visual offset depends on AR; so it is harder to time things visually unless you stick to a single AR or change your skin based on the AR you play).