I am a freelance developer. When I work on projects for a client I tend to bill to the half-hour, which has been fine. Additionally, I do my best to track each type of thing "research", "coding", "lunch", "break", etc so the client can see an itemized version of my hourly. This seems to bring them some comfort.

Recently, I've had a few clients approach me but ask that I use screenshotting and/or keylogging on my home computer (which is also my work computer). Naturally, this makes me uncomfortable. The client thinks I am lazy. To me,

  1. the risk of exposing another clients work via (2) - software becomes unpatched leaving a giant hole in my system or a screenshot of a chat with another client
  2. security implications of installing nanny-software that is effectively a RAT
  3. the direct implication the client does not trust me

These issues really bother me.

Bringing up my portfolio of satisfied clients (who do not use tracking) does not seem persuasive. If you do not trust me, why would you take the time to hire me? I am not desperate for work.

I have been in the industry a number of years at this point. I have delivered a lot of software on time and on budget. I know when hours are "deserved" vs "I overshot this, I guess I'll give them some hours for free".

Is this type of requirement common? Should I just suck it up because it's work? It makes me very uncomfortable. It signals to me a "sweat shop" mentality driven by micromanaging metrics rather than getting good software at an agreed upon price. Do people request a video feed of their mechanic fixing their car? Do they request an itemized hourly report of the mechanic they paid a ton of money for? It seems like this problem is unique to software.

  • 32
    Are these government, government contractors, or otherwise regulated clients? I know the US Government has the right to show up at any contractor's place of work at any time to audit timecards: a friend who worked from home had an auditor show up at his house for an inspection. He had to show the current open entry corresponded to the engineering work he was doing on his screen. This extends to non-government work done by contractors (due to calculation of overhead).
    – user71659
    Commented Feb 20, 2019 at 4:15
  • 25
  • 2
    Comments are not for extended discussion; this conversation has been moved to chat.
    – Lilienthal
    Commented Feb 20, 2019 at 12:45

16 Answers 16


Is this type of requirement common?

No it isn't. It's also a security issue and a sign of a problematic client. Unless you're desperate for the work I'd just refuse.

The major advantage of freelancing is that you pick your clients, your times and your conditions (these should always be clearly defined and agreed at the outset). If you allow a client to impinge on these you lose part of your advantage and your future negotiating status is lessened.

  • 29
    Agreed. This is uncommon and unusual. I would not take on a client that had this as a requirement.
    – joeqwerty
    Commented Feb 20, 2019 at 2:01
  • 156
    I agree and would even go stronger. They are already signaling that they are going to dispute OP's labor charges. Even if OP is desperate, it is still better to be idle than work for nothing.
    – emory
    Commented Feb 20, 2019 at 3:49
  • 63
    I never understand why people would even want to hire someone they clearly don't trust. Commented Feb 20, 2019 at 5:04
  • 35
    @JörgWMittag you get lots of weird stuff freelancing, sometimes it's people trying it on or establishing a pecking order, sometimes it's clients that have had bad experiences and haven't gotten over themselves. No real point trying to analyse the reasons, if you don't like the conditions refuse the job.
    – Kilisi
    Commented Feb 20, 2019 at 5:07
  • 8
    I would even go as far as to call them out on it, making sure to let them know exactly why you are refusing them, and why any respectable freelancer would also refuse them. It's plain ignorance - some one thinks they know what they're talking about but has no clue - this needs calling out.
    – ESR
    Commented Feb 20, 2019 at 16:48

the risk of exposing another clients work via (2) - software becomes unpatched leaving a giant hole in my system or a screenshot of a chat with another client

This is why I will not use screen-logging software, and I do not know of a single free-lancer who will allow it on their computer.

You likely signed NDAs with your clients. Installing this software likely breaks the NDA

How to (possibly) salvage this situation - Explain The above reason to them, and suggest other ways to build trust with them. Something like

