If you have property rights to a private sim/island then you can very easily check the 'lag-time' of each script you have.
Go to World-->Region/Estate-->Debug-->Get Top Scripts...
From that window you will be able to scroll through, sort, and search a list of scripts in the sim. Each script will give you a 'time' rating that shows it's general lag. Once you find a script you'd like to monitor...be sure to refresh your search window a few times (especially if it has variable states of activity) to get an accurate reading of the lag-time throughout its entire activity cycle.
Currently, anytime I have a script ready for 'commercial release' through my store, I'll go through these steps and I've found the following:
Any well-made/well-thought-out script should be able to achieve a lag rating if less than 0.01 through most of its existence/activity. I generally try to hold myself to 0.005 or less.
The lowest return number a script will ever give you is 0.001. However, you'd be surprised how many 'complex' scripts you can get to return a rating like that.
The NUMBER OF SCRIPTS actually doesn't matter so much. It is the time rating on each of them. My favorite example is that I have a rental box for sale with a lag-rating of 0.005 seconds. I compare myself to another very, very popular rental box that has a lag-rating of 0.05 seconds. In other words, 10 of their rental boxes cause as much lag to a sim as 100 of my rental boxes.
Things to avoid if you want to stay away from lag:
llSetTimerEvent()
llListen(0, ""

<--Note I added the "0" channel there...most private channel listens don't 'cause too much lag, because they only switch 'on' when something is said on their channel.
llSensor/llSensorRepeat()
llEmail()
There are a few others...but those are basically your main targets to remove when trying to make a script more efficient.