| Pros |
| 1. Easy to implement. Development time is negligible if only strings and numbers have to be passed. |
| 2. Good for a small state. |
| 3. Good for nonsensitive data. |
| 4. Especially good for static synchronization (see "Static versus Dynamic Synchronization"). |
| Cons |
| 1. Security problem. State is passed through the wire and state encryption for sensitive data is now necessary. |
| 2. Security problem. Even with encryption, passing such data as database connection strings imposes a security risk. Internet web sites are especially vulnerable. |
| 3. Passing a relatively large state affects bandwidth and response time. Especially important for 56K modem users and mobile users. |
| 4. Custom code is needed to send and receive a state. |
| 5. Works for a Web Farm if affinity for load balancing is in place. |