I can't install software like that because you could inadvertently see what I'm working on for other clients. That's a violation of their trust (and possible NDA), so I can't really budge on that. I have several references XYZ if you're worried about work ethic.

  • Just turn it back on the client and ask them to insure you for potentially breaking NDA. Probably needs, I dunno, $100 million or something depending on your clients.
    – Nelson
    Commented Feb 21, 2019 at 0:33
  • 25
    If that's really your only concern you can always offer to do work for them on a device that they provide which can be set up however they want. If you actually just don't want to be monitored every minute of the day (which is a valid attitude, if harder to justify to the client) you need to know what you are going to say if they offer to provide you with whatever hardware you need on their terms.
    – Eric Nolan
    Commented Feb 21, 2019 at 9:40
  • 4
    @nelson: Know what's worse than inadvertently breaking an NDA? Doing it in exchange for consideration (which client-paid insurance would be). That's industrial espionage and you would get out from under that cloud.
    – Ben Voigt
    Commented Feb 22, 2019 at 4:40
  • 1
    @BenVoigt; No, that does not make sense. You're asking liability insurance for malfunctions in the screenshotting software. That is not at all consideration; you would never benefit from t.
    – MSalters
    Commented Feb 22, 2019 at 13:01
  • 2
    @EricNolan fair enough, but they will get billed for all the time that it will take me to set everything up to my liking.
    – Davidmh
    Commented Feb 22, 2019 at 14:08


If you work on the clients premises, using their property and licenses then they have every right to keylog and screencapture.

But that's not the case!

I'm afraid you gave them ideas with your too detailed, itemized timesheets.

Why would you even do that?

You give an estimate and once you draw up a contract you name a more accurate amount of time and price.

Once milestones are reached or the job is finished you invoice and bill your tasks / time.

If it's very different to your estimate you better talked about whatever caused the price hike when it occurred and they better agreed to it.

If they insist, thank them for considering to work with you but respectfully decline out of security concerns.

Let me reiterate:


  • 1
    Comments are not for extended discussion; this conversation has been moved to chat.
    – Kilisi
    Commented May 4, 2021 at 9:32

This is pretty common. UpWork requires screenshots for you to have escrow claims. Because of the popularity of UpWork it is safe to say this is a common practice. (HubStaff and various others operate similarly)

The Upwork client installs a program that takes a screenshot every 10 minutes and checks keyboard/mouse activity over each time slot to determine if you really were at the keyboard and approximately how active you were.

Personally I found it unpleasant at first but quickly got used to it. The clients rarely check it. It's mainly just that in the event of a dispute, the escrow mechanisms don't work without the paper trail of activity.

Note: the tracker is optional. If you don't use it then you have little chance of recovering funds as it is required for the escrow dispute resolution process.

Edit: I should add that I don't think software development is hourly work. Unless it's some kind of rote typing, most software development is about solving problems at all times of the day. I think it's more like art. You can't put Picasso in a room and say OK give me 2 paintings a day on a 9 to 5 shift, and we'll be monitoring your canvas. It's nonsense.

  • 123
    Deleting my Upwork account now.
    – Dronz
    Commented Feb 20, 2019 at 7:17
  • 86
    Did a mechanic really spend 2 days fixing my car? Did the lawyer spend all those billed hours on my case? None of these would allow me to keylog their systems or otherwise track their work.How in the world does this website think this is acceptable?! Though, judging by the extremely low, slave labor like offers on there, it doesn't surprise me. Oh and the fact that they get away with it, doesn't mean it is "VERY" common.Only if freelancers work on client site using client property.Otherwise it's two businesses engaging in contractual work. Commented Feb 20, 2019 at 8:10
  • Comments are not for extended discussion; this conversation has been moved to chat.
    – Jane S
    Commented Feb 22, 2019 at 3:06
  • 2
    How do they know I haven't gone to the extra time and effort of finding/writing a program that will automate mouse-movements and keystrokes for me? I would actively seek out a client that was problematic, do the work really quick before goofing off for the rest of the time, safe in the knowledge that their very own system was proving that I was still hard at work.. Ned Kelly (the aussie bush-ranger) was variously accused of stealing horses until one day, he thought f*^%-it, I will steal horses. A relationship opened without trust is a worthless one.
    – enhzflep
    Commented Feb 22, 2019 at 6:58
  • @enhzflep That's true. I think the challenge is how to build a platform like Upwork and be able to offer escrow services. What other mechanism apart from some kind of activity tracker is available? Your argument, while valid and important, applies to every software developer working in an open space office under visual supervision of a manager. In my opinion the primary reason that the herd flock to their offices instead of enjoying remote development is so that insecure management can deal with their trust issues on a daily level.
    – Sentinel
    Commented Feb 22, 2019 at 10:00

