I've been practicing sight-reading on the piano, and been recording myself while doing so. What I've noticed is, my rhythm is inexact: sometimes the note lands either after or behind the beat, sometimes eight-notes are slightly shorter or longer, and sometimes the tempo accelerates as I go through the piece. After discovering this, I began to notice that it's hard for me to play an exact (or almost exact) subdivision, since my fingers won't land on the key at the precise moment, even if I can imagine how such thing would sound if they did. The problem is I don't even know if this is bad, or is just the natural way the rhythm should work. Ever since I started recording myself, I've become more and more aware of the imprecisions, even as I'm playing. Should I do something about it? If so, what?
I'm guessing that you're not a robot. I not, then nothing you do will ever be exactly precise. Heck even robots can only be precise within tolerance.
Certain things will always be off and out of place. This is a consequence of living in the real world. That being said it sounds like what you are describing can be improved.
There is a rhythm pattern that is used on in order to improve precision. I was originally taught by a piano teacher but since then I've it used on pretty much every instrument I play it goes like this.
practice passages slowly at first straight, then the first pattern then the second. Gradually increase tempo in increments (eg 60 bpm. then 64, the 70). You should find your precision improve just by doing that.
You mentioned recording yourself which is excellent for hearing what you're doing. Like I said true mathematical perfection isn't really possible. It probably isn't even musically desirable. What you describe however sounds like it needs improvement and it probably can be improved. Listen to some of the greats like Glen Gould and such and see just how precise their timing is. You can probably improve yours to their level because even their rhythm isn't mathematically perfect. They still sound beautiful though.
It depends on the precision of measurement required for you to consider it "exact". Even the most professional drummers are unlikely to play exactly on the beat, mathematically, even when it sounds like they are. This is similar to how perfectly straight lines rarely exist in nature. If you zoom in far enough you'll see the imperfections.
But as long as you keep your expectations of "exact" reasonable, yes it is possible. The question then becomes: is that really what you want? A good part of rhythmic feel relies on the player's ability to play slightly ahead or slightly behind the beat to push or pull (or, of course, play squarely on the beat). And the answer depends on context and taste.
Trust your ears. If the playback sounds like your rhythm is off and not as you intended, then it is and you should work on those parts. But don't worry about how it looks visually—say a waveform doesn't align to a grid—if it sounds good.
The rhythmic precision of good players is somewhat amazing, but exactness is more of a technological concept. In order to measure the timing accuracy of some repeating event, one needs a clock that is more accurate than the repetition rate. Of course in the modern era it is fairly easy to reliably measure timing in recorded audio down into the millisecond or even finer relatively cheaply. We also have tools that both allow one to play with greater precision, such as playing to a click, and to quantize musical performance to a grid in post production (Beat Detective, Drumagog). In this context, it is useful to remember that before mechanical clocks, at least for short durations, a group of drummers was one of the more accurate time keeping devices available.
This article gets into automatic quantitative analysis of the difference between music played to a click and that which is not:
There is an online app version which lets you upload a recording and it will do a BPM plot:
I'd say that most human drummers don't really get any tighter than to within a BPM or three across an entire song unless they are playing to a click. For live performance, even +/- 5BPM is probably not going to be noticed by most of the audience. The sensibility for modern music favors playing to a click and increasingly that is what people are used to so there's a lot of reason to either have really good time or to use some sort of external reference.
Good musicians generally have rhythm that is very solid, even without assistance. This manifests in a number of skills. Not slowing down or speeding up across a song. Being able to count off a song reasonably close to the tempo it should be played at. Being able to play different subdivisions at the same tempo. And not speeding up or slowing down at transitions or sections which are somehow different. When performing with others, if each player has decent rhythm, the group will tend to hold tempo steady reasonably well as each person corrects the others and the average is right. As the players get less tight on their own, tempo can diverge or get sloppy pretty easily.
The way one develops really good time is practicing with a metronome. (There's always some argument about this. Yes I'm sure some people are born with great time and maybe some get it by just playing along to music, but for most people, putting in time with a metronome is the way to get good time.) Playing along to a metronome or drum loop while doing general practice is huge. Doing subdivision exercises, where one plays a measure of quarters, then quarter triplets, eights, eighth triplets, sixteenths, quintuplets, sextuplets, thirty seconds, etc. is a great way to get tighter.
Try to really not worry about speed unless working to increase the tempo for a specific skill. Pick a tempo where playing is comfortable for whatever exercise one is doing. Often playing consistently at slow tempos is as difficult as playing clean at fast ones.
Recording oneself is also really useful. It is difficult to listen critically when playing and everyone's time perception varies based on many things. Listening in a different context gives clarity. From there, any time you hear something has a time issue, work on that part with a metronome.
Getting a good metronome app that allows one to program up complex rhythms and then play to that helps. I like Polynome for iOS. It allows very making complex rhythms with a full complement of drum set sounds, playlists to sequence practicing different things, and keeps track of how much time one has practiced using it to sort of gamify the experience.
There are also a number of apps that will do realtime BPM estimation while one is playing. I'm not sure how well these work for piano, but they're pretty good for drums. They tend to get confused between halftime/doubletime sections and such, but one can interpret their output easily to correct for that. I like the LiveBPM app for iOS.
All this said, good time is just one aspect of playing well. Most quality music has solid and consistent tempo, but it also has feel and dynamics layered on the framework of the tempo. Well played music usually has the beat intentionally placed a little ahead or behind the exact time grip point. One should likely view being able to play consistent, or metronomic, tempo as more of a basic skill akin to playing the note one intends to on the instrument rather than as the end goal itself.