The standard method for analyzing functional magnetic resonance imaging (fMRI) data applies the general linear model to the time series of each voxel separately. Such a voxelwise approach, however, does not consider the spatial autocorrelation between neighboring voxels in its model formulation and parameter estimation. We propose a spatio-temporal regression analysis for detecting activation in fMRI data. Its main features are that (1) each voxel has a regression model that involves the time series of the neighboring voxels together with its own, (2) the regression coefficient assigned to the center voxel is estimated so that the time series of these multiple voxels will best fit the model, (3) a generalized least squares (GLS) method was employed instead of the ordinary least squares (OLS) to put intrinsic autocorrelation structures into the model, and (4) the underlying spatial and temporal correlation structures are modeled using a separable model which expresses the combined correlation structures as a product of the two. We evaluated the statistical power of our model in comparison with voxelwise OLS/GLS models and a multivoxel OLS model. Our model's power to detect clustered activation was higher than that of the two voxelwise models and comparable to that of the multivoxel OLS. We examined the usefulness and goodness of fit of our model using real experimental data. Our model successfully detected neural activity in expected brain regions and realized better fit than the other models. These results suggest that our spatio-temporal regression model can serve as a reliable analysis suited for the nature of fMRI data.