Others have given good answers whether or not this is normal (no!), but I wanted to give an example reaction. The tone should be confident, a kind of "take it or leave it" approach (which, IMO, this is):


I have been in the industry a number of years. I have delivered a lot of software on time and on budget. I am aware of time management and perform as you may expect from a professional.

Asking me to use tracking software gives me the impression that you do not trust me and that won't help the project for either of us. If you want, I can give some testimonials of other clients about how it's like to work with me, but using tracking software has to be a hard no for me.

Please let me know whether you want to continue with this project, [ and here something positive depending on how much you would like this project ].

  • 2
    I would add to the middle paragraph about how this is a security breach. +1 Commented Feb 21, 2019 at 14:08
  • 13
    I've considered that, or the comparison with e.g. a car mechanic, but I came to the conclusion that that doesnt matter. It doesnt really matter that they understand, all they need to know is that it isn't an option. More text will only distract (at least, so was my conclusion).
    – Martijn
    Commented Feb 21, 2019 at 14:20
  • That they asked is a red flag, so I'd inform them of why I'm declining to work for them as a courtesy, but it would be a hard no regardless of whether they changed their mind about the tracking. Commented Feb 23, 2019 at 18:19

Speaking to whether or not you should do this, I think you have your answer here.

I am not desperate for work.

One of the primary benefits of being a good freelance developer is the ability to choose your clients and work on your own terms. If you don't feel comfortable with this (and who would blame you), simply decline. Probably not someone you want to work with anyway.

It's important to remember that YOU are in charge of your business and responsible for how you do your work, how much you charge, etc. If you find yourself in a situation where you're struggling for clients or money, then by all means, reevaluate, but it doesn't sound like that's the case.

When done tactfully and with confidence, you will command respect and attract higher quality clients through a willingness to take control, dictate the process, or walk away when the situation calls for it.


Dedicated devices

Such a requirement isn't common, but it happens sometimes. One reason for highly monitored environments like this one is security controls, but security goes both ways - they don't want you to do unauthorized things, but you also don't want them to do unauthorized things with your data or, worse, data of your other clients.

This means that if something like this is implemented, it's absolutely incompatible with the notion of "my home computer (which is also my work computer)" - if they do screenshot time tracking, then that must be done on a separate device that's dedicated to their project only, at least while their project is ongoing. E.g. start with a clean wiped machine, set up things for their project (including that time-tracking thing), use that machine only for that project and nothing else, and wipe the machine as soon as the project ends, which is a common part of NDAs if you work with sensitive data of that customer.

If you're working on your home computer that contains data of other customers as well, then you can't meet such a requirement; you'd need to get a separate work machine, and you'd have to evaluate whether what they're paying you is adequate to justify that.

  • 7
    While I agree with the general premise of setting up a dedicated device I cannot upvote your answer because you suggest that burden should be placed on the freelancer; I am almost inclined to downvote it. I would have the client pay for the device and pay me hourly for all of the wasted hours of getting myself set up to work on their company device.
    – MonkeyZeus
    Commented Feb 20, 2019 at 18:06
  • 1
    @MonkeyZeus it's a matter of convention whether that burden is reasonable or not, and that depends on the industry, and also on the field of your customers. For example, I'd expect that in web development the requirement to have an isolated device would be unreasonable, but in network penetration testing a similar requirement would be table stakes; the generally accepted "standard practices" are different there for obvious practical reasons. See also companies with strict "anti-BYOD" policies where contractors can work only on company systems. Of course, that hassle and time would be billable.
    – Peteris
    Commented Feb 20, 2019 at 22:59
  • What @MonkeyZeus said. If the freelancer is going to do this for the client, all the costs of doing so must be built into the price the client is paying. And there are a lot of costs. Commented Feb 20, 2019 at 23:51
  • @MonkeyZeus And if I'd take that work at all, I'd add at least a 2x cost factor for feeling spied on and put under due stress to suppress the wish to circumvent their security nonsense. (If you have something truly security relevant, you develop it in-house on controlled hardware in a controlled environment). Commented Feb 21, 2019 at 22:40
  • 4
    @R. The only difficult part is, how do you verify you worked the hours you're billing them for setting up the isolated device with the spyware? ;-) Seriously, though, just saying "my charge for setting up a system you can spy on is $10k" maybe could be more effective than just saying "no", because then it looks like they're declining the cost rather than you're declining the condition. Plus I guess you can set that system up so you genuinely do clock out every time you move away from it, and hence be absolutely sure you aren't billing them while you're reading some other client's email. Commented Feb 22, 2019 at 0:26

