Table of Contents

Field Types

Danielle Kellogg Updated by Danielle Kellogg

What are Field Types?

Fields are used to define specific attributes of a table. Knack offers a wide variety of field types, each with its own unique behavior and options.

Becoming familiar with the types of fields at your disposal will enable you to get the most out of Knack. For example, storing multi-part data like a date or a full name in a field of its own type will let you sort that data or extract individual parts of it (via equations or text formulas) down the road.

The following is a guide to field types that includes a description of each type’s recommended usage, its options, and what it looks like as a form input.

Changing Field Types

Fields can be changed from one type to another. To change a field type, click on the text that described the field type:

This will open a editor to select the new field type. Changing the field type could alter the field's data in your records, so you will see a confirmation if the field type is compatible with the original field type.

Text

Short Text

Short Text fields are used for text characters and do not require any special formatting. Used for titles, names of places or things, and other information which only requires a few words.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Must be unique: Setting to Yes means the value for this field must be unique; no other record can have the same value.
  • Default: This value will be used by default if no value is entered. This value will also be used to populate any forms used to add a new record.
Example
image alt text

Paragraph Text

Paragraph Text fields are used for text that is longer and might need multiple sentences and paragraphs.

Settings

There is no limit on number of lines or characters allowed in this field type, although practical and display limits apply in what is usable in a long block in a Rich Text field.

  • Required: If checked, this field must have a value before a record can be added or updated.
  • Must be unique: If checked, the value of this field must be unique. no other record can have the same value.
  • Default: This value will be used by default if no value is entered. This value will also be used to populate any forms used to add a new record.
Example
image alt text
When used on a Grid view, options to truncate the text displayed at a character limit you set is available. Once the text is past that character limit, it then shows a "Show More" link to expand the cell in the table. A "Show Less" link is displayed when the content is expanded to collapse it again.

Rich Text

Rich Text fields are used when you need to add more rich formatting and HTML to text. When edited, a rich text field will have a WYSIWYG interface for formatting the text with styles like bold, bullets, and more.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Must be unique: If checked, the value of this field must be unique. no other record can have the same value.
  • Default: This value will be used by default if no value is entered. This value will also be used to populate any forms used to add a new record.
Example
image alt text
Rich Text fields have a limitation of just over 30,000 bytes of information. Bytes roughly convert 1:1 to character count, with the exception of character based languages. Character-based language characters must be converted with UTF-8 encoding and this conversion uses anywhere from 2-4 bytes. Inserting more information than this limitation will result in an "undefined" error when trying to add or update the record.

Text Formula

Text formulas are used to combine data from multiple fields and to extract data from individual fields. See the Text Formulas article for more information.

Number

Number

Number fields are used for values that are added, counted, or measured. Values can include (or not include) decimal places and formatting of your choosing.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Must be unique: If checked, the value of this field must be unique. No other record can have the same value.
  • Decimal places: A number of decimal places to include when displaying the number. This does not affect how the numbers are stored in the database - only how they are displayed. If the stored number has more decimal places than this option, the displayed number will be rounded.
  • Thousands: You can choose none, comma, period or space to separate thousands in large numbers. For example, if you choose 'comma', 80000 would display as 80,000.
Currently if you set thousands = period, you also must set decimals = comma even if your field does not have decimals. The decimal places will equal 0 in this setup.
  • Format: Whether to format your number with currency letters or your own custom before and after the text.
  • Default: This value will be used by default if no value is entered. This value will also be used to populate any forms used to add a new record.
A number field 'allows' non-digit characters to be entered, but converts them to 0s upon submit. If you need to add validation to avoid this scenario, you can see our conversation in this forum post.
Example
image alt text

Currency

Currency fields are like numbers, but with a currency symbol and formats for decimals and commas automatically included.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Must be unique: If checked, the value of this field must be unique. no other record can have the same value.
  • Format: The type of currency used to format each number. If you need to use a custom currency symbol, use a Number field instead (see above).
  • Default: This value will be used by default if no value is entered. This value will also be used to populate any forms used to add a new record.
Example
image alt text

Equation

Equation fields are used to perform calculations with your data. See our article on equations for more information.

Formula

Formula fields are used to run calculations on connected records and store the total of that calculation. With formula fields you can calculate the sum, min, max, average and count.

