Flattens all the values from one or more ranges into a single column.
Parts of a FLATTEN function
=FLATTEN(range1, [range2, …])
Part 
Description 
range1 
The first range to flatten. 
range2 
[optional] repeatable Additional ranges to flatten. 
Sample formulas
=FLATTEN(A1:B2)
=FLATTEN("top", A1:B2, "middle", B3:B4, "bottom")
Notes
 Values are ordered by argument, then row, then column. So, the entire first row of an input is added before the second row (also known as rowmajor order).
 Empty values are not skipped; the FILTER function can be used to remove those.
Examples
Flatten will append arguments in the order they are included in the formula. Arguments need not be range references.
A 
B 
C 
D 

1 
1 
2 
Formula in D1: =FLATTEN(A1:B2, "sample middle", B3:B4) 
1 
2 
3 
4 
2 

3 
5 
3 

4 
6 
4 

5 
sample middle 

6 
5 

7 
6 
A more complex example, using the CONCAT (&) operator and SPLIT to do a simple cross join or Cartesian product on two lists.
A 
B 
C 
D 
E 

1 
A 
1 
Formula in D1: =ArrayFormula(SPLIT(FLATTEN(A1:A3 & "" & TRANSPOSE(B1:B2)), "")) 
A 
1 
2 
B 
2 
A 
2 

3 
C 
B 
1 

4 
B 
2 

5 
C 
1 

6 
C 
2 