There's an angle to this that I think you could take which hasn't been addressed:

Instead of posturing why you don't do this because of the risk to OTHER clients or yourself...

Explain why you don't do this because of the risks to the client requesting it

Generally speaking, you always want to posture this in terms of the person requesting it, rather than yourself, and why the requestor "doesn't actually want this". Place the negatives, and the potential burdens, squarely on them and not yourself, and posture it as something you're not doing to better serve their interests in not doing it:

"If I installed this type of software for every client, there would be the risk of a breach in my computer, and they might be able to read your proprietary data and code, which would be a security risk to you. I value you as a client, and I understand your concerns, and that's why as a professional this is simply something I do not allow, as a general rule to all my clients, for your own safety."

Posture this as you doing them a favor and looking out for them by not doing this, ever, as a general rule. If they insist, offer them a solution that would make you comfortable but places all related costs on them, up to and including that they purchase related equipment for you, and they pay you for your time setting up the associated environment(s). If they're serious and have a serious concern, they will pay for it. If they're not (or if they're just being arbitrarily abusive) they'll move on to someone else, and you will be better off for it (since you've said you aren't desperate for this work).

Contractor vs Employee

Furthermore, another angle not covered here yet is that this degree of client involvement and interference into directing your work risks creating (in the US) a legally defined employee/employer relationship, rather than one of a contractor.

If you are working as an employee of a contracting agency, this is not an issue (you are already in an employee relationship with someone in relation to the job in particular, and if your employer wants to let someone else they're contracting with direct you this much that's within your employer's purview: but it's also an onus on them to provide equipment and be liable for creating any related security risks as your employer). If you are working as a fully independent contractor (which is what I assume in this case, from tags and wording), this is a situation your clients should wish to avoid: they are commissioning work from you, not hiring you as an employee, and that distinction is actually important.

Note that this is just a rough opinion, and if you have specific concerns you should hire a lawyer to look into specific situations (and also let me insert a generic "I am not a lawyer, nor am I your lawyer/etc" disclaimer).

I would personally recommend that you be careful with how much you share with them, and posture it as a matter of professionalism that you are simply logging billable hours in relation to work product, versus detailing your day. Focus on what you got done in relation to a given set of billable hours, rather than on logging breaks/etc as such. There's a degree of oversharing which can set up the wrong expectations.

This is someplace where when working as a fully independent contractor, I would, personally, take a page from how attorneys generally handle billable hours. Yes it includes things like "research" and the time spent doing that. No it does not (that I've ever seen or anywhere I've worked, having spent time in a law office) include things like "took a break". Document what you did, clock the time on it. That's what you bill the client. The rest is actually none of their business: they're paying for a result, they're not hiring you as an employee. (unless you come to a different mutual agreement to work as an employee for them)

  • 1
    "as a general rule to all my clients, for your own safety" -- for your comfort and convenience, you are not permitted to smoke in this area. Commented Feb 22, 2019 at 0:31
  • @SteveJessop lol =) but really, as much as this can be a question of "spin", I feel like it's also one of resetting perspective/context into one that forces relevance to the person asking: make the client consider how THEY would feel if SOMEONE ELSE were the one making this request and it might impact them, and instead of trying to push something through while failing to value/appropriately consider the concerns of others, they may actually THINK about it in the way you need them to. Even outside of freelance contracting, I've found this to be a very useful tactic at work in general.
    – taswyn
    Commented Feb 22, 2019 at 16:01