For example:

  • Order Total: An Order record sums the prices of all the Item records connected to that Order.
  • Average Sale: A Salesperson record averages the total of all the Sales records connected to that Salesperson.
  • Employee Count: A Company record counts all the Employee records connected to that Company.

See our article on formulas for more information.

Auto Increment

Auto increment fields are used to give each record a unique ID by starting at one (1) and adding one for each new record. If you'd like to start with a number different than 1, check out the How To Start an Auto Increment Field from Any Number help article.

This increment is maintained even when records are deleted. If all of an table's records are cleared from an app’s database, it will be reset.

Settings

There are no settings for an auto increment field.

Auto increment numbers cannot be manually edited and therefore cannot be added to forms.

To reset an auto increment field, you need to use the delete all records option in the Records section.

This will permanently delete all of the records in this table, so be careful!

Choice

Multiple Choice

Multiple Choice is used when you want to present a group of options to select from.

Settings

Required: If checked, this field must have a value before a record can be added or updated.

  • Options: All choices available to be selected. Use the red and green icons to remove or add options.  Click and drag options to rearrange the order in which they appear. The "quick" edit link allows for you to add many multiple choice options through typing or cut and paste. Dropdown fields will display in the order listed in this field set up. Some views, such as pivot table columns do not allow for the reordering of these columns outside of alphanumeric.
Updating an existing multiple choice option will not update records to the new value. If you need to update an existing value that's already being used, it's best to add the new value independently and run a batch update to update the old values to the new values.
  • Default Option: The choice which will be selected by default on your forms.
  • Sort: This option will define how the multiple choice field will be sorted.
    • Alphabetically will sort the multiple choice options in alphabetical order.
    • Custom will allow you to customize the sort order by dragging and dropping the different options in the Options section of the field settings.
  • Blank Text: The text your users see when they need to select a value on a form (if your forms show this field as a dropdown).
  • Layout: Determines how the choices will be presented in a form. The Dropdown - One Selection and Radio Buttons options only allow for a single selection, while Dropdown - Multiple Selections and Check Boxes allow for multiple options to be selected.
When using filters in multiple choice fields with special characters in your options such as (), [], etc., a 'contains' filter will not return results. In this case, you'll need to use an 'is' filter instead.
Example
image alt text

Yes/No

Yes/No is used for fields where you simply want to differentiate between a true or false value.

Settings
  • Labels: Other options for "Yes" and “No” labels, like “On”/”Off” and “True”/”False”.
  • Default: The default value for either Yes or No.
  • Require Yes: Forms including this field cannot be submitted until the value is "Yes" (or “True” or “On”).
  • Input: How this field should appear on forms.
Example
image alt text
If you have a default set on a Yes/No field, and add a conditional rule, you still must add a "every record rule" that matches your default, otherwise the value will always match the conditional rule (and never be set to the default).

Date

Date/Time

Date/Time fields are used for storing dates, times, or both.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Date Format: this determines how dates will be formatted. Here are examples for the date of July 4th, 2013:
    • mm/dd/yyyy: 06/04/2013
    • M D, yyyy: July 4th, 2013
    • dd/mm/yyyy: 04/06/2013
    • Ignore Date: no date will be displayed
  • Time Format: How times are formatted.
  • Calendar Options: This will enable advanced calendar options like "All Day" events and repeating events.
  • Default Date (Time): The default date/time with which your forms are pre-populated:
    • None: Blank
    • Current Date (Time): The current date/time
    • Specific Date (Time): A date/time of your choosing
Example
image alt text
If you're filtering by Date / Time fields, these phrases are defined by the following:

• "is during the current week": Sunday, 12:00am - Saturday, 11:59pm, of the week where the defined date falls.
• "is during the previous week": Sunday, 12:00am - Saturday, 11:59pm, of the week prior to where the defined date falls.

Similar logic can be applied to "is during the current day", "is during the current month", or "is during the current year".

On a similar note, if you'd like to include both data the 'past three months', you'd set up two filters, one for "is during the current month" and one for "is during the previous 2 months".
If you'd like to provide detailed filters by time, you can choose "Ignore Date" on your Date / Time field. Then, on both the Builder and Live App, additional time filter options will be available. This will require one field for Date and one field for Time if you need both.
Using an Equation field (found under the Number field category), you can perform Date Equations to calculate additional dates from the original.

