How to Build a Hackathon
I have organized three hackathons in the last three years(Codestellation), the first of which was the first event of its kind at my university. Throughout each event, I have learned what is required to run a hackathon, as well as what works and what doesn’t. This document is an explanation and codification of what I have learned as a hackathon organizer. The information here is not empirical, but I think it does a good job of explaining what needs to happen in order to throw a good hackathon. This guide/manual is not meant to be exhaustive or comprehensive, but I hope it can come in handy to anyone hoping to throw their own hackathon.
Things you need to know about your event and about your attendees before you start to plan the actual event. Thinking about these in advance of any logistics meetings helps ensure all your organizers are on the same page about what sort of event they want and who they want there.
What is a Hackathon?
A hackathon is a weekend-long(24-48hr) intercollegiate event in which programmers, designers, builders, and tinkerers come together to create things. Hackathons are a lot of fun for participants. They get to meet new people, learn about exciting technologies, and bring home cool swag. People enjoy going to hackathons because they are a means for developers, designers, and engineers to express themselves and their creativity in a varyingly competitive manner.
Who Attends Hackathons?
While many private companies now have internal, employee-centered hackathons, this document is geared towards university hackathons. Most participants of these hackathons fall into three categories, high school students, undergraduate students, and graduate students.
Why Attend a Hackathon?
Attendees have a few main reasons for going to hackathons. They are:
Prestige - winning large/competitive events looks good to future employers and gives internet cred.
Competition - some hackathons are very competitive. Attendees at these hackathons often go because they are naturally competitive and like to win. Hackathons are a sport to these attendees.
Compensation - Many hackathons offer prizes to winners. Some hackathons offer substantial monetary awards.
Learning - Some hackathons are very conducive to a learning environment. These hackathons tend not to be very competitive, but offer strong mentorship and a laid-back feel that is great for newcomers and veterans alike to learn a new skill or enhance an old one.
Fun - This is probably the largest group. Many people go to hackathons because they like to build things in a collaborative environment. These are the people who have a cool idea and just want to build stuff and have fun.
Networking - Many attendees want to achieve some sort of networking at hackathons. This could mean talking to representatives from companies or meeting other hackers. In order to cater towards these hackers, you will want to have at least a somewhat open and collaborative environment, ie. each team should not be in their own private rooms.
A successful hackathon needs to cater to these different groups, and there isn’t a one-size-fits-all model. It isn’t likely a hackathon which caters to high school students will also be very competitive or have huge cash prizes. It also isn’t likely that a hackathon catering to the “learning” crowd will equally please someone obtaining a PhD in Computer Science. It is possible to mix any of these, but certain features go better with certain attendees, so being cognizant of your attendees’ motives is important.
Before any planning can get done, you need a team to actually do it. Organizing a hackathon is a lot of work. It is significantly more work than you think it is, and the closer you get to the event, the more work it will become. Therefore, having a dedicated, reliable team is extremely important. For a small hackathon of 150-300 people, it is best to have between six and eight organizers. Larger hackathons may need a few more but not many, as organizing large teams gets cumbersome. The larger the event, the more day-of and week-of volunteers you will need, but you will not necessarily need more organizers. Small hackathons require three - six volunteers, large hackathons (1,500+) could require over a dozen.
Split the work between organizers, but one or two should be designated as “in charge.” These organizers are the project managers of the group who define what needs to get done and who is to do it. The other organizers are left to decide how their allotted tasks are to be done. These organizers may or may not decide to delegate their tasks to volunteers, but note that volunteers are not as dedicated to your event as you are, and so will not perform work at an equal level to you. They have lives outside of the event even if you don’t. Respect that.
Throughout the entire planning process, it is incredibly important that you document everything done/said. This is important to help the current organizers as well as any future organizers. During every meeting, take meeting notes, document every purchase, every sponsor contacted and what they will/won’t be giving, keep all relevant emails etc. There is nothing that shouldn’t be kept for future reference. It cannot be overstated how important good documentation is to a successful and well-organized event. Every organizer needs to document everything they do.
Documentation is very important because it will greatly decrease both the amount of effort needed for future events, and make sure everyone has all relevant information before/during your first event so that everything is done correctly and two people don’t mistakenly do the same thing twice. Further, you will need at least two “reflection” sessions, which will be much easier if you already have documentation. You should have one reflection meeting after the hackathon (no more than two weeks after) and one before you start planning your next event.
Now that you’ve thought a bit about the concept, it’s time to start thinking about the actual event. All the sections in this chapter are really important to the success of your event, and they are all interdependent. Each shapes the context of all the others.
Who is Invited to hack?
You’ve already thought about what sort of feeling you want your hackathon to have. Maybe you’ve decided on an overarching theme, or maybe you just have an idea about what environment you want. Either way, you need to codify who you’re actually inviting. Who are you trying to reach with this event? University undergrads are easy to target - they have mailing lists through their schools that are easy to get to. Graduate students are similar, but fewer in number and it can be more difficult to get an invite out to a graduate mailing list.
High school students are the hardest to target. They certainly don’t have any unifying mailing lists, and if they do, their schools will be very hesitant to give them out to you. Your best bet with high schools is contacting the science/technology departments in them individually or working with a company like Hacker Fund. Further, if you’re planning on having minors at your event, you almost certainly will need them to sign a waiver of some sort. This waiver will be provided by your venue and/or sponsor(s) depending on their level of involvement.
The decision of where to have your event is one of the trickiest you will have to make as an organizer. The cheapest option will usually be your university, though this comes with a lot of headaches.
If you choose to have your hackathon at your university, there are quite a few things you need to note. Firstly, depending on the size of your event and of your university, a hackathon may pose a significant logistical challenge to your university administrators and registrar. You have to find a way to book spaces which are close enough to each other that your event doesn’t feel fragmented (preferably in continuous rooms in one building). In order to do this, you may need to contact the Registrar, a student events administrator, a building/department administrator, and/or campus public safety. Do this as far in advance as possible, as your event is only a small concern (if that, even) to university staff and administrators. Your university will be hesitant to give out so much space for an entire weekend. You need a sales-pitch ready for them when they ask. They will ask, and if you do not have a satisfactory answer, your event will not happen on campus.
If your event is approved to be held on-campus, your university will have rules about what you can and cannot do, and regulations about how you need to go about using the space. These rules vary wildly between and within schools so I will not go into depth about them here, but make sure you know what rules you need to follow when you’re event is occurring.
If you have it a pseudo-public space like a university, there are some additional constraints and logistic concerns you will need to address like making sure that the food and swag you have purchased for your attendees is not given out to people who just happen to be in the vicinity and hear about all the free food. Many hackathons go with wristbands for this.
Hacker Space/ Event Space
These spaces are usually the simplest places to have hackathons. They have set rates and usually will give student groups a discount (or act as sponsors). Some come with perks like use of their hardware/vending machines/etc. Hacker spaces are popping up more and more, and while most of them are not equipped to handle the larger hackathons, they can usually support smaller ones. Event spaces can usually be purchased for events of all sizes. This category is best when either your university cannot support your hackathon or your university is in a location which it will be difficult for your attendees to reach. Most cities have at least one makerspace, and the larger US cities have many, so you should be able to find at least one which can fit your needs.
Lastly, some (very few) private companies are willing to host outside events in their offices. Usually, this works out as a sponsor offering their space to you as their sponsorship. This last option has the plus-side of being “free”, but in taking this option, you give up some amount of organizational autonomy, as the organization which is now co-hosting your event may have very specific guidelines as to how the event should be run.
Luckily the decision of when to have your hackathon is a fairly easy one to make. When deciding the weekend for your event, there are a few considerations you need to make:
When is your venue available? - This is the biggest factor in deciding when you can host a hackathon, and usually doesn’t leave you with too many options.
Are you looking for many corporate sponsors? - Private companies usually fund more Fall semester hackathons than Spring semester hackathons because they treat them as recruiting events. So, if you’re planning on getting many sponsors, the Fall is usually easier than the Spring. You may want to pick a weekend close to your school’s career fair, that way sponsors who are already coming out to recruit will be more likely to sponsor / send recruiters and mentors to the hackathon.
What other events are happening? - After you’ve narrowed down to a few weekends based on the above criteria, you should look at what is happening on those weekends. Is there a national holiday? A competing hackathon? A large conference? The last thing you want is to schedule your hackathon during the Grace Hopper Conference and find that you have an entire demographic missing from your event. Seriously, do not schedule your hackathon during GHC, this is important.
Hackathons can be very expensive. A small hackathon (150 - 200 people) can easily cost over $20,000 depending on what sort of experience you want for your attendees. Before you try getting that money, it is important for you to map out exactly how much the event will cost you. Doing this requires knowing what you will be feeding your attendees, what prizes will be given, the cost of shirts for organizers/volunteers/attendees/ and whatever other swag you’re looking to give out. Depending on the venue, you may also need to consider the price of that, as well as costs for security, custodial services, and media costs.
Sponsors are the most prolific way to pay for your hackathon. Many attendees will choose what hackathons to go to based on which sponsors will be there. Before contacting sponsors, make sure you have all the information they will request. Often, before sponsoring an event, a company will want a document outlining what they will receive in return for specific monetary values, as well as the location and date of the event. This document often lists various sponsorship tiers and the “perks” of each tier (ie. for $xxx, company y can do/have a, b, and c). Typical perks organizers can offer to sponsors include:
Giving away prizes (best use of sponsor API/technology)
Sending recruiters (as well as sending engineers as mentors)
Distributing recruiting material
Giving a tech talk
Speaking in opening/closing ceremonies
Having a table at the event
Having access to attendee resumes before/during/after the event
You need to decide with your team what each perk is worth to you and assign a monetary value to a package of them. This document can then be given to potential sponsors.
There are a few ways of contacting sponsors, some of which are more effective than others:
Emailing - finding a “contact us” (or better yet, University Recruiting, or CTO) email address and sending along some information about your event is usually the quickest way to proposition many sponsors. However, this method is also the least effective. When doing this, you need to make sure that you’re contacting someone who can actually help, and that your email is tailored to each company. If they think you sent the same email to 50 other companies, they aren’t going to want to take the time to talk with you.
Calling - Cold calling companies is pretty similar to emailing them, but a little more effective. Actually talking to a real person means that there is little risk of being completely ignored. However, note that trying to convince a receptionist or customer service technician that their company should give you money isn’t likely to get you very far. This method only works if you can call someone who has the ability to make a decision, or can at least advance your cause to someone who can.
Personal contacts - By far, personal contacts are the best way to get sponsorship from a company. If you know someone at the company (a manager, a recruiter, an engineer, etc), you are much more likely to get sponsorship. Talk to your contact and explain why you want their company to sponsor your event and ask them if they could help direct you to someone who may be able to help you. This method works most of the time.
Using your school - Partner with your school’s career center. They may be willing to connect you with local companies, and will know the best ones most likely to sponsor, and will often send an introductory email for you. This is a mixed bag though, sometimes school career centers are wary or unwilling to give their contacts to students for some completely absurd reason (I’m looking at you, Hyatt Career Center).
Once you have sponsors, you will need a way to accept and store money. If you are doing this through your school, they will almost certainly have a means for doing that, though it may be cumbersome and restrictive. Make sure you know what your school’s policies are beforehand. If you aren’t hosting the hackathon through your school, setting up a non-profit is a lot of work, but is the correct way to do this. Most sponsors will want to be working with a documented non-profit (schools count) because they can write-off their sponsorships as donations. It is inadvisable to have companies write checks made out to an organizer. Please try your hardest not to do this.
Katherine Cass wrote a great (and thankfully, succinct) article about convincing companies to sponsor your hackathon. You should give it a read.
Make sure that after you have paid for everything you need to pay for, you have some extra funds available for last minute purchases (maybe you didn’t order enough food, maybe you need a custodian, etc.) This emergency fund should be a pre-determined percentage of your total budget. A well-planned event should have 5-10% of the total budget in their emergency fund for use during the event. If it isn’t used, that’s funding for next year!
Getting People There
People really like not doing things. If they’re anything like me, not doing things is their favorite thing to do. That being said, presumably people who have signed up for your hackathon actually do want to go to it, but if they have to expend too much energy to do so, they will be less likely to come. So you want to have the lowest barrier to entry as possible, and that means making sure people have a reliable way of getting to your hackathon.
For hackathons with a tight budget or which only have a local scope, the easiest option is giving your attendees directions via car and public transit (assuming your location is easily accessible). Note, this option requires no money or effort on the part of the organizer, but will mean that fewer people will be able to come to your hackathon.
The second option would be to provide a travel reimbursement. Usually this is done in one of three ways:
Lump Sum - Everyone who requests reimbursement can receive up to a pre-specified amount after showing proof of the cost of their travel (usually a receipt or ticket). This option is nice for attendees because they can know that they will be reimbursed for the cost of their travels (up to a specific amount).
First come first served - With this option, there is a finite pool of money, and those that request reimbursement first are allotted the amount they request (usually up to a specific amount), and when the money runs out, no more reimbursements. This option is not as friendly to attendees because they cannot know for sure if they will be reimbursed. However, this is easier for organizers than the first option.
Bussing - If you have the funds for it, the best way to get many attendees from a specific area is to charter a bus. If your hackathon is in NYC and you know you will have 50 attendees coming from Boston, it will be much cheaper for you, and much easier for your attendees if they can take all take the same bus from a location in Boston to your event (as opposed to everyone booking their own travel and you reimbursing them individually). Generally, chartering a 50 seat bus is much cheaper than reimbursing 50 individual bus tickets.
Your event will need food, and this will most likely be the largest expense you have for your hackathon. The length of your hackathon determines how many meals you will need, but for a 24 hour hackathon, you will most likely need 5 “meals”. Apart from breakfasts, lunches and dinners, you will need to provide your hackers with a somewhat substantial midnight meal (think breakfast sized or smaller), since many of them will be staying up the entire night to work on their projects. Meals should be varied and always include healthy options. Further, make sure to account for dietary restrictions (nut-free, vegetarian, vegan, kosher, halal, dairy-free, and gluten-free are the major ones).
Throughout the event, you will also need to provide sustenance of some kind. Small (healthy) snacks scattered throughout the hacking areas or in a central location work well for this. Make sure water is easily available for the entire event and coffee/energy drinks are available for as much as possible as well.
Encouraging Healthy Habits
Hackathons are competitions, and as such, people are tempted to forgo some of their normal habits. It is your responsibility as an organizer to make sure that people are keeping themselves healthy throughout the event. This means encouraging people to sleep (sleep deprivation is not cool, nor is it healthy), reminding them to bring toothpaste, toothbrushes, and deodorant, as well as pillows, sleeping bags, and whatever else they may need to stay healthy and clean.
The organizers need a way to know who and how many people are planning on coming to the hackathon. This is a logistical necessity. You need to know how much food to buy, how to budget time, and so many more things which are dependent on the number and demographics of attendees. The two main ways to admit attendees to a hackathon are through an open sign-up (using something like typeform or eventbrite) or through an application and decision process.
For hackathons which aren’t looking to tailor their demographics too much, an open sign-up is the fairest and easiest way to go. Have a set limit on the number of sign-ups and once that number is exhausted, close the pool. Note, that many who sign-up will not attend the hackathon. Do not expect more than 75% of signups to show for small hackathons with a local reach, and 55% for larger hackathons with a further reach.
For more competitive or more tailored hackathons, organizers may prefer to use an application and select applicants for admission manually. This method obviously requires more work by the organizers, but can result in a more homogeneous event (but if you’re looking for homogeneity, maybe re-evaluate your choices and recognize that not everyone may look/think like you do).
Whichever method you use, there is some information which you should strongly consider asking your attendees for:
Full Name - because how else do you know who someone is?
Email - to mass-contact
Preferred Pronouns - Do not assume someone’s gender identity from their name or how they look.
Gender - Diversity and inclusivity are important. This should not be a binary field.
Age - You need to know which of your attendees (if any) are minors. Even if your hackathon is not allowing high school students, do not assume that you won’t have minors in attendance. Plenty of college students are under 18.
Dietary Restrictions - How else are you going to know how much tofu to buy?
Resume Link/Upload - Some of your sponsors may want to see attendee resumes.
Number of Hackathons Attended
Actually getting sign-ups and attendees to your hackathon takes a lot of work. You need to know who you’re trying to reach and how you’re going to reach them.
How you brand your hackathon is very important. The way your event is shown to possible attendees and sponsors dictates who will want to be there. A unified branding strategy goes a very long way to throwing a cohesive event. This means that your website, flyers/posters/banners, emails, and documentation should all follow the same general design. If you can, hire a professional designer or appoint one person in your team to lead the branding effort. If you’re going for a friendly hackathon, your branding will need to showcase that. If you want an ultra-competitive hackathon, that as well should be evident in the design of your branding materials.
Your website is one of the most important assets of your hackathon. Get it up and running as quickly as possible and make sure it stays up to date. Here are some things your website should have on it:
Hackathon name - Seems obvious, but who knows
Date/location - If you don’t know this when your website goes live, that’s fine. Add it as soon as you know
Sign-up/application link - Many hackathons use an external site for this. It’s less work that way.
Code of Conduct - You absolutely need one of these. MLH has a good one.
FAQ - This should include general info about hackathons, as well as some specifics about your event. What do you want your hackers to know about your hackathon?
Sponsor Info - Potential sponsors will be visiting your website. Make sure you have information relevant to them on it. This usually means some sort of explanation about sponsorship tiers/perks.
Contact info - You need a way for potential attendees and sponsors to contact you. Email is a good choice.
Once you have your design settled, posters printed, and website active, you need to start getting the word out. The easiest group to get at your hackathon will be students at your school. Send emails to the relevant mailing lists and hang flyers around campus. To market toward the hacking community at large, post to the Hackathon Hackers Facebook page, a group of thousands of hackers from around the country. You should also post to other relevant Facebook communities including Ladies Storm Hackathons and any local hacker communities.
Further, all major US cities, and many smaller cities have small developer meetups. These are informal events for local developers to talk about what they’re working on, and they’re great for marketing your event to potential mentors/sponsors/attendees. Try also to find contact info for Computer Science and Engineering departments in nearby Universities. They will often be happy to forward along an email to their students about your event. Lastly, the best way to make sure that people know about your hackathon is to personally tell them, so don’t be shy about annoying people, just do it.
Assume everyone you’re marketing to is terrified of attending a “hackathon” (not everyone knows what they are yet). If you want it to be beginner-friendly, talk to someone who is a beginner or isn’t even a techie to ask them what their hesitations about attending would me, and keep this in mind when copywriting marketing material. You may be a hackathon veteran, but not all of your attendees will be.
Staying in Touch
Before the hackathon starts, you’re going to want to make sure you stay in touch with your attendees. Many people mass-apply to hackathons so unless you remind them, they may forget to come to yours. Generally, it’s a good idea to send out a first email about 3-4 weeks before the event, another one about 1-2 weeks before, and a final email one or two days before the hackathon. You don’t want your attendees to feel like they’re being spammed, but you do want to stay on their radar and make sure they have all the information they need to be successful at your hackathon.
Decide upon a work schedule for the organizers. No matter the size of your organizing group, it is not feasible for all organizers to be on-site for the entire hackathon. If you are there for the whole event, you are bound to make stupid mistakes. A good rule of thumb for a small hackathon is to have 2-3 organizers on duty during the event while the other organizers are sleeping. It is advisable to have a small overlap period on organizer transitions. The most work is to be done during registration, meal times, and opening/closing ceremonies. You will want to have a few volunteers on duty at these times as well as the scheduled organizers.
This being said, in case of an emergency, there needs to be a way to call in all organizers. So sleep, but sleep lightly. Further, make sure you have a way to pay for any last minute purchases throughout the event. So if one member has the credit card to be used for purchases, make sure they pass it on before they go home and pass out.
9-12 Months before
Layout what you want your hackathon to look like (section one). Decide on a location and date for your hackathon. Talk about branding and mission. Gather all your organizers and decide who is doing what.
Begin courting sponsors. Private companies do not give out money they did not plan on giving out, thus they need to have budgeted for giving you this money. That means that you cannot ask them for money a few weeks before your event and expect to get it on time.
5-9 Months before
Continue trying to find sponsors. Make sure the website is up and functional. Open up registration. Start marketing your event. If this is the first time you’re holding this hackathon, this time is the most important to getting your brand recognized.
2-5 Months before
Continue trying to find sponsors. Continue marketing your event to Facebook groups, mailing lists and around campus. Marketing should be taking up a significant effort by this point. Make sure you have a means to collect money from sponsors (other than your wallet). Start searching for mentors.
1 Month before
Decide on meals (but do not order yet). Order t-shirts and swag. Continue searching for mentors. Last ditch effort to get sign-ups. Clarify with the managers of the event space that everything is ready for the hackathon and that you have a means to access the space in order to set up before the hackathon.
2 Weeks before
Buy all supplies (cups/plates/banners/etc) and non-perishable food. Send out attendee email reminding them of the event. Make sure you have all your swag (or that it is on the way). Update your website with a day-of schedule of events. People will want to know when opening/closing ceremonies are, when each meal is, and when any talks are. Include the locations of each event. Start looking for volunteers to help out with the day-of logistics.
Prepare any presentations (opening/closing ceremonies) and confirm with sponsors about any talks they will be giving. Make sure you have a means of communicating with your attendees during the event. This may be over twitter, email, a loudspeaker, or an event slack channel. Set it up and test it early. Many events actually use an event website to push out notifications and schedule help with mentors.
Make sure you have your volunteers set and they all know what they need to do. Email your judges and mentors to give them specifics about when to show up and what to do. Order your food. Some of your meal vendors may not allow you to place an order more than 24 hours in advance, but you should make sure of their policy in advance. If possible, pay for the food when you order it, instead of when it arrives. You will have other things to worry about then.
Continue marketing in full force. It is common to have a lot of signups last-minute week-of/day before/day-of thanks to huge marketing pushes, and people are more likely to commit a few days before vs a few months before.
Setup your venue as early as possible. For some venues, this is the day before the event, but for others, you will need to do this the day before your event. Make sure everything is in place for attendees to arrive. Make sure you know SSIDs and passwords so everyone has Internet access, and make sure you have power strips and extension cords if you need them. Setup a sign-in table.
Arrive at your location at least 2 hours before attendees are set to arrive for last minute setup. Some of your attendees will arrive early, so you need to be ready for them. Call all of your food vendors to confirm dropoff/pickup locations and times. Make sure everyone knows how to purchase emergency items (food/supplies etc) in case they need to.
Take a lot of pictures. Like a lot a lot. Take more pictures than you think you will need. It is best if you can hire a photographer, but if not, designate a few volunteers to take pictures and give attendees a hashtag to tweet their pictures with.
After everyone has had a chance to recover and think things over, your organizing group needs to get together at least once more for a debrief. How does everyone think the event went? What would you have changed if you could have? What went well/not so well? Go over all your documentation and update it.
Make sure you send out emails thanking every single person who helped you throw you event. This includes sponsors, mentors, judges, building managers and anyone you put time and effort into your event.
Lastly, send out a post-event survey to your attendees to see what they think. It is important that you know what your attendees think about the event they went to if you are interested in continuing throwing a hackathon and want to improve. Every hackathon you throw should be better than the previous one. You should have more and more people coming back for more, and the planning should get easier. These things can only happen, however, if you have honest attendee feedback and take very good documentation.
Publish something online about the success of your hackathon, so potential sponsors and your school can see it. This will help you the next year. Make sure you took a lot of pictures.
Thank you so much to everyone who has helped to make Codestellation a great hackathon. Thank you to my fellow organizers: Sofiya, Arya, Christine, Halley, Kiana, Talie, and Katherine. Thank you to our advisors, Ian and Tim, and thank you to all the attendees who, over the last three years, have made organizing Codestellation such a rewarding experience.
Also, thank you to Katherine Cass, one of my closest friends and former organizer of Hack CWRU, for helping me to edit this behemoth of a blog post.
Eventbrite - Ticketing management for events
Typeform - Beautiful and easy to create/share forms. The paid version is better, but the free version gets the job done for simple forms.
MailChimp - Fantastic email marketing company. Send out really beautiful and useful emails to attendees, sponsors, judges, and mentors.
Hack@Brown Sponsorship Doc - An example of a well done sponsorship document
Slack - Team messaging and file-sharing client. An invaluable resource for keeping teams on the same page and easily accessible.
Streak - Among other abilities of varying usefulness, track read-receipts for your emails so you know when they’ve been read. There are a bunch of companies that do this, any will work.
MLH - Major League Hacking is the largest hackathon organizing/sponsoring company out there. Some people like having them at their events, some do not. Katherine suggests that they are good “training wheels” for a hackathon. I can see that. I think they are a bit overbearing for small events, but your milage may vary.
Hackathon Hackers - The largest online community of hackathon attendees (56,000 members at time of writing)
Ladies Storm Hackathons - A group aimed at closing the gender gap at hackathons