No, this isn't a normal request. And from your own descriptions, I think you can improve your invoicing techniques. Clients don't care about your lunch breaks. All they care about is seeing what you did and how much it cost. Be clear, concise, and imagine you are the client reading the invoice. The goal should be, "Wow, look how much work was done in that little time!". Examples:

Bad: "2.5 hours: fixing bugs, research"

No one wants to pay for bug fixes and research! But they are happy to pay for "updates".

Good: "2.5 hours: updating interfaces, adding low battery indicator, adding flux capacitor monitoring, additional database development"

You don't need a ton of detail, just enough to show you've been busy and the hours are reasonable.

  • If they agreed (or even better requested) a bug fix, then they're willing to pay for bugfixes. No need to say you spent the time "updating interfaces" when what you actually did was "fix that thing in the interface you've been complaining about for weeks". That said, I've heard that some novice clients require a bit of education to train them out of the notion that bugs are somehow "your mistakes" and hence must be fixed on your time. I mean, they are my mistakes, but the conclusion doesn't follow. Commented Feb 22, 2019 at 0:35

Your problem around this request is based on your setup. The reason there's a privacy concern is because you haven't split up your personal and work correctly; nor have you split your clients.

By creating a single VM per client; you will at no point have any issue with cross contamination of key log data or personal data.

There are many reasons why doing this is advantageous - such as limiting the impact of malware to your business, accidentally breaking NDA's and as you just found out, meeting strange requests from clients.

Is it common practice? Well, I can't talk about freelancing, but most financial institutions use key loggers to protect themselves; often without the knowledge of the employees. It is worth highlighting that the collection of the data is legal; but the use of any passwords etc is not. The fact that they're asking for evidence that you're working the timesheet that you submit doesn't seem unreasonable; and if you have a better proposal on how you can present it then you can make a counter offer.

As for the direct implication the client does not trust me; I disagree with this blanket statement. It might be that the person who's doing the outsourcing isn't trusted; or one of many other options; and even if it is true, so what? Would you trust someone's word without any evidence to back it up? It seems actually like they're taking a very reasonable stance by wanting evidence.

You can always respond that you need to be paid in advance before delivery of the goods - which is also very reasonable.

  • 1
    Comments are not for extended discussion; this conversation has been moved to chat.
    – Kilisi
    Commented May 4, 2021 at 9:33

I personally would decline because of privacy concerns (both yours and other clients of yours).

However, I would also propose an alternative. I would ask them to provide a similar machine that would have the screenshot tracking thing and that computer could solely be used for work related to the client that requested you install the screenshotting software.

  • 3
    This is certainly a good suggestion. I think I would rather fire the client than have the additional risk of them accusing me of breaking/stealing/etc their hardware. More to the point, mailing laptops back and forth is hairy business.
    – CL40
    Commented Feb 20, 2019 at 16:32
  • Definitely not a favourable solution, but short of saying no and turning down business, this is as close as the OP can get to their client's wishes without sacrificing other clients' privacy
    – kolsyra
    Commented Feb 20, 2019 at 19:20
  • Well, you can offer to buy it and re-bill them if you don't like the postal service, or to deal with the breaking/stealing accusations just flat charge them a setup fee and say you own the hardware but will not use it for any client other than them as long as they keep sending you work (as in, a small retainer or enough work per quarter to justify the space it occupies in your house). The more confident you are that they'll refuse any such terms, the closer this is to just saying no yourself. Commented Feb 22, 2019 at 0:47

It's better to avoid uncomfortable clients.

How to do this?

Increasing your rate for them.

If they have special requests like this, just double your rate.