Timer

Timer fields are used to track a time duration, most often for tracking hours.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Date Format: How dates will be formatted. Here are examples for the date of July 4th, 2017:
    • mm/dd/yyyy: 06/04/2017
    • M D, yyyy: July 4th, 2017
    • dd/mm/yyyy: 04/06/2017
    • Ignore Date: no date will be displayed
  • Time Format: How times will be formatted.
  • Minutes Format: How many minutes by which to separate each option for the time.
    This only applies to the drop-down options shown; it does not round the time to these increments, nor does it restrict the time entered to these increments.
  • Total Format: What the total time will be calculated as when used in equations and formulas. Available formats are:
    • From-To (presents a range)
    • Seconds
    • Minutes
    • Hours
    • Days 
    • Weeks
Example
image alt text

Note: The default Start is the current date/time and the default End is current date/+1 hour. JavaScript code could be used to edit these defaults.

File

File

Files are used to add files and attachments through forms that can then be downloaded by your users.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Secure: Setting to Yes after your users have already uploaded files via this field means that any links they were using to access those files will no longer work. Every time a user accesses a secured file via one of the new Live App Knack URL links, a check is run to make sure that the Page, View, and field on which the user found the link to the file still exists; this way, for example, if you accidentally show a link to a file on a certain view and remove it later, users who saved that link will no longer be able to access the file through it.
Files uploaded to a field with Secure set to yes will still be accessible if the direct URL to the file is used. This allows the file to be shared in emails or as needed without requiring someone to log into the Live App. Only the URLs to the file displayed in a Live App page will follow the rules that are in place for that page.
Example
image alt text
There is a file size limit of 250MB per uploaded file. If you're running into any difficulty uploading a file - first check if your file size is larger than this.

Image

Images are used to upload and display images. You can also create thumbnail versions of the image to display where needed.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Image Source: Determines where the image files are stored:
    • Upload image files: Users will upload image files, and they will be stored on your Knack account and count toward your asset storage limit. The uploaded image will be given a URL that can be accessed externally of Knack. As such, it is not recommended to upload images with any sensitive information to an image field.
    • Load images from external URL: The user will add a link (URL) to where the image is already uploaded and stored. These images will not count toward your asset storage limit. The source image of this URL can be updated without being updated in Knack.
  • Resize Image: If checked, this will automatically resize images on upload.
    • Web friendly: resizes the image to a web friendly size with the maximum width and height of 1500px
    • Custom: allows you to define a custom width and height
  • Thumbnails: Thumbnails - smaller versions of an image - can be generated automatically for you to display throughout your apps. After clicking Add Thumbnail, you can use the red and green + and - buttons to add or remove further thumbnails. There are three types of thumbnails:
    • Resize by percentage: The thumbnail will be resized by the percentage and maintain its ratio.
    • Resize by pixel: The thumbnail will be resized based on the max width or the max height, whichever applies first to the image. The other dimension will then scale to maintain the correct ratio.
    • Resize to square: The thumbnail will be resized to a square. If the original image is not a square ratio, then the larger dimension will be cropped to create a square.

Images must be resized using a thumbnail in order to display as a smaller size in your app. CSS code could be used to edit this as well. Once you have added a thumbnail to your image field, be sure to add this field to your views as well:

Image Indexing: If you include images in a Live App page where there is not a login required, the images can be found and indexed by Search Engines. To prevent unwanted exposure, make sure that your images are only displayed on pages that require a login.

If you choose the "Load images from an external URL" for your image type, these images do not store an actual thumbnail image. These thumbnails are dynamically generated on page load where the image thumbnail is displayed. This means that if this option is chosen, thumbnail images downloaded or accessed with an API call will be returned in full size.
Images uploaded to an Image field will be accessible outside of Knack. Following a direct link to an image will not require any authentication to view the image. It is recommended to use a File field, set as secure, to upload images to if your images will contain sensitive information.

Personal

Name

