If I set terms of service for my web site, visitors to my web site agree to them when they use my web site (beyond, presumably, the usage technically required to obtain the text of the terms).

It is not unheard of for web sites to charge users to access them. Usually this is implemented as a paywall, where the site refuses to provide pages until the user makes a payment. But that creates friction on the customer journey, because the visitor has to bother with advance payment.

Can I declare in my web site's terms of service that accessing my web site costs money, and then seek to collect from repeated visitors? Is there some threshold of noticability that that term would need to reach to actually be binding, since it would be highly unusual?

If I somehow could identify a frequent visitor who hadn't paid, and sent an invoice, would I get in trouble for some kind of speculative invoicing crime?

Would I win a debt collection suit against them if they refused to pay the invoice?

Would I be able to compel an ISP to reveal the identity of a subscriber in order to collect a debt from them?

  • 2
    So you want to freely serve up content to folks for a while, then spring a bill on them? At the very least that will get widespread publicity and your website's name will be trashed far and wide.
    – Jon Custer
    Oct 4, 2023 at 17:05
  • 2
    @phoog - well, suppose I walk into a cafe, they give me a nice latte, and let me walk out without comment. I do that for a few weeks, thanking them for the latte. Then after a month they bill me for 25 lattes and threaten to sue. Regardless of the legal issues, that would not be a good PR move.
    – Jon Custer
    Oct 4, 2023 at 17:58
  • 2
    How would you bill them? You can obtain the visitor's IP address, but that is not their email address, and they might be using a VPN so it isn't their actual IP address either. "Would I win a debt collection suit against them" – against who? Oct 4, 2023 at 18:13
  • 4
    I don't think an ISP will provide details of its subscribers just because you ask. Subscription services have been pretty well worked out: you pay for a login. With some they have a free usage allowance, for example Google Location Services API which used to be free to use, but now you have to provide payment details in advance, with a free usage threshold. One thing you could do, is to record IP addresses and if they make many visits without paying, deny them access. Oct 4, 2023 at 18:50
  • 2
    Funny enough, this is how PACER, the Federal court records access system works. You open an account, and they send you a bill later. Part of it is due to public fairness reasons, if your charges are less than a threshold per quarter, the bill is waived.
    – user71659
    Oct 5, 2023 at 21:49

2 Answers 2


If you have a contract, yes

See What is a contract and what is required for them to be valid?

There are plenty of service contracts that are billed in arrears: electricity, phone, internet, haircuts etc. so there is no problem with this sort of contract in general. Pay-as-you-go cloud services, like Microsoft Azure, use exactly this model although the usages is typically automated rather than manual.

Providing your customer has been made aware of the terms and has accepted them, this should be fine. However, see Are terms of service legal contracts?


In England and Wales (and I believe in Scotland) you couldn't do this. The Interfoto case makes it very clear that hiding unusual or onerous conditions in the fine print so that you can spring them on the unsuspecting customer at a later date is not allowed.

More generally, in common law jurisdictions (including the UK and the USA) contract formation is a "meeting of minds"; the two parties must have a common idea of what the agreement entails. Written terms are merely there to memorialise the agreement. If the customer doesn't realise that they are incurring a cost then they haven't agreed to those terms, and the supposed "contract" cannot be enforced.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .