The below will be a good starting point for discussions.
1. How agile are you?
Heaps of agencies claim to be agile but you’ll want to check your expectations on workflow and practices are aligned before you sign up.
You might want to consider the following in your negotiations:
- Visibility of all tasks being worked on, ideally on JIRA.
- Daily communication with your project manager and developers.
- Ability to prioritise your backlog of user stories and bug fixes and willingness to adjust prioritisation when things change.
- Trust your agency to estimate tasks in either hours or story points so that you know how many tasks will be delivered that month.
- Have a set monthly retainer to spend each month on site maintenance and optimisations (whilst keeping question four in mind), rather than an ad hoc pot of money for development work.
- Clarity on acceptance criteria. Detailing exactly what you expect the task to enable the user to do, what it should look like, how it should work, what it should and shouldn’t affect (nothing is too obvious), is so crucial to avoid misunderstandings and ensure a task passes customer testing first time.
- Clear accountability. Ensure tasks are thoroughly tested by the developers before being handed to you to go through with a fine tooth comb. Ideally another developer should review the developer’s work, then it should go to their internal QA team, and only if it passes both those steps should it be passed to the client to sign off.
2. What does support include?
Every agency will charge for support differently. Some agencies might include a bit of development time in your support fee, others will clearly distinguish between ‘How do I…?’ advice and investigation work needed by developers to fix bugs.
There’s not necessarily a right or wrong way, just so long as you’re clear what the escalation processes are and who your points of contact are for different issues.
For instance, your agency may have a support desk as the first port of call, which is suitable for emailing questions like ‘How do I do xyz in the admin?’ or ‘Why can’t I get this roundel to show up on that product page?’.
If there’s a serious Priority 1 issue though (e.g. the site goes down or you can’t access the checkout page), then you’ll want to be able to phone your project manager and expect them to look into it within the hour, depending on the service level agreement that you sign.
3. How much do you charge per hour?
Obviously pricing will depend on the agency, but try to make sure you get a like-for-like comparison so that you can easily compare hourly rates across the different agencies that are tendering (some might quote daily rates for instance).
Agencies may charge different amounts depending on whether it’s front-end, back-end or strategy work. You’ll also be paying for your project manager’s time, so don’t forget to factor that in.
What may sound like more than enough hours per month on these may transpire not to be, because it has to include all internal meetings your agency has about your work (e.g. weekly estimation meetings, daily stand ups), as well as the likelihood of more than one developer working on the same task.
Some agencies will charge for client meetings, others will use their discretion.
4. How often can I flex the retainer?
Your stakeholders are pushing for Feefo reviews, or you may want to bring forward gift wrapping in time for the Christmas trading period. Whatever it is, there may be some months when you want to increase your monthly retainer to deliver functionality quicker. Running out of budget half way through the month is really frustrating for all involved.
Similarly, if you’re running a small business, budget for development may need to be diverted to other costs for a couple of months.
Make sure that the contract allows you to decrease or increase your retainer when you need to. It’s only fair to give your agency notice because they’ll need to ensure there is available resource if it’s an increase, but check that the notice they’re asking for is reasonable.
5. Will I have access to developers?
The ability to communicate directly with developers is a deal-breaker, be it via Slack or a project management platform like JIRA.
Of course, your project manager plays a pivotal role in briefing the team on tasks, but rather than he or she having to be the interface between you and the dev team when they have questions, I’ve found it much more cost and time-efficient to answer the developers’ questions directly, especially when you’re writing your own user stories and acceptance criteria.
You know better than anyone how you expect the functionality to work and you don’t want anything lost in translation. Provide anything you can to make your expectations clear – mock ups, screenshots and videos all help.
6. Who owns the code?
Firstly, check your existing supplier’s contract: if they own the code, it could be difficult and costly to migrate the code base as is to a new agency. It may end up being more cost-effective to re-build rather than to strike a deal.
If you own the code, then you should be able to migrate to a new agency (see next question), but you want to make sure code ownership is written into the new supplier’s contract too to future-proof yourself, bearing in mind the average ecommerce site’s lifecycle is five or six years.
7. Experience of migrating old code as well as building new sites?
It’s never a new supplier’s preference to take over another agency’s code base. Migrations are cheaper than total rebuilds, and agencies will usually try to sell-in the re-build over a migration. Once you’ve honed in on a new supplier, request a code audit to ensure they can take over the code base, maintain it and extend it going forward.
A decent agency will do the audit objectively, and should tell you which areas of the code may be areas of concern (usually third-party extensions or customisations by the incumbent supplier).
Do take it with a pinch of salt though; there may be an element of sucking teeth at another workman’s work, and the site doesn’t have necessarily have to pass with flying colours to be portable.
8. Do you outsource any development?
Understandably, agencies often won’t volunteer this information without being asked directly.
While outsourcing developers enables smaller agencies to offer cheaper hourly rates, you can sometimes risk quality, not to mention on a basic level, it’s tricky to work with developers in different time zones if you don’t want to be camping out in the office.
9. Who looks after hosting?
Your new agency will most likely have a preferred hosting provider. If you’re very happy with your existing hosting company, stick to your guns, as it could keep costs down not changing servers.
However, if it’s a pre-requisite for the new agency to use their hosting supplier, negotiate on cost, and decide whether you’d prefer to look after the hosting relationship directly or whether you’d rather your agency did this.
Migrating to an alternative agency can inject new ideas, enthusiasm and proactivity into your ecommerce site, which can come together to increase conversion rate and ultimately turnover of your site through carefully crafted acceptance criteria, properly tested functionality and well-considered changes.
Asking the right questions before you commit to a migration can help to ensure the new agency will be able to deliver the strong partnership that you’re after and ultimately the return on investment that your stakeholders will expect.
To learn more on this topic, book yourself onto one of Econsultancy’s ecommerce training courses.