Name fields are used to combine name elements like Title, First Name, and Last Name into one convenient field for entering and displaying names.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Format: Names can be formatted with various options which can include a title.
Example
image alt text
Name fields are sorted alphabetically only by the last name. For example, if the format of "Last, First" is chosen, it only sorts by last name and first names are displayed in random order after the alphabetical last names. If you need to sort alphabetically by the first name as well, you could extract the first name with a text formula field, or create a short text field separately for first and last names.

Email

Email fields are used to store email addresses. A link will automatically be created to send an email.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Must be unique: If checked, the value of this field must be unique. No other record can have the same value.
  • Email Text Format: The text that will be clicked to open the link to send an email to this address:
    • Use this email address: Use the full email address will display as a link.
    • Use the same text for all emails: Use the same text that every record will use as the email address.
    • Use unique text for each email: Add unique text for each record to use as the email.
Example
image alt text

Address

Address fields are used to combine fields like Street and City into one convenient field for entering and displaying address data.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Address Autocomplete: Address Autocomplete uses Google’s autocomplete functionality to provide suggested addresses nearest to you as you type. To enable this feature, check the “Address Autocomplete” checkbox from the address field’s settings.

    This feature is available on Pro and above plans. 


    Once enabled, this is available:
    • when adding or editing records in the Builder or Live App,
    • and on the search on a Map view.

This is available for U.S., International, and International (with Country) formats. It is not available with the Latitude/Longitude Input type.

Because of the variation in address data that is available around the world, along with the variation in format of different address types, Address Autocomplete only will complete the Address 1 line.

If you're using Google as your map provider, you will:

  • need to enable the "Places API" module under your Google Maps setup, and be responsible for any usage charges.
  • Geocode Records: The "Geocode Records" setting allows an Address field's record value to be geocoded for display on a Map view or to be searched with the “is near (a zip code)” filter. Geocoding takes the description of a place — such a location's latitude/longitude coordinates or its address — and maps it to a real location on the earth's surface.
    You can read more about this in the "App Settings: Map Provider" article.
  • Format:
    • U.S.: U.S. format of City, State, Zip.
    • International: International format of City, Province/ Region, Postal Code.
    • International with country: Same as above, but with the country as well.
    • Input: Add address data either with full addresses or with latitude/longitude coordinates.
When using the latitude/longitude coordinates input, that location will display as the nearest street address on a map view, rather than the exact coordinates.
Example
image alt text

Phone

Phone fields are used to display numbers in phone formats and a link will automatically be created to call the number in mobile devices wherever field data is displayed.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Must be unique: If checked, the value of this field must be unique. no other record can have the same value.
  • Format: Choose from various U.S and international options including the Any option that supports any other format not included.
  • Include extension: Allow users to include extensions when adding or editing phone numbers.
Example
image alt text

Other

Link fields are used to display URLs that link to any website.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
  • Must be unique: If checked, the value of this field must be unique. No other record can have the same value.
  • Default value: This value will be used by default if no value is entered. This value will also be used to populate any forms used to add a new record.
  • Link Text Format: Controls the text that will be clicked on to open the link:
    • Use the URL: The full URL will display as the link.
    • Use the same text for all links: Add the same text that every record will use as the link.
    • Use unique text for each link: Add unique text for each record to use as the link.
    • Open link in new window: Use this setting if you would like all links to open in a new window.
Example
image alt text

Signature

The signature field enables users to add their signature with their finger or mouse.

Settings
  • Required: If checked, this field must have a value before a record can be added or updated.
Example
image alt text
Certain email clients do NOT display signature fields in the form notification email, even if a placeholder for the field is placed in the email. Here's a list of email clients that we know do not play nice w/ signature fields:
• Microsoft Email Exchange
• Gmail

Rating

Rating fields are used to add ratings using a star system.

Settings
  • Allow half stars: Determines whether the user can add ratings in half-star increments.
  • Number of stars: Set the maximum number of stars that can be used for a rating.
Example
When updating a rating field in the builder or live app, you will see a "Cancel" icon to the left of the stars. This cancels the entire rating. This icon does not appear in the form editor.

Connection

Connection fields allow you to connect to records in other tables. This unlocks the ability to show relationships in your app, like a user's assigned tasks or a customer's order.

You can read more on using connections in your app here.

How did we do?

Numeric Equation Functions

Validation Rules

Contact