If they agree or not, in any case you gain.

  • 4
    This still does not solve the problem of security. Even if they offered to pay me 9x the rate they initially offered - is it worth risking another clients IP (and a legal battle over an NDA)? I guess it depends on how big "9x" is, but in general I'd say no.
    – CL40
    Commented Feb 23, 2019 at 3:09
  • 1
    if rate is very very high, you can use separate laptop for this client
    – Alexan
    Commented Feb 23, 2019 at 3:41

I have never even heard of this concept, maybe its an Americanism, but in the UK ... never.

However, I did it to myself a long time ago in an attempt to help me fill out my timesheets at the end of the week by installing a program that kept track of what program was active every few seconds. I found that, as a software developer, the 2 programs I used the most by far, and I mean over 50% of the time combined, were Firefox and Microsoft Word.

Word is obvious, all those specs and documents, but Firefox's 2 main websites viewed were StackOverflow and MSDN (3rd FYI was Outlook.. don't you love corporate work environments!)

So my problem quickly became how to tell what I was working on, if a significant amount of my time was spent reading stuff, even though it was work-related. I gave up as it was useless (if fun statistically).

So unless they're just being paranoid that you're working (rather than judging you by results) then tell them you don't use it because its a waste of time.

  • 1
    I don't think this concept is uniquely American (I am American). Many sweat shop sites use this, and I suspect the client I am referring to commonly uses these.
    – CL40
    Commented Feb 20, 2019 at 16:31
  • @CL40 ah well, that's why I've never heard of it - I don't use coding sweat shop sites! Others should do the same as me in this regard :-)
    – gbjbaanb
    Commented Feb 22, 2019 at 23:02

If you are in the UK, and claiming to be working as a contractor, HMRC (Her Majesty's Revenue and Customs) will have a field day. As a contractor, you get paid to do the work - there is no way you would let someone observe your work in so much detail unless you are an employee. So if they find out about this, it will cost you a ton of money.

This is on top of all the arguments about security, privacy, possible exposure of other clients' data and so on.


My answer is similar to Peteris's but a bit further.

While being monitored, it's foolish to not treat this workstation as known infected with spyware. It should be in a DMZ on your network (or have its access restricted to egress and nothing else).

Knowing that someone doesn't trust me is annoying--I understand they don't necessarily know I'm trustworthy--but it's still difficult to not find this insulting.

The only way I'd ever agree to a intrusion like this is if the expected pay would more than cover

a) the cost of a workstation dedicated to the task, and

b) the requisite hassle for setting it up as above, and

c) being enough left over to justify the work at all.

Even so, I'd likely consider a VM.

Obviously there are other factors: How much do you need the work? How likely is this client to bring you future work--or refer other appealing clients?

As for how common this is...I've never seen it, but that's my experience.


Screenshot time-tracking is not common. But if applied properly, it is beneficial for everyone.

1. Such a request is normal only for their own devices.

I have met such a behavior at clients and I can understand it. As far as it is happening only on their device dedicated for accessing their infrastructure, this is not a concern. For other cases, read further:

I am always using tracking of my activities with benefit, but the recordings must remain internal.

2. When working on my computer, the recording is mine, not theirs.

During my software developer contracting period, I deliberately found and installed a tool which records window on top and screenshots. It gave me flexibility on addressing multiple projects and customers, switching between them without need of immediate writing down their hours, billing them accurately and auditing myself if I needed to additionally review my time spent. Moreover, if some work got lost due to editor instability, it was easy to restore it from screenshots. At that time, I would disclose the screenshots to the customer, but only during their personal presence in my office, with me controlling the computer and without video recording. That way they would be able to verify my billed periods and even if other screenshots would briefly appear on screen for 0.3 secs, I would not see it as a concern. If they would ask to have a few screenshots, I would redact them to remove unrelated information first.

3. The recording can be fully disclosed only if made on their workstation.

Applies to both freelancing and employment. Also in my case, during my current employment period, I continue to use this tool to give accurate billing for all projects. And here, I would give the entire track to my employer, even proactively (I mean, recording is my initiative, not their requirement) because on company's computer I have nothing to hide.

Feel free to vote this answer down, but I would appreciate if you would add a comment and explain the problems you found in there.


You must log in to answer this question.

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