There is no simple formula. As @paulmorriss said in the comments there are over 200 factors Google looks at and some of those factors have additional factors within them.
Some sites like www.seomoz.org have created their own algorithm in order to attempt to get close to Google and allow them to gain a competitive edge. In their case, they look at well over two dozen factors, many of which are external to the site itself. The amount SEO value you can tell by looking at a specific page is very small (most likely less than 30%). In order to get a more accurate SEO Score you have to look at a number of things external to that page. Here are a few:
- Age of the domain.
- Number of inbound links to the page
- Number of Twitter, Google+, and Facebook links (this is separate because these links have the no follow tag on them)
- Number of Likes from Facebook and number +1's from Google+
- The quality of the inbound links to the page. Meaning what site has the link on it and does it rank well in Google.
The point is you may be able to create a quality score internal to the page but it will not have much bearing or be relationship to Google's scoring.
The best you can hope for and probably the direction you should go is to give each page an SEO score for a specific keyword. The score would be on a linear scale (e.g. 1 to 100). You would give 20 points for having an exact phrase match in the URL, 20 for exact Title match, 10 for exact H1 match, 5 for each header tag 2 through 5, etc. That kind of score can be used to help people realize what they are missing from their webpage in relation to SEO even without telling them "If you get a score of 100 on my scoring system you will rank well in Google" which you won't ever really be able to do.