diff --git a/index.php b/index.php
index efe0040..1df4cc6 100755
--- a/index.php
+++ b/index.php
@@ -171,7 +171,7 @@
     if (isset($_POST['type'])) {
         switch ($_POST['type']) {
             case "register":
-                $user = new User($_POST["username"], $_POST["name"], $_POST["last_name"], $_POST["email"], $_POST["password"]);
+                $user = new User($_POST["username"], $_POST["name"], $_POST["last_name"], $_POST["email"], $_POST["password"], $_POST["organization"]);
                 if (redis_inc_ipdata(getClientIP(), "register", true) > $HOURLY_REGISTRATIONS) {
                     include $TEMPLATE . "registration_limit.htm";
                 } else {
diff --git a/ldap.php b/ldap.php
index e24fe8c..d73349f 100755
--- a/ldap.php
+++ b/ldap.php
@@ -20,13 +20,14 @@
 
 class User
 {
-        function __construct(string $user_name, string $first_name, string $last_name, string $email, string $password)
+        function __construct(string $user_name, string $first_name, string $last_name, string $email, string $password, string $organization)
         {
                 $this->user_name = $user_name;
                 $this->name = $first_name;
                 $this->first_name = $first_name;
                 $this->last_name = $last_name;
                 $this->email = $email;
+                $this->organization = $organization;
                 if ($ENCRYPT_PASSWORDS) {
                         $this->user_hash = "{crypt}" . crypt($password, '$6$' . generateSalt(10) . '$');
                         # $this->user_hash = "{SHA}" .  base64_encode(sha1($password, true));
@@ -78,6 +79,7 @@
         $info["uid"] = $user->user_name;
         #$info["homeDirectory"]="/home/";
         $info["mail"] = $user->email;
+        $info["o"] = $user->organization;
         $info["displayName"] = $user->first_name . " " . $user->last_name;
         #$info["departmentNumber"]=$user->id;
         $info["cn"] = $user->user_name;
diff --git a/templates/register.htm b/templates/register.htm
index e1dab8f..cd303e3 100644
--- a/templates/register.htm
+++ b/templates/register.htm
@@ -55,6 +55,18 @@
             </div>
     </div>
 
+    <div class="form-outline md-6">
+        <label class="form-label font-weight-bold" for="organization">Institution / Organization</label>
+        <input required name="organization" type="text" id="organization"
+            class="form-control <?php if(isset($error) && $error && !isset($_POST['organization'])){echo 'border-danger';}?>"
+            placeholder="Example University"
+            pattern=".{3,64}"
+            value="<?php echo isset($_POST['organization']) ? htmlspecialchars($_POST['organization']) : '' ?>" />
+            <div class="invalid-feedback">
+                Please indicate the institution or organization you are affiliated with.
+            </div>
+    </div>
+
     <!-- Password input -->
     <div id="password-div" class="col-md-8">
         <label class="form-label font-weight-bold" for="pw1">Password</label>
